mirror of
https://github.com/saitohirga/WSJT-X.git
synced 2024-11-04 16:31:17 -05:00
46 lines
1.5 KiB
Fortran
46 lines
1.5 KiB
Fortran
module shmem
|
|
! external routines wrapping the Qt QSharedMemory class
|
|
interface
|
|
function shmem_create (size) bind(C, name="shmem_create")
|
|
use iso_c_binding, only: c_bool, c_int
|
|
logical(c_bool) :: shmem_create
|
|
integer(c_int), value, intent(in) :: size
|
|
end function shmem_create
|
|
|
|
subroutine shmem_setkey (key) bind(C, name="shmem_setkey")
|
|
use iso_c_binding, only: c_bool, c_char
|
|
character(kind=c_char), intent(in) :: key(*)
|
|
end subroutine shmem_setkey
|
|
|
|
function shmem_attach () bind(C, name="shmem_attach")
|
|
use iso_c_binding, only: c_bool
|
|
logical(c_bool) :: shmem_attach
|
|
end function shmem_attach
|
|
|
|
function shmem_address() bind(C, name="shmem_address")
|
|
use, intrinsic :: iso_c_binding, only: c_ptr
|
|
type(c_ptr) :: shmem_address
|
|
end function shmem_address
|
|
|
|
function shmem_size() bind(C, name="shmem_size")
|
|
use, intrinsic :: iso_c_binding, only: c_int
|
|
integer(c_int) :: shmem_size
|
|
end function shmem_size
|
|
|
|
function shmem_lock () bind(C, name="shmem_lock")
|
|
use iso_c_binding, only: c_bool
|
|
logical(c_bool) :: shmem_lock
|
|
end function shmem_lock
|
|
|
|
function shmem_unlock () bind(C, name="shmem_unlock")
|
|
use iso_c_binding, only: c_bool
|
|
logical(c_bool) :: shmem_unlock
|
|
end function shmem_unlock
|
|
|
|
function shmem_detach () bind(C, name="shmem_detach")
|
|
use iso_c_binding, only: c_bool
|
|
logical(c_bool) :: shmem_detach
|
|
end function shmem_detach
|
|
end interface
|
|
end module shmem
|