Simulation Core
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

607 lines
16 KiB

  1. module CUnityInputs
  2. use CVoidEventHandlerCollection
  3. implicit none
  4. type :: UnityInputsType
  5. logical :: ElevatorConnectionPossible
  6. logical :: JointConnectionPossible
  7. logical :: IsKellyBushingSetInTable
  8. logical :: ElevatorPickup
  9. logical :: NearFloorPosition
  10. logical :: SingleSetInMouseHole
  11. logical :: TdsConnectionPossible
  12. logical :: TdsStemIn
  13. ! private :: ElevatorConnectionPossible
  14. ! private :: JointConnectionPossible
  15. ! private :: IsKellyBushingSetInTable
  16. ! private :: ElevatorPickup
  17. ! private :: NearFloorPosition
  18. ! private :: SingleSetInMouseHole
  19. ! private :: TdsConnectionPossible
  20. ! private :: TdsStemIn
  21. ! public
  22. type(VoidEventHandlerCollection) :: OnElevatorConnectionPossibleChange
  23. type(VoidEventHandlerCollection) :: OnJointConnectionPossibleChange
  24. type(VoidEventHandlerCollection) :: OnIsKellyBushingSetInTableChange
  25. type(VoidEventHandlerCollection) :: OnElevatorPickupChange
  26. type(VoidEventHandlerCollection) :: OnNearFloorPositionChange
  27. type(VoidEventHandlerCollection) :: OnSingleSetInMouseHoleChange
  28. type(VoidEventHandlerCollection) :: OnTdsConnectionPossibleChange
  29. type(VoidEventHandlerCollection) :: OnTdsStemInChange
  30. end type UnityInputsType
  31. type(UnityInputsType)::UnityInputs
  32. contains
  33. ! Input routines
  34. ! subroutine Set_OutOfMouseHole(v)
  35. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_OutOfMouseHole
  36. ! !DEC$ ATTRIBUTES ALIAS: 'Set_OutOfMouseHole' :: Set_OutOfMouseHole
  37. ! implicit none
  38. ! logical, intent(in) :: v
  39. ! !#ifdef ExcludeExtraChanges
  40. ! ! if(OutOfMouseHole == v) return
  41. ! !#endif
  42. ! ! OutOfMouseHole = v
  43. ! ! call OnOutOfMouseHoleChange%RunAll()
  44. ! !#ifdef deb
  45. ! ! print*, 'OutOfMouseHole=', OutOfMouseHole
  46. ! !#endif
  47. ! end subroutine
  48. ! !logical function Get_OutOfMouseHole()
  49. ! ! implicit none
  50. ! ! Get_OutOfMouseHole = OutOfMouseHole
  51. ! !end function
  52. ! subroutine Set_Unlatch(v)
  53. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_Unlatch
  54. ! !DEC$ ATTRIBUTES ALIAS: 'Set_Unlatch' :: Set_Unlatch
  55. ! implicit none
  56. ! logical, intent(in) :: v
  57. ! !#ifdef ExcludeExtraChanges
  58. ! ! if(Unlatch == v) return
  59. ! !#endif
  60. ! ! Unlatch = v
  61. ! ! call OnUnlatchChange%RunAll()
  62. ! !#ifdef deb
  63. ! ! print*, 'Unlatch=', Unlatch
  64. ! !#endif
  65. ! end subroutine
  66. ! !logical function Get_Unlatch()
  67. ! ! implicit none
  68. ! ! Get_Unlatch = Unlatch
  69. ! !end function
  70. ! subroutine Set_Latch(v)
  71. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_Latch
  72. ! !DEC$ ATTRIBUTES ALIAS: 'Set_Latch' :: Set_Latch
  73. ! implicit none
  74. ! logical, intent(in) :: v
  75. ! !#ifdef ExcludeExtraChanges
  76. ! ! if(Latch == v) return
  77. ! !#endif
  78. ! ! Latch = v
  79. ! ! call OnLatchChange%RunAll()
  80. ! !#ifdef deb
  81. ! ! print*, 'Latch=', Latch
  82. ! !#endif
  83. ! end subroutine
  84. ! !logical function Get_Latch()
  85. ! ! implicit none
  86. ! ! Get_Latch = Latch
  87. ! !end function
  88. ! subroutine Set_SlipsUnSet(v)
  89. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_SlipsUnSet
  90. ! !DEC$ ATTRIBUTES ALIAS: 'Set_SlipsUnSet' :: Set_SlipsUnSet
  91. ! implicit none
  92. ! logical, intent(in) :: v
  93. ! !#ifdef ExcludeExtraChanges
  94. ! ! if(SlipsUnSet == v) return
  95. ! !#endif
  96. ! ! SlipsUnSet = v
  97. ! ! call OnSlipsUnSetChange%RunAll()
  98. ! !#ifdef deb
  99. ! ! print*, 'SlipsUnSet=', SlipsUnSet
  100. ! !#endif
  101. ! end subroutine
  102. ! !logical function Get_SlipsUnSet()
  103. ! ! implicit none
  104. ! ! Get_SlipsUnSet = SlipsUnSet
  105. ! !end function
  106. ! subroutine Set_SlipsSet(v)
  107. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_SlipsSet
  108. ! !DEC$ ATTRIBUTES ALIAS: 'Set_SlipsSet' :: Set_SlipsSet
  109. ! implicit none
  110. ! logical, intent(in) :: v
  111. ! !#ifdef ExcludeExtraChanges
  112. ! ! if(SlipsSet == v) return
  113. ! !#endif
  114. ! ! SlipsSet = v
  115. ! ! call OnSlipsSetChange%RunAll()
  116. ! !#ifdef deb
  117. ! ! print*, 'SlipsSet=', SlipsSet
  118. ! !#endif
  119. ! end subroutine
  120. ! !logical function Get_SlipsSet()
  121. ! ! implicit none
  122. ! ! Get_SlipsSet = SlipsSet
  123. ! !end function
  124. ! subroutine Set_BreakupTong(v)
  125. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_BreakupTong
  126. ! !DEC$ ATTRIBUTES ALIAS: 'Set_BreakupTong' :: Set_BreakupTong
  127. ! implicit none
  128. ! logical, intent(in) :: v
  129. ! !#ifdef ExcludeExtraChanges
  130. ! ! if(BreakupTong == v) return
  131. ! !#endif
  132. ! ! BreakupTong = v
  133. ! ! call OnBreakupTongChange%RunAll()
  134. ! !#ifdef deb
  135. ! ! print*, 'BreakupTong=', BreakupTong
  136. ! !#endif
  137. ! end subroutine
  138. ! !logical function Get_BreakupTong()
  139. ! ! implicit none
  140. ! ! Get_BreakupTong = BreakupTong
  141. ! !end function
  142. ! subroutine Set_MakeupTong(v)
  143. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_MakeupTong
  144. ! !DEC$ ATTRIBUTES ALIAS: 'Set_MakeupTong' :: Set_MakeupTong
  145. ! implicit none
  146. ! logical, intent(in) :: v
  147. ! !#ifdef ExcludeExtraChanges
  148. ! ! if(MakeupTong == v) return
  149. ! !#endif
  150. ! ! MakeupTong = v
  151. ! ! call OnMakeupTongChange%RunAll()
  152. ! !#ifdef deb
  153. ! ! print*, 'MakeupTong=', MakeupTong
  154. ! !#endif
  155. ! end subroutine
  156. ! !logical function Get_MakeupTong()
  157. ! ! implicit none
  158. ! ! Get_MakeupTong = MakeupTong
  159. ! !end function
  160. ! subroutine Set_NewHookHeight(v)
  161. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_NewHookHeight
  162. ! !DEC$ ATTRIBUTES ALIAS: 'Set_NewHookHeight' :: Set_NewHookHeight
  163. ! implicit none
  164. ! real(8), intent(in) :: v
  165. ! !#ifdef ExcludeExtraChanges
  166. ! ! if(NewHookHeight == v) return
  167. ! !#endif
  168. ! ! NewHookHeight = v
  169. ! ! call OnNewHookHeightChange%RunAll()
  170. ! !#ifdef deb
  171. ! ! print*, 'NewHookHeight=', NewHookHeight
  172. ! !#endif
  173. ! end subroutine
  174. ! !real(8) function Get_NewHookHeight()
  175. ! ! implicit none
  176. ! ! Get_NewHookHeight = NewHookHeight
  177. ! !end function
  178. ! subroutine Set_ElevatorConnectionPossible(v)
  179. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_ElevatorConnectionPossible
  180. ! !DEC$ ATTRIBUTES ALIAS: 'Set_ElevatorConnectionPossible' :: Set_ElevatorConnectionPossible
  181. ! implicit none
  182. ! logical, intent(in) :: v
  183. ! #ifdef ExcludeExtraChanges
  184. ! if(UnityInputs%ElevatorConnectionPossible == v) return
  185. ! #endif
  186. ! UnityInputs%ElevatorConnectionPossible = v
  187. ! call UnityInputs%OnElevatorConnectionPossibleChange%RunAll()
  188. ! #ifdef deb
  189. ! print*, 'ElevatorConnectionPossible=', UnityInputs%ElevatorConnectionPossible
  190. ! #endif
  191. ! end subroutine
  192. logical function Get_ElevatorConnectionPossible()
  193. implicit none
  194. Get_ElevatorConnectionPossible = UnityInputs%ElevatorConnectionPossible
  195. end function
  196. ! logical function Get_ElevatorConnectionPossible_WN()
  197. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_ElevatorConnectionPossible_WN
  198. ! !DEC$ ATTRIBUTES ALIAS: 'Get_ElevatorConnectionPossible_WN' :: Get_ElevatorConnectionPossible_WN
  199. ! implicit none
  200. ! Get_ElevatorConnectionPossible_WN = UnityInputs%ElevatorConnectionPossible
  201. ! !Get_ElevatorConnectionPossible_WN = .true.
  202. ! end function
  203. ! subroutine Set_JointConnectionPossible(v)
  204. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_JointConnectionPossible
  205. ! !DEC$ ATTRIBUTES ALIAS: 'Set_JointConnectionPossible' :: Set_JointConnectionPossible
  206. ! implicit none
  207. ! logical, intent(in) :: v
  208. ! #ifdef ExcludeExtraChanges
  209. ! if(UnityInputs%JointConnectionPossible == v) return
  210. ! #endif
  211. ! UnityInputs%JointConnectionPossible = v
  212. ! call UnityInputs%OnJointConnectionPossibleChange%RunAll()
  213. ! #ifdef deb
  214. ! print*, 'JointConnectionPossible=', UnityInputs%JointConnectionPossible
  215. ! #endif
  216. ! end subroutine
  217. logical function Get_JointConnectionPossible()
  218. implicit none
  219. Get_JointConnectionPossible = UnityInputs%JointConnectionPossible
  220. end function
  221. ! logical function Get_JointConnectionPossible_WN()
  222. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_JointConnectionPossible_WN
  223. ! !DEC$ ATTRIBUTES ALIAS: 'Get_JointConnectionPossible_WN' :: Get_JointConnectionPossible_WN
  224. ! implicit none
  225. ! Get_JointConnectionPossible_WN = UnityInputs%JointConnectionPossible
  226. ! end function
  227. ! subroutine Set_IsKellyBushingSetInTable(v)
  228. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_IsKellyBushingSetInTable
  229. ! !DEC$ ATTRIBUTES ALIAS: 'Set_IsKellyBushingSetInTable' :: Set_IsKellyBushingSetInTable
  230. ! implicit none
  231. ! logical, intent(in) :: v
  232. ! #ifdef ExcludeExtraChanges
  233. ! if(UnityInputs%IsKellyBushingSetInTable == v) return
  234. ! #endif
  235. ! UnityInputs%IsKellyBushingSetInTable = v
  236. ! call UnityInputs%OnIsKellyBushingSetInTableChange%RunAll()
  237. ! #ifdef deb
  238. ! print*, 'IsKellyBushingSetInTable=', UnityInputs%IsKellyBushingSetInTable
  239. ! #endif
  240. ! end subroutine
  241. logical function Get_IsKellyBushingSetInTable()
  242. implicit none
  243. Get_IsKellyBushingSetInTable = UnityInputs%IsKellyBushingSetInTable
  244. end function
  245. ! logical function Get_IsKellyBushingSetInTable_WN()
  246. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_IsKellyBushingSetInTable_WN
  247. ! !DEC$ ATTRIBUTES ALIAS: 'Get_IsKellyBushingSetInTable_WN' :: Get_IsKellyBushingSetInTable_WN
  248. ! implicit none
  249. ! Get_IsKellyBushingSetInTable_WN = UnityInputs%IsKellyBushingSetInTable
  250. ! end function
  251. ! subroutine Set_ElevatorPickup(v)
  252. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_ElevatorPickup
  253. ! !DEC$ ATTRIBUTES ALIAS: 'Set_ElevatorPickup' :: Set_ElevatorPickup
  254. ! implicit none
  255. ! logical, intent(in) :: v
  256. ! #ifdef ExcludeExtraChanges
  257. ! if(UnityInputs%ElevatorPickup == v) return
  258. ! #endif
  259. ! UnityInputs%ElevatorPickup = v
  260. ! call UnityInputs%OnElevatorPickupChange%RunAll()
  261. ! #ifdef deb
  262. ! print*, 'ElevatorPickup =', UnityInputs%ElevatorPickup
  263. ! #endif
  264. ! end subroutine
  265. logical function Get_ElevatorPickup()
  266. implicit none
  267. Get_ElevatorPickup = UnityInputs%ElevatorPickup
  268. end function
  269. ! logical function Get_ElevatorPickup_WN()
  270. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_ElevatorPickup_WN
  271. ! !DEC$ ATTRIBUTES ALIAS: 'Get_ElevatorPickup_WN' :: Get_ElevatorPickup_WN
  272. ! implicit none
  273. ! Get_ElevatorPickup_WN = UnityInputs%ElevatorPickup
  274. ! end function
  275. subroutine Set_NearFloorPosition(v)
  276. implicit none
  277. logical, intent(in) :: v
  278. #ifdef ExcludeExtraChanges
  279. if(UnityInputs%NearFloorPosition == v) return
  280. #endif
  281. UnityInputs%NearFloorPosition = v
  282. call UnityInputs%OnNearFloorPositionChange%RunAll()
  283. #ifdef deb
  284. print*, 'NearFloorPosition =', UnityInputs%NearFloorPosition
  285. #endif
  286. end subroutine
  287. ! subroutine Set_NearFloorPosition_WN(v)
  288. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_NearFloorPosition_WN
  289. ! !DEC$ ATTRIBUTES ALIAS: 'Set_NearFloorPosition_WN' :: Set_NearFloorPosition_WN
  290. ! implicit none
  291. ! logical, intent(in) :: v
  292. ! call Set_NearFloorPosition(v)
  293. ! end subroutine
  294. logical function Get_NearFloorPosition()
  295. implicit none
  296. Get_NearFloorPosition = UnityInputs%NearFloorPosition
  297. end function
  298. ! logical function Get_NearFloorPosition_WN()
  299. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_NearFloorPosition_WN
  300. ! !DEC$ ATTRIBUTES ALIAS: 'Get_NearFloorPosition_WN' :: Get_NearFloorPosition_WN
  301. ! implicit none
  302. ! Get_NearFloorPosition_WN = UnityInputs%NearFloorPosition
  303. ! end function
  304. ! subroutine Set_SingleSetInMouseHole(v)
  305. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_SingleSetInMouseHole
  306. ! !DEC$ ATTRIBUTES ALIAS: 'Set_SingleSetInMouseHole' :: Set_SingleSetInMouseHole
  307. ! implicit none
  308. ! logical, intent(in) :: v
  309. ! #ifdef ExcludeExtraChanges
  310. ! if(UnityInputs%SingleSetInMouseHole == v) return
  311. ! #endif
  312. ! UnityInputs%SingleSetInMouseHole = v
  313. ! call UnityInputs%OnSingleSetInMouseHoleChange%RunAll()
  314. ! #ifdef deb
  315. ! print*, 'singleSetInMouseHole=', UnityInputs%SingleSetInMouseHole
  316. ! #endif
  317. ! end subroutine
  318. logical function Get_SingleSetInMouseHole()
  319. implicit none
  320. Get_SingleSetInMouseHole = UnityInputs%SingleSetInMouseHole
  321. end function
  322. ! logical function Get_SingleSetInMouseHole_WN()
  323. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_SingleSetInMouseHole_WN
  324. ! !DEC$ ATTRIBUTES ALIAS: 'Get_SingleSetInMouseHole_WN' :: Get_SingleSetInMouseHole_WN
  325. ! implicit none
  326. ! Get_SingleSetInMouseHole_WN = UnityInputs%SingleSetInMouseHole
  327. ! end function
  328. ! subroutine Set_SwingCenter(v)
  329. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_SwingCenter
  330. ! !DEC$ ATTRIBUTES ALIAS: 'Set_SwingCenter' :: Set_SwingCenter
  331. ! !USE CSwingEnum
  332. ! implicit none
  333. ! logical, intent(in) :: v
  334. ! !#ifdef ExcludeExtraChanges
  335. ! ! if(SwingCenter == v) return
  336. ! !#endif
  337. ! ! SwingCenter = v
  338. ! ! call OnSwingCenterChange%RunAll()
  339. ! ! !if(SwingCenter .and. Get_Swing() /= SWING_WELL ) call Set_Swing(SWING_WELL)
  340. ! !#ifdef deb
  341. ! ! print*, 'SwingCenter=', SwingCenter
  342. ! !#endif
  343. ! end subroutine
  344. !logical function Get_SwingCenter()
  345. ! implicit none
  346. ! Get_SwingCenter = SwingCenter
  347. !end function
  348. !top drive
  349. ! subroutine Set_TdsConnectionPossible(v)
  350. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_TdsConnectionPossible
  351. ! !DEC$ ATTRIBUTES ALIAS: 'Set_TdsConnectionPossible' :: Set_TdsConnectionPossible
  352. ! implicit none
  353. ! logical, intent(in) :: v
  354. ! #ifdef ExcludeExtraChanges
  355. ! if(UnityInputs%TdsConnectionPossible == v) return
  356. ! #endif
  357. ! UnityInputs%TdsConnectionPossible = v
  358. ! call UnityInputs%OnTdsConnectionPossibleChange%RunAll()
  359. ! #ifdef deb
  360. ! print*, 'TdsConnectionPossible=', UnityInputs%TdsConnectionPossible
  361. ! #endif
  362. ! end subroutine
  363. logical function Get_TdsConnectionPossible()
  364. implicit none
  365. Get_TdsConnectionPossible = UnityInputs%TdsConnectionPossible
  366. end function
  367. ! logical function Get_TdsConnectionPossible_WN()
  368. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_TdsConnectionPossible_WN
  369. ! !DEC$ ATTRIBUTES ALIAS: 'Get_TdsConnectionPossible_WN' :: Get_TdsConnectionPossible_WN
  370. ! implicit none
  371. ! Get_TdsConnectionPossible_WN = UnityInputs%TdsConnectionPossible
  372. ! !Get_TdsConnectionPossible_WN = .true.
  373. ! end function
  374. ! subroutine Set_TdsStemIn(v)
  375. ! !DEC$ ATTRIBUTES DLLEXPORT :: Set_TdsStemIn
  376. ! !DEC$ ATTRIBUTES ALIAS: 'Set_TdsStemIn' :: Set_TdsStemIn
  377. ! implicit none
  378. ! logical, intent(in) :: v
  379. ! #ifdef ExcludeExtraChanges
  380. ! if(UnityInputs%TdsStemIn == v) return
  381. ! #endif
  382. ! UnityInputs%TdsStemIn = v
  383. ! call UnityInputs%OnTdsStemInChange%RunAll()
  384. ! #ifdef deb
  385. ! print*, 'TdsStemIn=', UnityInputs%TdsStemIn
  386. ! #endif
  387. ! end subroutine
  388. logical function Get_TdsStemIn()
  389. implicit none
  390. Get_TdsStemIn = UnityInputs%TdsStemIn
  391. end function
  392. ! logical function Get_TdsStemIn_WN()
  393. ! !DEC$ ATTRIBUTES DLLEXPORT :: Get_TdsStemIn_WN
  394. ! !DEC$ ATTRIBUTES ALIAS: 'Get_TdsStemIn_WN' :: Get_TdsStemIn_WN
  395. ! implicit none
  396. ! Get_TdsStemIn_WN = UnityInputs%TdsStemIn
  397. ! !Get_TdsStemIn_WN = .true.
  398. ! end function
  399. end module CUnityInputs