mirror of
				https://github.com/saitohirga/WSJT-X.git
				synced 2025-10-31 13:10:19 -04: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
 |