Simulation Core
Nelze vybrat více než 25 témat Téma musí začínat písmenem nebo číslem, může obsahovat pomlčky („-“) a může být dlouhé až 35 znaků.
 
 
 
 
 
 

969 řádky
38 KiB

  1. module CDrillingConsole
  2. use CDrillingConsoleVariables
  3. use SimulationVariables
  4. use SimulationVariables
  5. ! use CSimulationVariables
  6. use CLog4
  7. use CLog3
  8. implicit none
  9. public
  10. contains
  11. subroutine CDrillingToJson(parent)
  12. type(json_value),pointer :: parent
  13. type(json_core) :: json
  14. type(json_value),pointer :: p
  15. ! 1. create new node
  16. call json%create_object(p,'CDrilling')
  17. call json%add(p,"AssignmentSwitch",data%Equipments%ControlPanel%CDriling%AssignmentSwitch)
  18. call json%add(p,"EmergencySwitch",data%Equipments%ControlPanel%CDriling%EmergencySwitch)
  19. call json%add(p,"RTTorqueLimitKnob",data%Equipments%ControlPanel%CDriling%RTTorqueLimitKnob)
  20. call json%add(p,"MP1CPSwitchI",data%Equipments%ControlPanel%CDriling%MP1CPSwitchI)
  21. call json%add(p,"MP1CPSwitchT",data%Equipments%ControlPanel%CDriling%MP1CPSwitchT)
  22. call json%add(p,"MP1CPSwitch",data%Equipments%ControlPanel%CDriling%MP1CPSwitch)
  23. call json%add(p,"MP1ThrottleUpdate",data%Equipments%ControlPanel%CDriling%MP1ThrottleUpdate)
  24. call json%add(p,"MP1Throttle",data%Equipments%ControlPanel%CDriling%MP1Throttle)
  25. call json%add(p,"MP2SwitchI",data%Equipments%ControlPanel%CDriling%MP2SwitchI)
  26. call json%add(p,"MP2SwitchT",data%Equipments%ControlPanel%CDriling%MP2SwitchT)
  27. call json%add(p,"MP2Switch",data%Equipments%ControlPanel%CDriling%MP2Switch)
  28. call json%add(p,"MP2ThrottleUpdate",data%Equipments%ControlPanel%CDriling%MP2ThrottleUpdate)
  29. call json%add(p,"MP2Throttle",data%Equipments%ControlPanel%CDriling%MP2Throttle)
  30. call json%add(p,"DWSwitch",data%Equipments%ControlPanel%CDriling%DWSwitch)
  31. call json%add(p,"DWThrottle",data%Equipments%ControlPanel%CDriling%DWThrottle)
  32. call json%add(p,"RTSwitch",data%Equipments%ControlPanel%CDriling%RTSwitch)
  33. call json%add(p,"RTThrottle",data%Equipments%ControlPanel%CDriling%RTThrottle)
  34. call json%add(p,"DWBreak",data%Equipments%ControlPanel%CDriling%DWBreak)
  35. call json%add(p,"PreviousDWBreak",data%Equipments%ControlPanel%CDriling%PreviousDWBreak)
  36. call json%add(p,"ForceBreak",data%Equipments%ControlPanel%CDriling%ForceBreak)
  37. call json%add(p,"DWAcceleretor",data%Equipments%ControlPanel%CDriling%DWAcceleretor)
  38. call json%add(p,"DWTransmisionLever",data%Equipments%ControlPanel%CDriling%DWTransmisionLever)
  39. call json%add(p,"DWPowerLever",data%Equipments%ControlPanel%CDriling%DWPowerLever)
  40. call json%add(p,"TongLever",data%Equipments%ControlPanel%CDriling%TongLever)
  41. call json%add(p,"RTTransmissionLever",data%Equipments%ControlPanel%CDriling%RTTransmissionLever)
  42. call json%add(p,"DWClutchLever",data%Equipments%ControlPanel%CDriling%DWClutchLever)
  43. call json%add(p,"EddyBreakLever",data%Equipments%ControlPanel%CDriling%EddyBreakLever)
  44. call json%add(p,"AutoDW",data%Equipments%ControlPanel%CDriling%AutoDW)
  45. call json%add(p,"GEN1",data%Equipments%ControlPanel%CDriling%GEN1)
  46. call json%add(p,"GEN2",data%Equipments%ControlPanel%CDriling%GEN2)
  47. call json%add(p,"GEN3",data%Equipments%ControlPanel%CDriling%GEN3)
  48. call json%add(p,"GEN4",data%Equipments%ControlPanel%CDriling%GEN4)
  49. call json%add(p,"Permission_OpenKellyCock",data%Equipments%ControlPanel%CDriling%Permission_OpenKellyCock)
  50. call json%add(p,"OpenKellyCock",data%Equipments%ControlPanel%CDriling%OpenKellyCock)
  51. call json%add(p,"Permission_CloseKellyCock",data%Equipments%ControlPanel%CDriling%Permission_CloseKellyCock)
  52. call json%add(p,"CloseKellyCock",data%Equipments%ControlPanel%CDriling%CloseKellyCock)
  53. call json%add(p,"Permission_OpenSafetyValve",data%Equipments%ControlPanel%CDriling%Permission_OpenSafetyValve)
  54. call json%add(p,"OpenSafetyValve",data%Equipments%ControlPanel%CDriling%OpenSafetyValve)
  55. call json%add(p,"Permission_CloseSafetyValve",data%Equipments%ControlPanel%CDriling%Permission_CloseSafetyValve)
  56. call json%add(p,"CloseSafetyValve",data%Equipments%ControlPanel%CDriling%CloseSafetyValve)
  57. call json%add(p,"Permission_IRSafetyValve",data%Equipments%ControlPanel%CDriling%Permission_IRSafetyValve)
  58. call json%add(p,"IRSafetyValve",data%Equipments%ControlPanel%CDriling%IRSafetyValve)
  59. call json%add(p,"Permission_IRIBop",data%Equipments%ControlPanel%CDriling%Permission_IRIBop)
  60. call json%add(p,"IRIBop",data%Equipments%ControlPanel%CDriling%IRIBop)
  61. call json%add(p,"LatchPipe",data%Equipments%ControlPanel%CDriling%LatchPipe)
  62. call json%add(p,"UnlatchPipe",data%Equipments%ControlPanel%CDriling%UnlatchPipe)
  63. call json%add(p,"Swing",data%Equipments%ControlPanel%CDriling%Swing)
  64. call json%add(p,"FillMouseHole",data%Equipments%ControlPanel%CDriling%FillMouseHole)
  65. call json%add(p,"Slips",data%Equipments%ControlPanel%CDriling%Slips)
  66. call json%add(p,"BrakeLeverCoefficient",data%Equipments%ControlPanel%CDriling%BrakeLeverCoefficient)
  67. call json%add(p,"HideDrillingBrake",data%Equipments%ControlPanel%CDriling%HideDrillingBrake)
  68. call json%add(p,"ParkingBrakeBtn",data%Equipments%ControlPanel%CDriling%ParkingBrakeBtn)
  69. call json%add(p,"ParkingBrakeLed",data%Equipments%ControlPanel%CDriling%ParkingBrakeLed)
  70. call json%add(p,"GEN1LED",data%Equipments%ControlPanel%CDriling%GEN1LED)
  71. call json%add(p,"GEN2LED",data%Equipments%ControlPanel%CDriling%GEN2LED)
  72. call json%add(p,"GEN3LED",data%Equipments%ControlPanel%CDriling%GEN3LED)
  73. call json%add(p,"GEN4LED",data%Equipments%ControlPanel%CDriling%GEN4LED)
  74. call json%add(p,"SCR1LED",data%Equipments%ControlPanel%CDriling%SCR1LED)
  75. call json%add(p,"SCR2LED",data%Equipments%ControlPanel%CDriling%SCR2LED)
  76. call json%add(p,"SCR3LED",data%Equipments%ControlPanel%CDriling%SCR3LED)
  77. call json%add(p,"SCR4LED",data%Equipments%ControlPanel%CDriling%SCR4LED)
  78. call json%add(p,"MP1BLWR",data%Equipments%ControlPanel%CDriling%MP1BLWR)
  79. call json%add(p,"MP2BLWR",data%Equipments%ControlPanel%CDriling%MP2BLWR)
  80. call json%add(p,"DWBLWR",data%Equipments%ControlPanel%CDriling%DWBLWR)
  81. call json%add(p,"RTBLWR",data%Equipments%ControlPanel%CDriling%RTBLWR)
  82. call json%add(p,"PWRLIM",data%Equipments%ControlPanel%CDriling%PWRLIM)
  83. call json%add(p,"PWRLIMMTR",data%Equipments%ControlPanel%CDriling%PWRLIMMTR)
  84. call json%add(p,"RTTorqueLimitGauge",data%Equipments%ControlPanel%CDriling%RTTorqueLimitGauge)
  85. call json%add(p,"AutoDWLED",data%Equipments%ControlPanel%CDriling%AutoDWLED)
  86. call json%add(p,"GEN1BTNLED",data%Equipments%ControlPanel%CDriling%GEN1BTNLED)
  87. call json%add(p,"GEN2BTNLED",data%Equipments%ControlPanel%CDriling%GEN2BTNLED)
  88. call json%add(p,"GEN3BTNLED",data%Equipments%ControlPanel%CDriling%GEN3BTNLED)
  89. call json%add(p,"GEN4BTNLED",data%Equipments%ControlPanel%CDriling%GEN4BTNLED)
  90. call json%add(p,"OpenKellyCockLed",data%Equipments%ControlPanel%CDriling%OpenKellyCockLed)
  91. call json%add(p,"CloseKellyCockLed",data%Equipments%ControlPanel%CDriling%CloseKellyCockLed)
  92. call json%add(p,"OpenSafetyValveLed",data%Equipments%ControlPanel%CDriling%OpenSafetyValveLed)
  93. call json%add(p,"CloseSafetyValveLed",data%Equipments%ControlPanel%CDriling%CloseSafetyValveLed)
  94. call json%add(p,"IRSafetyValveLed",data%Equipments%ControlPanel%CDriling%IRSafetyValveLed)
  95. call json%add(p,"IRIBopLed",data%Equipments%ControlPanel%CDriling%IRIBopLed)
  96. call json%add(p,"LatchPipeLED",data%Equipments%ControlPanel%CDriling%LatchPipeLED)
  97. call json%add(p,"UnlatchPipeLED",data%Equipments%ControlPanel%CDriling%UnlatchPipeLED)
  98. call json%add(p,"SwingLed",data%Equipments%ControlPanel%CDriling%SwingLed)
  99. call json%add(p,"FillMouseHoleLed",data%Equipments%ControlPanel%CDriling%FillMouseHoleLed)
  100. call json%add(parent,p)
  101. end subroutine
  102. ! Input routines
  103. subroutine SetAssignmentSwitch(v)
  104. !DEC$ ATTRIBUTES DLLEXPORT :: SetAssignmentSwitch
  105. !DEC$ ATTRIBUTES ALIAS: 'SetAssignmentSwitch' :: SetAssignmentSwitch
  106. implicit none
  107. integer, intent(in) :: v
  108. data%EquipmentControl%DrillingConsole%AssignmentSwitch = v
  109. #ifdef deb
  110. call Log_4( 'AssignmentSwitch=', data%EquipmentControl%DrillingConsole%AssignmentSwitch)
  111. #endif
  112. end subroutine
  113. subroutine SetEmergencySwitch(v)
  114. !DEC$ ATTRIBUTES DLLEXPORT :: SetEmergencySwitch
  115. !DEC$ ATTRIBUTES ALIAS: 'SetEmergencySwitch' :: SetEmergencySwitch
  116. implicit none
  117. logical, intent(in) :: v
  118. data%EquipmentControl%DrillingConsole%EmergencySwitch = v
  119. #ifdef deb
  120. print*, 'EmergencySwitch=', data%EquipmentControl%DrillingConsole%EmergencySwitch
  121. #endif
  122. end subroutine
  123. subroutine SetRTTorqueLimitKnob(v)
  124. !DEC$ ATTRIBUTES DLLEXPORT :: SetRTTorqueLimitKnob
  125. !DEC$ ATTRIBUTES ALIAS: 'SetRTTorqueLimitKnob' :: SetRTTorqueLimitKnob
  126. implicit none
  127. real*8, intent(in) :: v
  128. data%EquipmentControl%DrillingConsole%RTTorqueLimitKnob = v
  129. #ifdef deb
  130. print*, 'RTTorqueLimitKnob=', data%EquipmentControl%DrillingConsole%RTTorqueLimitKnob
  131. #endif
  132. end subroutine
  133. subroutine SetMP1CPSwitch(v)
  134. !DEC$ ATTRIBUTES DLLEXPORT :: SetMP1CPSwitch
  135. !DEC$ ATTRIBUTES ALIAS: 'SetMP1CPSwitch' :: SetMP1CPSwitch
  136. implicit none
  137. integer, intent(in) :: v
  138. if(data%EquipmentControl%DrillingConsole%MP1CPSwitch == v) return
  139. if(SimulationState == SimulationState_Started) then
  140. data%EquipmentControl%DrillingConsole%MP1CPSwitchI = data%EquipmentControl%DrillingConsole%MP1CPSwitchI + 1
  141. if(data%EquipmentControl%DrillingConsole%MP1CPSwitchI >= 1) data%EquipmentControl%DrillingConsole%MP1CPSwitch = v
  142. if(data%EquipmentControl%DrillingConsole%MP1CPSwitchI >= 100) data%EquipmentControl%DrillingConsole%MP1CPSwitchI = 1
  143. !call Log_3( "MP1CPSwitchI=", MP1CPSwitchI)
  144. !call Log_3( "MP1CPSwitch=", MP1CPSwitch)
  145. !MP1CPSwitch = v
  146. endif
  147. ! if(SimulationState == SimulationState_Started) then
  148. ! !call Log_3( 'MP1CPSwitc(s)h=', MP1CPSwitch)
  149. ! if(MP1CPSwitchT /= v) then
  150. ! MP1CPSwitchT = v
  151. ! MP1CPSwitch = v
  152. !#ifdef deb
  153. ! !print*, 'MP1CPSwitch=', MP1CPSwitch
  154. ! !call Log_3( 'MP1CPSwitch=', MP1CPSwitch)
  155. !#endif
  156. ! endif
  157. ! else
  158. ! MP1CPSwitchT = v
  159. ! endif
  160. end subroutine
  161. subroutine SetMP1Throttle(v)
  162. !DEC$ ATTRIBUTES DLLEXPORT :: SetMP1Throttle
  163. !DEC$ ATTRIBUTES ALIAS: 'SetMP1Throttle' :: SetMP1Throttle
  164. implicit none
  165. real*8, intent(in) :: v
  166. if(data%EquipmentControl%DrillingConsole%MP1Throttle == v) return
  167. if(SimulationState == SimulationState_Started) then
  168. if( abs(v - data%EquipmentControl%DrillingConsole%MP1Throttle) > 0.1) data%EquipmentControl%DrillingConsole%MP1ThrottleUpdate = .true.
  169. if(data%EquipmentControl%DrillingConsole%MP1ThrottleUpdate) data%EquipmentControl%DrillingConsole%MP1Throttle = v
  170. !call Log_3( 'v-mp1=', v)
  171. !call Log_3( 'MP1Throttle=', MP1Throttle)
  172. !call Log_3( 'MP1ThrottleUpdate=', MP1ThrottleUpdate)
  173. !MP1Throttle = v
  174. endif
  175. #ifdef deb
  176. print*, 'MP1Throttle=', data%EquipmentControl%DrillingConsole%MP1Throttle
  177. #endif
  178. end subroutine
  179. subroutine SetMP2Switch(v)
  180. !DEC$ ATTRIBUTES DLLEXPORT :: SetMP2Switch
  181. !DEC$ ATTRIBUTES ALIAS: 'SetMP2Switch' :: SetMP2Switch
  182. implicit none
  183. logical, intent(in) :: v
  184. !call Log_3( 'v=', MP2SwitchT)
  185. if(data%EquipmentControl%DrillingConsole%MP2Switch == v) return
  186. if(SimulationState == SimulationState_Started) then
  187. data%EquipmentControl%DrillingConsole%MP2SwitchI = data%EquipmentControl%DrillingConsole%MP2SwitchI + 1
  188. if(data%EquipmentControl%DrillingConsole%MP2SwitchI >= 1) data%EquipmentControl%DrillingConsole%MP2Switch = v
  189. if(data%EquipmentControl%DrillingConsole%MP2SwitchI >= 100) data%EquipmentControl%DrillingConsole%MP2SwitchI = 1
  190. !call Log_3( "MP1CPSwitchI=", MP1CPSwitchI)
  191. !call Log_3( "MP2Switch=", MP2Switch)
  192. !MP2Switch = v
  193. endif
  194. ! if(SimulationState == SimulationState_Started) then
  195. ! !call Log_3( 'MP2Switch(s)=', MP2Switch)
  196. ! if(MP2SwitchT /= v) then
  197. ! MP2SwitchT = v
  198. ! MP2Switch = v
  199. !#ifdef deb
  200. ! !print*, 'MP2Switch=', MP2Switch
  201. ! !call Log_3( 'MP2Switch=', MP2Switch)
  202. !#endif
  203. ! endif
  204. ! else
  205. ! MP2SwitchT = v
  206. ! !call Log_3( 'MP2SwitchTMP2SwitchTMP2SwitchT=', MP2SwitchT)
  207. ! endif
  208. end subroutine
  209. subroutine SetMP2Throttle(v)
  210. !DEC$ ATTRIBUTES DLLEXPORT :: SetMP2Throttle
  211. !DEC$ ATTRIBUTES ALIAS: 'SetMP2Throttle' :: SetMP2Throttle
  212. implicit none
  213. real*8, intent(in) :: v
  214. if(data%EquipmentControl%DrillingConsole%MP2Throttle == v) return
  215. if(SimulationState == SimulationState_Started) then
  216. if( abs(v - data%EquipmentControl%DrillingConsole%MP2Throttle) > 0.1) data%EquipmentControl%DrillingConsole%MP2ThrottleUpdate = .true.
  217. if(data%EquipmentControl%DrillingConsole%MP2ThrottleUpdate) data%EquipmentControl%DrillingConsole%MP2Throttle = v
  218. !call Log_3( 'v-mp2=', v)
  219. !call Log_3( 'MP2Throttle=', MP2Throttle)
  220. !call Log_3( 'MP2ThrottleUpdate=', MP2ThrottleUpdate)
  221. !MP2Throttle = v
  222. endif
  223. #ifdef deb
  224. print*, 'MP2Throttle=', data%EquipmentControl%DrillingConsole%MP2Throttle
  225. #endif
  226. end subroutine
  227. subroutine SetDWSwitch(v)
  228. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWSwitch
  229. !DEC$ ATTRIBUTES ALIAS: 'SetDWSwitch' :: SetDWSwitch
  230. implicit none
  231. integer, intent(in) :: v
  232. data%EquipmentControl%DrillingConsole%DWSwitch = v
  233. #ifdef deb
  234. print*, 'DWSwitch=', data%EquipmentControl%DrillingConsole%DWSwitch
  235. #endif
  236. end subroutine
  237. subroutine SetDWThrottle(v)
  238. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWThrottle
  239. !DEC$ ATTRIBUTES ALIAS: 'SetDWThrottle' :: SetDWThrottle
  240. implicit none
  241. real*8, intent(in) :: v
  242. data%EquipmentControl%DrillingConsole%DWThrottle = v
  243. #ifdef deb
  244. print*, 'DWThrottle=', data%EquipmentControl%DrillingConsole%DWThrottle
  245. #endif
  246. end subroutine
  247. subroutine SetRTSwitch(v)
  248. !DEC$ ATTRIBUTES DLLEXPORT :: SetRTSwitch
  249. !DEC$ ATTRIBUTES ALIAS: 'SetRTSwitch' :: SetRTSwitch
  250. implicit none
  251. integer, intent(in) :: v
  252. data%EquipmentControl%DrillingConsole%RTSwitch = v
  253. #ifdef deb
  254. print*, 'RTSwitch=', data%EquipmentControl%DrillingConsole%RTSwitch
  255. #endif
  256. end subroutine
  257. subroutine SetRTThrottle(v)
  258. !DEC$ ATTRIBUTES DLLEXPORT :: SetRTThrottle
  259. !DEC$ ATTRIBUTES ALIAS: 'SetRTThrottle' :: SetRTThrottle
  260. implicit none
  261. real*8, intent(in) :: v
  262. data%EquipmentControl%DrillingConsole%RTThrottle = v
  263. #ifdef deb
  264. print*, 'RTThrottle=', data%EquipmentControl%DrillingConsole%RTThrottle
  265. #endif
  266. end subroutine
  267. subroutine SetDWBreak(v)
  268. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWBreak
  269. !DEC$ ATTRIBUTES ALIAS: 'SetDWBreak' :: SetDWBreak
  270. implicit none
  271. real*8, intent(in) :: v
  272. !if(ForceBreak) return
  273. data%EquipmentControl%DrillingConsole%PreviousDWBreak = data%EquipmentControl%DrillingConsole%DWBreak
  274. data%EquipmentControl%DrillingConsole%DWBreak = v
  275. #ifdef deb
  276. print*, 'DWBreak=', data%EquipmentControl%DrillingConsole%DWBreak
  277. #endif
  278. end subroutine
  279. subroutine SetDWAcceleretor(v)
  280. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWAcceleretor
  281. !DEC$ ATTRIBUTES ALIAS: 'SetDWAcceleretor' :: SetDWAcceleretor
  282. implicit none
  283. real*8, intent(in) :: v
  284. data%EquipmentControl%DrillingConsole%DWAcceleretor = v
  285. #ifdef deb
  286. print*, 'DWAcceleretor=', data%EquipmentControl%DrillingConsole%DWAcceleretor
  287. #endif
  288. end subroutine
  289. subroutine SetDWTransmisionLever(v)
  290. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWTransmisionLever
  291. !DEC$ ATTRIBUTES ALIAS: 'SetDWTransmisionLever' :: SetDWTransmisionLever
  292. implicit none
  293. real*8, intent(in) :: v
  294. data%EquipmentControl%DrillingConsole%DWTransmisionLever = v
  295. #ifdef deb
  296. print*, 'DWTransmisionLever=', data%EquipmentControl%DrillingConsole%DWTransmisionLever
  297. #endif
  298. end subroutine
  299. subroutine SetDWPowerLever(v)
  300. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWPowerLever
  301. !DEC$ ATTRIBUTES ALIAS: 'SetDWPowerLever' :: SetDWPowerLever
  302. implicit none
  303. real*8, intent(in) :: v
  304. data%EquipmentControl%DrillingConsole%DWPowerLever = v
  305. #ifdef deb
  306. print*, 'DWPowerLever=', data%EquipmentControl%DrillingConsole%DWPowerLever
  307. #endif
  308. end subroutine
  309. subroutine SetTongLever(v)
  310. !DEC$ ATTRIBUTES DLLEXPORT :: SetTongLever
  311. !DEC$ ATTRIBUTES ALIAS: 'SetTongLever' :: SetTongLever
  312. implicit none
  313. real*8, intent(in) :: v
  314. if (data%EquipmentControl%DrillingConsole%TongLever == v) return
  315. data%EquipmentControl%DrillingConsole%TongLever = v
  316. ! if(dint(TongLever) == 1.0) then
  317. ! call OnBreakoutLeverPress%RunAll()
  318. ! #ifdef deb
  319. ! print*, 'OnBreakoutLeverPress=', size(OnBreakoutLeverPress%Delegates)
  320. ! #endif
  321. ! endif
  322. ! if(dint(TongLever) == -1.0) then
  323. ! call OnMakeupLeverPress%RunAll()
  324. ! #ifdef deb
  325. ! print*, 'OnMakeupPress=', size(OnMakeupLeverPress%Delegates)
  326. ! #endif
  327. ! endif
  328. ! if(dint(TongLever) == 0.0) then
  329. ! call OnTongNeutralPress%RunAll()
  330. ! #ifdef deb
  331. ! print*, 'OnTongNeutralPress=', size(OnTongNeutralPress%Delegates)
  332. ! #endif
  333. ! endif
  334. #ifdef deb
  335. print*, 'TongLever=', data%EquipmentControl%DrillingConsole%TongLever
  336. #endif
  337. end subroutine
  338. subroutine SetRTTransmissionLever(v)
  339. !DEC$ ATTRIBUTES DLLEXPORT :: SetRTTransmissionLever
  340. !DEC$ ATTRIBUTES ALIAS: 'SetRTTransmissionLever' :: SetRTTransmissionLever
  341. implicit none
  342. real*8, intent(in) :: v
  343. data%EquipmentControl%DrillingConsole%RTTransmissionLever = v
  344. #ifdef deb
  345. print*, 'RTTransmissionLever=', data%EquipmentControl%DrillingConsole%RTTransmissionLever
  346. #endif
  347. end subroutine
  348. subroutine SetDWClutchLever(v)
  349. !DEC$ ATTRIBUTES DLLEXPORT :: SetDWClutchLever
  350. !DEC$ ATTRIBUTES ALIAS: 'SetDWClutchLever' :: SetDWClutchLever
  351. implicit none
  352. real*8, intent(in) :: v
  353. data%EquipmentControl%DrillingConsole%DWClutchLever = v
  354. #ifdef deb
  355. print*, 'DWClutchLever=', data%EquipmentControl%DrillingConsole%DWClutchLever
  356. #endif
  357. end subroutine
  358. subroutine SetEddyBreakLever(v)
  359. !DEC$ ATTRIBUTES DLLEXPORT :: SetEddyBreakLever
  360. !DEC$ ATTRIBUTES ALIAS: 'SetEddyBreakLever' :: SetEddyBreakLever
  361. implicit none
  362. real*8, intent(in) :: v
  363. data%EquipmentControl%DrillingConsole%EddyBreakLever = v
  364. #ifdef deb
  365. print*, 'EddyBreakLever=', data%EquipmentControl%DrillingConsole%EddyBreakLever
  366. #endif
  367. end subroutine
  368. subroutine SetAutoDW(v)
  369. !DEC$ ATTRIBUTES DLLEXPORT :: SetAutoDW
  370. !DEC$ ATTRIBUTES ALIAS: 'SetAutoDW' :: SetAutoDW
  371. implicit none
  372. logical, intent(in) :: v
  373. data%EquipmentControl%DrillingConsole%AutoDW = v
  374. #ifdef deb
  375. print*, 'AutoDW=', data%EquipmentControl%DrillingConsole%AutoDW
  376. #endif
  377. end subroutine
  378. subroutine SetGEN1(v)
  379. !DEC$ ATTRIBUTES DLLEXPORT :: SetGEN1
  380. !DEC$ ATTRIBUTES ALIAS: 'SetGEN1' :: SetGEN1
  381. implicit none
  382. logical, intent(in) :: v
  383. data%EquipmentControl%DrillingConsole%GEN1 = v
  384. #ifdef deb
  385. print*, 'GEN1=', data%EquipmentControl%DrillingConsole%GEN1
  386. #endif
  387. end subroutine
  388. subroutine SetGEN2(v)
  389. !DEC$ ATTRIBUTES DLLEXPORT :: SetGEN2
  390. !DEC$ ATTRIBUTES ALIAS: 'SetGEN2' :: SetGEN2
  391. implicit none
  392. logical, intent(in) :: v
  393. data%EquipmentControl%DrillingConsole%GEN2 = v
  394. #ifdef deb
  395. print*, 'GEN2=', data%EquipmentControl%DrillingConsole%GEN2
  396. #endif
  397. end subroutine
  398. subroutine SetGEN3(v)
  399. !DEC$ ATTRIBUTES DLLEXPORT :: SetGEN3
  400. !DEC$ ATTRIBUTES ALIAS: 'SetGEN3' :: SetGEN3
  401. implicit none
  402. logical, intent(in) :: v
  403. data%EquipmentControl%DrillingConsole%GEN3 = v
  404. #ifdef deb
  405. print*, 'GEN3=', data%EquipmentControl%DrillingConsole%GEN3
  406. #endif
  407. end subroutine
  408. subroutine SetGEN4(v)
  409. !DEC$ ATTRIBUTES DLLEXPORT :: SetGEN4
  410. !DEC$ ATTRIBUTES ALIAS: 'SetGEN4' :: SetGEN4
  411. implicit none
  412. logical, intent(in) :: v
  413. data%EquipmentControl%DrillingConsole%GEN4 = v
  414. #ifdef deb
  415. print*, 'GEN4=', data%EquipmentControl%DrillingConsole%GEN4
  416. #endif
  417. end subroutine
  418. ! subroutine SetInstallSafetyValve(v)
  419. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetInstallSafetyValve
  420. ! !DEC$ ATTRIBUTES ALIAS: 'SetInstallSafetyValve' :: SetInstallSafetyValve
  421. ! implicit none
  422. ! logical, intent(in) :: v
  423. ! InstallSafetyValve = v
  424. !#ifdef deb
  425. ! print*, 'InstallSafetyValve=', InstallSafetyValve
  426. !#endif
  427. ! end subroutine
  428. !
  429. ! subroutine SetOpenSafetyValve(v)
  430. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetOpenSafetyValve
  431. ! !DEC$ ATTRIBUTES ALIAS: 'SetOpenSafetyValve' :: SetOpenSafetyValve
  432. ! implicit none
  433. ! logical, intent(in) :: v
  434. ! OpenSafetyValve = v
  435. !#ifdef deb
  436. ! print*, 'OpenSafetyValve=', OpenSafetyValve
  437. !#endif
  438. ! end subroutine
  439. !
  440. ! subroutine SetRemoveSafetyValve(v)
  441. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetRemoveSafetyValve
  442. ! !DEC$ ATTRIBUTES ALIAS: 'SetRemoveSafetyValve' :: SetRemoveSafetyValve
  443. ! implicit none
  444. ! logical, intent(in) :: v
  445. ! RemoveSafetyValve = v
  446. !#ifdef deb
  447. ! print*, 'RemoveSafetyValve=', RemoveSafetyValve
  448. !#endif
  449. ! end subroutine
  450. !
  451. ! subroutine SetCloseSafetyValve(v)
  452. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetCloseSafetyValve
  453. ! !DEC$ ATTRIBUTES ALIAS: 'SetCloseSafetyValve' :: SetCloseSafetyValve
  454. ! implicit none
  455. ! logical, intent(in) :: v
  456. ! CloseSafetyValve = v
  457. !#ifdef deb
  458. ! print*, 'CloseSafetyValve=', CloseSafetyValve
  459. !#endif
  460. ! end subroutine
  461. !
  462. ! subroutine SetMakeJoint(v)
  463. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetMakeJoint
  464. ! !DEC$ ATTRIBUTES ALIAS: 'SetMakeJoint' :: SetMakeJoint
  465. ! implicit none
  466. ! logical, intent(in) :: v
  467. ! MakeJoint = v
  468. !#ifdef deb
  469. ! print*, 'MakeJoint=', MakeJoint
  470. !#endif
  471. ! end subroutine
  472. !
  473. ! subroutine SetBreakJoint(v)
  474. ! !DEC$ ATTRIBUTES DLLEXPORT :: SetBreakJoint
  475. ! !DEC$ ATTRIBUTES ALIAS: 'SetBreakJoint' :: SetBreakJoint
  476. ! implicit none
  477. ! logical, intent(in) :: v
  478. ! BreakJoint = v
  479. !#ifdef deb
  480. ! print*, 'BreakJoint=', BreakJoint
  481. !#endif
  482. ! end subroutine
  483. subroutine SetOpenKellyCock(v)
  484. !DEC$ ATTRIBUTES DLLEXPORT :: SetOpenKellyCock
  485. !DEC$ ATTRIBUTES ALIAS: 'SetOpenKellyCock' :: SetOpenKellyCock
  486. use CManifolds, OpenKellyCockSub => OpenKellyCock
  487. implicit none
  488. logical, intent(in) :: v
  489. if (data%EquipmentControl%DrillingConsole%OpenKellyCock == v) return
  490. data%EquipmentControl%DrillingConsole%OpenKellyCock = v
  491. ! if (v) call OnOpenKellyCockPress%RunAll()
  492. if(v .and. data%EquipmentControl%DrillingConsole%Permission_OpenKellyCock) call OpenKellyCockSub()
  493. #ifdef deb
  494. print*, 'OpenKellyCock=', data%EquipmentControl%DrillingConsole%OpenKellyCock
  495. #endif
  496. end subroutine
  497. subroutine SetCloseKellyCock(v)
  498. !DEC$ ATTRIBUTES DLLEXPORT :: SetCloseKellyCock
  499. !DEC$ ATTRIBUTES ALIAS: 'SetCloseKellyCock' :: SetCloseKellyCock
  500. use CManifolds, CloseKellyCockSub => CloseKellyCock
  501. implicit none
  502. logical, intent(in) :: v
  503. if (data%EquipmentControl%DrillingConsole%CloseKellyCock == v) return
  504. data%EquipmentControl%DrillingConsole%CloseKellyCock = v
  505. ! if (v) call OnCloseKellyCockPress%RunAll()
  506. if(v .and. data%EquipmentControl%DrillingConsole%Permission_CloseKellyCock) call CloseKellyCockSub()
  507. #ifdef deb
  508. print*, 'CloseKellyCock=', data%EquipmentControl%DrillingConsole%CloseKellyCock
  509. #endif
  510. end subroutine
  511. subroutine SetOpenSafetyValve(v)
  512. !DEC$ ATTRIBUTES DLLEXPORT :: SetOpenSafetyValve
  513. !DEC$ ATTRIBUTES ALIAS: 'SetOpenSafetyValve' :: SetOpenSafetyValve
  514. !use CManifolds, OpenSafetyValveSub => OpenSafetyValve
  515. implicit none
  516. logical, intent(in) :: v
  517. if (data%EquipmentControl%DrillingConsole%OpenSafetyValve == v) return
  518. data%EquipmentControl%DrillingConsole%OpenSafetyValve = v
  519. ! if (v) call OnOpenSafetyValvePress%RunAll()
  520. !if(v .and. Permission_OpenSafetyValve) call OpenSafetyValveSub()
  521. #ifdef deb
  522. print*, 'OpenSafetyValve=', data%EquipmentControl%DrillingConsole%OpenSafetyValve
  523. #endif
  524. end subroutine
  525. subroutine SetCloseSafetyValve(v)
  526. !DEC$ ATTRIBUTES DLLEXPORT :: SetCloseSafetyValve
  527. !DEC$ ATTRIBUTES ALIAS: 'SetCloseSafetyValve' :: SetCloseSafetyValve
  528. !use CManifolds, CloseSafetyValveSub => CloseSafetyValve
  529. implicit none
  530. logical, intent(in) :: v
  531. if (data%EquipmentControl%DrillingConsole%CloseSafetyValve == v) return
  532. data%EquipmentControl%DrillingConsole%CloseSafetyValve = v
  533. ! if (v) call OnCloseSafetyValvePress%RunAll()
  534. !if(v .and. Permission_CloseSafetyValve) call CloseSafetyValveSub()
  535. #ifdef deb
  536. print*, 'CloseSafetyValve=', data%EquipmentControl%DrillingConsole%CloseSafetyValve
  537. #endif
  538. end subroutine
  539. subroutine SetIRSafetyValve(v)
  540. !DEC$ ATTRIBUTES DLLEXPORT :: SetIRSafetyValve
  541. !DEC$ ATTRIBUTES ALIAS: 'SetIRSafetyValve' :: SetIRSafetyValve
  542. use CManifolds
  543. implicit none
  544. logical, intent(in) :: v
  545. logical :: prev
  546. if (data%EquipmentControl%DrillingConsole%IRSafetyValve == v) return
  547. prev = data%EquipmentControl%DrillingConsole%IRSafetyValve
  548. data%EquipmentControl%DrillingConsole%IRSafetyValve = v
  549. ! if (v) call OnIRSafetyValvePress%RunAll()
  550. !if(prev /= IRSafetyValve .and. v .and. Permission_IRSafetyValve) call ToggleSafetyValve()
  551. !if(prev /= IRSafetyValve .and. v) call ToggleSafetyValve()
  552. #ifdef deb
  553. print*, 'IRSafetyValve=', data%EquipmentControl%DrillingConsole%IRSafetyValve
  554. #endif
  555. end subroutine
  556. subroutine SetIRIBop(v)
  557. !DEC$ ATTRIBUTES DLLEXPORT :: SetIRIBop
  558. !DEC$ ATTRIBUTES ALIAS: 'SetIRIBop' :: SetIRIBop
  559. use CManifolds
  560. implicit none
  561. logical, intent(in) :: v
  562. logical :: prev
  563. if (data%EquipmentControl%DrillingConsole%IRIBop == v) return
  564. prev = data%EquipmentControl%DrillingConsole%IRIBop
  565. data%EquipmentControl%DrillingConsole%IRIBop = v
  566. ! if (v) call OnIRIBopPress%RunAll()
  567. !if(prev /= IRIBop .and. v .and. Permission_IRIBop) call ToggleIBop()
  568. !if(prev /= IRIBop .and. v) call ToggleIBop()
  569. #ifdef deb
  570. print*, 'IRIBop=', data%EquipmentControl%DrillingConsole%IRIBop
  571. #endif
  572. end subroutine
  573. subroutine SetLatchPipe(v)
  574. !DEC$ ATTRIBUTES DLLEXPORT :: SetLatchPipe
  575. !DEC$ ATTRIBUTES ALIAS: 'SetLatchPipe' :: SetLatchPipe
  576. implicit none
  577. logical, intent(in) :: v
  578. if (data%EquipmentControl%DrillingConsole%LatchPipe .eqv. v) return
  579. data%EquipmentControl%DrillingConsole%LatchPipe = v
  580. ! if (v) call OnLatchPipePress%RunAll()
  581. #ifdef deb
  582. print*, 'LatchPipe=', data%EquipmentControl%DrillingConsole%LatchPipe
  583. #endif
  584. end subroutine
  585. subroutine SetUnlatchPipe(v)
  586. !DEC$ ATTRIBUTES DLLEXPORT :: SetUnlatchPipe
  587. !DEC$ ATTRIBUTES ALIAS: 'SetUnlatchPipe' :: SetUnlatchPipe
  588. implicit none
  589. logical, intent(in) :: v
  590. if (data%EquipmentControl%DrillingConsole%UnlatchPipe .eqv. v) return
  591. data%EquipmentControl%DrillingConsole%UnlatchPipe = v
  592. ! if (v) call OnUnlatchPipePress%RunAll()
  593. #ifdef deb
  594. print*, 'UnlatchPipe=', data%EquipmentControl%DrillingConsole%UnlatchPipe
  595. #endif
  596. end subroutine
  597. subroutine SetSwing(v)
  598. !DEC$ ATTRIBUTES DLLEXPORT :: SetSwing
  599. !DEC$ ATTRIBUTES ALIAS: 'SetSwing' :: SetSwing
  600. implicit none
  601. logical, intent(in) :: v
  602. if (data%EquipmentControl%DrillingConsole%Swing .eqv. v) return
  603. data%EquipmentControl%DrillingConsole%Swing = v
  604. ! if (v) call OnSwingPress%RunAll()
  605. #ifdef deb
  606. print*, 'Swing=', data%EquipmentControl%DrillingConsole%Swing
  607. #endif
  608. end subroutine
  609. subroutine SetFillMouseHole(v)
  610. !DEC$ ATTRIBUTES DLLEXPORT :: SetFillMouseHole
  611. !DEC$ ATTRIBUTES ALIAS: 'SetFillMouseHole' :: SetFillMouseHole
  612. implicit none
  613. logical, intent(in) :: v
  614. if (data%EquipmentControl%DrillingConsole%FillMouseHole .eqv. v) return
  615. data%EquipmentControl%DrillingConsole%FillMouseHole = v
  616. ! if (v) call OnFillMouseHolePress%RunAll()
  617. #ifdef deb
  618. print*, 'FillMouseHole=', data%EquipmentControl%DrillingConsole%FillMouseHole
  619. #endif
  620. end subroutine
  621. subroutine SetSlips(v)
  622. !DEC$ ATTRIBUTES DLLEXPORT :: SetSlips
  623. !DEC$ ATTRIBUTES ALIAS: 'SetSlips' :: SetSlips
  624. implicit none
  625. logical, intent(in) :: v
  626. if (data%EquipmentControl%DrillingConsole%Slips .eqv. v) return
  627. data%EquipmentControl%DrillingConsole%Slips = v
  628. #ifdef deb
  629. print*, 'Slips=', data%EquipmentControl%DrillingConsole%Slips
  630. #endif
  631. ! if (v) call OnSlipsPress%RunAll()
  632. end subroutine
  633. subroutine SetBrakeLeverCoefficient(v)
  634. !DEC$ ATTRIBUTES DLLEXPORT :: SetBrakeLeverCoefficient
  635. !DEC$ ATTRIBUTES ALIAS: 'SetBrakeLeverCoefficient' :: SetBrakeLeverCoefficient
  636. implicit none
  637. real, intent(in) :: v
  638. data%EquipmentControl%DrillingConsole%BrakeLeverCoefficient = v
  639. #ifdef deb
  640. print*, 'BrakeLeverCoefficient=', data%EquipmentControl%DrillingConsole%BrakeLeverCoefficient
  641. #endif
  642. end subroutine
  643. subroutine SetHideDrillingBrake(v)
  644. !DEC$ ATTRIBUTES DLLEXPORT :: SetHideDrillingBrake
  645. !DEC$ ATTRIBUTES ALIAS: 'SetHideDrillingBrake' :: SetHideDrillingBrake
  646. implicit none
  647. logical, intent(in) :: v
  648. data%EquipmentControl%DrillingConsole%HideDrillingBrake = v
  649. #ifdef deb
  650. print*, 'HideDrillingBrake=', data%EquipmentControl%DrillingConsole%HideDrillingBrake
  651. #endif
  652. end subroutine
  653. subroutine SetParkingBrake(v)
  654. !DEC$ ATTRIBUTES DLLEXPORT :: SetParkingBrake
  655. !DEC$ ATTRIBUTES ALIAS: 'SetParkingBrake' :: SetParkingBrake
  656. implicit none
  657. logical, intent(in) :: v
  658. data%EquipmentControl%DrillingConsole%ParkingBrakeBtn = v
  659. #ifdef deb
  660. print*, 'ParkingBrakeBtn=', data%EquipmentControl%DrillingConsole%ParkingBrakeBtn
  661. #endif
  662. end subroutine
  663. ! Output routines
  664. logical function GetParkingBrakeLed()
  665. !DEC$ ATTRIBUTES DLLEXPORT :: GetParkingBrakeLed
  666. !DEC$ ATTRIBUTES ALIAS: 'GetParkingBrakeLed' :: GetParkingBrakeLed
  667. implicit none
  668. GetParkingBrakeLed = data%EquipmentControl%DrillingConsole%ParkingBrakeLed
  669. !GetParkingBrakeLed = .true.
  670. end function
  671. integer function GetGEN1LED()
  672. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN1LED
  673. !DEC$ ATTRIBUTES ALIAS: 'GetGEN1LED' :: GetGEN1LED
  674. implicit none
  675. GetGEN1LED = 1
  676. !GetGEN1LED = GEN1LED
  677. end function
  678. integer function GetGEN2LED()
  679. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN2LED
  680. !DEC$ ATTRIBUTES ALIAS: 'GetGEN2LED' :: GetGEN2LED
  681. implicit none
  682. GetGEN2LED = 1
  683. !GetGEN2LED = GEN2LED
  684. end function
  685. integer function GetGEN3LED()
  686. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN3LED
  687. !DEC$ ATTRIBUTES ALIAS: 'GetGEN3LED' :: GetGEN3LED
  688. implicit none
  689. GetGEN3LED = 1
  690. !GetGEN3LED = GEN3LED
  691. end function
  692. integer function GetGEN4LED()
  693. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN4LED
  694. !DEC$ ATTRIBUTES ALIAS: 'GetGEN4LED' :: GetGEN4LED
  695. implicit none
  696. GetGEN4LED = 1
  697. !GetGEN4LED = GEN4LED
  698. end function
  699. integer function GetSCR1LED()
  700. !DEC$ ATTRIBUTES DLLEXPORT :: GetSCR1LED
  701. !DEC$ ATTRIBUTES ALIAS: 'GetSCR1LED' :: GetSCR1LED
  702. implicit none
  703. GetSCR1LED = data%EquipmentControl%DrillingConsole%SCR1LED
  704. end function
  705. integer function GetSCR2LED()
  706. !DEC$ ATTRIBUTES DLLEXPORT :: GetSCR2LED
  707. !DEC$ ATTRIBUTES ALIAS: 'GetSCR2LED' :: GetSCR2LED
  708. implicit none
  709. GetSCR2LED = data%EquipmentControl%DrillingConsole%SCR2LED
  710. end function
  711. integer function GetSCR3LED()
  712. !DEC$ ATTRIBUTES DLLEXPORT :: GetSCR3LED
  713. !DEC$ ATTRIBUTES ALIAS: 'GetSCR3LED' :: GetSCR3LED
  714. implicit none
  715. GetSCR3LED = data%EquipmentControl%DrillingConsole%SCR3LED
  716. end function
  717. integer function GetSCR4LED()
  718. !DEC$ ATTRIBUTES DLLEXPORT :: GetSCR4LED
  719. !DEC$ ATTRIBUTES ALIAS: 'GetSCR4LED' :: GetSCR4LED
  720. implicit none
  721. GetSCR4LED = data%EquipmentControl%DrillingConsole%SCR4LED
  722. end function
  723. integer function GetMP1BLWR()
  724. !DEC$ ATTRIBUTES DLLEXPORT :: GetMP1BLWR
  725. !DEC$ ATTRIBUTES ALIAS: 'GetMP1BLWR' :: GetMP1BLWR
  726. implicit none
  727. GetMP1BLWR = data%EquipmentControl%DrillingConsole%MP1BLWR
  728. end function
  729. integer function GetMP2BLWR()
  730. !DEC$ ATTRIBUTES DLLEXPORT :: GetMP2BLWR
  731. !DEC$ ATTRIBUTES ALIAS: 'GetMP2BLWR' :: GetMP2BLWR
  732. implicit none
  733. GetMP2BLWR = data%EquipmentControl%DrillingConsole%MP2BLWR
  734. end function
  735. integer function GetDWBLWR()
  736. !DEC$ ATTRIBUTES DLLEXPORT :: GetDWBLWR
  737. !DEC$ ATTRIBUTES ALIAS: 'GetDWBLWR' :: GetDWBLWR
  738. implicit none
  739. GetDWBLWR = data%EquipmentControl%DrillingConsole%DWBLWR
  740. end function
  741. integer function GetRTBLWR()
  742. !DEC$ ATTRIBUTES DLLEXPORT :: GetRTBLWR
  743. !DEC$ ATTRIBUTES ALIAS: 'GetRTBLWR' :: GetRTBLWR
  744. implicit none
  745. GetRTBLWR = data%EquipmentControl%DrillingConsole%RTBLWR
  746. end function
  747. integer function GetPWRLIM()
  748. !DEC$ ATTRIBUTES DLLEXPORT :: GetPWRLIM
  749. !DEC$ ATTRIBUTES ALIAS: 'GetPWRLIM' :: GetPWRLIM
  750. implicit none
  751. GetPWRLIM = data%EquipmentControl%DrillingConsole%PWRLIM
  752. end function
  753. real(8) function GetPWRLIMMTR()
  754. !DEC$ ATTRIBUTES DLLEXPORT :: GetPWRLIMMTR
  755. !DEC$ ATTRIBUTES ALIAS: 'GetPWRLIMMTR' :: GetPWRLIMMTR
  756. implicit none
  757. GetPWRLIMMTR = data%EquipmentControl%DrillingConsole%PWRLIMMTR
  758. end function
  759. real(8) function GetRTTorqueLimitGauge()
  760. !DEC$ ATTRIBUTES DLLEXPORT :: GetRTTorqueLimitGauge
  761. !DEC$ ATTRIBUTES ALIAS: 'GetRTTorqueLimitGauge' :: GetRTTorqueLimitGauge
  762. implicit none
  763. GetRTTorqueLimitGauge = data%EquipmentControl%DrillingConsole%RTTorqueLimitGauge
  764. end function
  765. integer function GetAutoDWLED()
  766. !DEC$ ATTRIBUTES DLLEXPORT :: GetAutoDWLED
  767. !DEC$ ATTRIBUTES ALIAS: 'GetAutoDWLED' :: GetAutoDWLED
  768. implicit none
  769. GetAutoDWLED = data%EquipmentControl%DrillingConsole%AutoDWLED
  770. end function
  771. integer function GetGEN1BTNLED()
  772. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN1BTNLED
  773. !DEC$ ATTRIBUTES ALIAS: 'GetGEN1BTNLED' :: GetGEN1BTNLED
  774. implicit none
  775. GetGEN1BTNLED = data%EquipmentControl%DrillingConsole%GEN1BTNLED
  776. end function
  777. integer function GetGEN2BTNLED()
  778. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN2BTNLED
  779. !DEC$ ATTRIBUTES ALIAS: 'GetGEN2BTNLED' :: GetGEN2BTNLED
  780. implicit none
  781. GetGEN2BTNLED = data%EquipmentControl%DrillingConsole%GEN2BTNLED
  782. end function
  783. integer function GetGEN3BTNLED()
  784. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN3BTNLED
  785. !DEC$ ATTRIBUTES ALIAS: 'GetGEN3BTNLED' :: GetGEN3BTNLED
  786. implicit none
  787. GetGEN3BTNLED = data%EquipmentControl%DrillingConsole%GEN3BTNLED
  788. end function
  789. integer function GetGEN4BTNLED()
  790. !DEC$ ATTRIBUTES DLLEXPORT :: GetGEN4BTNLED
  791. !DEC$ ATTRIBUTES ALIAS: 'GetGEN4BTNLED' :: GetGEN4BTNLED
  792. implicit none
  793. GetGEN4BTNLED = data%EquipmentControl%DrillingConsole%GEN4BTNLED
  794. end function
  795. integer function GetOpenKellyCockLed()
  796. !DEC$ ATTRIBUTES DLLEXPORT :: GetOpenKellyCockLed
  797. !DEC$ ATTRIBUTES ALIAS: 'GetOpenKellyCockLed' :: GetOpenKellyCockLed
  798. implicit none
  799. GetOpenKellyCockLed = data%EquipmentControl%DrillingConsole%OpenKellyCockLed
  800. end function
  801. integer function GetCloseKellyCockLed()
  802. !DEC$ ATTRIBUTES DLLEXPORT :: GetCloseKellyCockLed
  803. !DEC$ ATTRIBUTES ALIAS: 'GetCloseKellyCockLed' :: GetCloseKellyCockLed
  804. implicit none
  805. GetCloseKellyCockLed = data%EquipmentControl%DrillingConsole%CloseKellyCockLed
  806. end function
  807. integer function GetOpenSafetyValveLed()
  808. !DEC$ ATTRIBUTES DLLEXPORT :: GetOpenSafetyValveLed
  809. !DEC$ ATTRIBUTES ALIAS: 'GetOpenSafetyValveLed' :: GetOpenSafetyValveLed
  810. implicit none
  811. GetOpenSafetyValveLed = data%EquipmentControl%DrillingConsole%OpenSafetyValveLed
  812. end function
  813. integer function GetCloseSafetyValveLed()
  814. !DEC$ ATTRIBUTES DLLEXPORT :: GetCloseSafetyValveLed
  815. !DEC$ ATTRIBUTES ALIAS: 'GetCloseSafetyValveLed' :: GetCloseSafetyValveLed
  816. implicit none
  817. GetCloseSafetyValveLed = data%EquipmentControl%DrillingConsole%CloseSafetyValveLed
  818. end function
  819. integer function GetIRSafetyValveLed()
  820. !DEC$ ATTRIBUTES DLLEXPORT :: GetIRSafetyValveLed
  821. !DEC$ ATTRIBUTES ALIAS: 'GetIRSafetyValveLed' :: GetIRSafetyValveLed
  822. implicit none
  823. GetIRSafetyValveLed = data%EquipmentControl%DrillingConsole%IRSafetyValveLed
  824. end function
  825. integer function GetIRIBopLed()
  826. !DEC$ ATTRIBUTES DLLEXPORT :: GetIRIBopLed
  827. !DEC$ ATTRIBUTES ALIAS: 'GetIRIBopLed' :: GetIRIBopLed
  828. implicit none
  829. GetIRIBopLed = data%EquipmentControl%DrillingConsole%IRIBopLed
  830. end function
  831. integer function GetLatchPipeLED()
  832. !DEC$ ATTRIBUTES DLLEXPORT :: GetLatchPipeLED
  833. !DEC$ ATTRIBUTES ALIAS: 'GetLatchPipeLED' :: GetLatchPipeLED
  834. implicit none
  835. GetLatchPipeLED = data%EquipmentControl%DrillingConsole%LatchPipeLED
  836. end function
  837. integer function GetUnlatchPipeLED()
  838. !DEC$ ATTRIBUTES DLLEXPORT :: GetUnlatchPipeLED
  839. !DEC$ ATTRIBUTES ALIAS: 'GetUnlatchPipeLED' :: GetUnlatchPipeLED
  840. implicit none
  841. GetUnlatchPipeLED = data%EquipmentControl%DrillingConsole%UnlatchPipeLED
  842. end function
  843. integer function GetSwingLed()
  844. !DEC$ ATTRIBUTES DLLEXPORT :: GetSwingLed
  845. !DEC$ ATTRIBUTES ALIAS: 'GetSwingLed' :: GetSwingLed
  846. implicit none
  847. GetSwingLed = data%EquipmentControl%DrillingConsole%SwingLed
  848. end function
  849. integer function GetFillMouseHoleLed()
  850. !DEC$ ATTRIBUTES DLLEXPORT :: GetFillMouseHoleLed
  851. !DEC$ ATTRIBUTES ALIAS: 'GetFillMouseHoleLed' :: GetFillMouseHoleLed
  852. implicit none
  853. GetFillMouseHoleLed = data%EquipmentControl%DrillingConsole%FillMouseHoleLed
  854. end function
  855. end module CDrillingConsole