module CSwingDrillPermissionVariables use CVoidEventHandlerCollection implicit none logical :: SwingDrillPermission = .false. public type(VoidEventHandlerCollection) :: OnSwingDrillPermissionChange private :: SwingDrillPermission contains subroutine Set_SwingDrillPermission(v) implicit none logical , intent(in) :: v #ifdef ExcludeExtraChanges if(SwingDrillPermission == v) return #endif SwingDrillPermission = v #ifdef deb print*, 'SwingDrillPermission=', SwingDrillPermission #endif call OnSwingDrillPermissionChange%RunAll() end subroutine logical function Get_SwingDrillPermission() implicit none Get_SwingDrillPermission = SwingDrillPermission end function subroutine Set_SwingDrillPermission_WN(v) !DEC$ ATTRIBUTES DLLEXPORT :: Set_SwingDrillPermission_WN !DEC$ ATTRIBUTES ALIAS: 'Set_SwingDrillPermission_WN' :: Set_SwingDrillPermission_WN implicit none logical , intent(in) :: v call Set_SwingDrillPermission(v) end subroutine logical function Get_SwingDrillPermission_WN() !DEC$ ATTRIBUTES DLLEXPORT :: Get_SwingDrillPermission_WN !DEC$ ATTRIBUTES ALIAS: 'Get_SwingDrillPermission_WN' :: Get_SwingDrillPermission_WN implicit none Get_SwingDrillPermission_WN = SwingDrillPermission end function end module CSwingDrillPermissionVariables