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.
 
 
 
 
 
 

369 regels
22 KiB

  1. module CChokeProblemsVariables
  2. use CProblemDifinition
  3. implicit none
  4. public
  5. ! Input vars
  6. type:: ChokeProblemsType
  7. type(CProblem) :: HydraulicChoke1Plugged
  8. type(CProblem) :: HydraulicChoke1Fail
  9. type(CProblem) :: HydraulicChoke1Washout
  10. integer :: HydraulicChoke1PluggedPercent
  11. type(CProblem) :: HydraulicChoke2Plugged
  12. type(CProblem) :: HydraulicChoke2Fail
  13. type(CProblem) :: HydraulicChoke2Washout
  14. integer :: HydraulicChoke2PluggedPercent
  15. type(CProblem) :: ManualChoke1Plugged
  16. type(CProblem) :: ManualChoke1Fail
  17. type(CProblem) :: ManualChoke1Washout
  18. integer :: ManualChoke1PluggedPercent
  19. type(CProblem) :: ManualChoke2Plugged
  20. type(CProblem) :: ManualChoke2Fail
  21. type(CProblem) :: ManualChoke2Washout
  22. integer :: ManualChoke2PluggedPercent
  23. type(CProblem) :: ChokePanelAirFail
  24. end type ChokeProblemsType
  25. type(ChokeProblemsType)::ChokeProblems
  26. ! procedure (ActionInteger), pointer :: HydraulicChoke1PluggedPtr
  27. ! procedure (ActionInteger), pointer :: HydraulicChoke1FailPtr
  28. ! procedure (ActionInteger), pointer :: HydraulicChoke1WashoutPtr
  29. ! procedure (ActionInteger), pointer :: HydraulicChoke2PluggedPtr
  30. ! procedure (ActionInteger), pointer :: HydraulicChoke2FailPtr
  31. ! procedure (ActionInteger), pointer :: HydraulicChoke2WashoutPtr
  32. ! procedure (ActionInteger), pointer :: ManualChoke1PluggedPtr
  33. ! procedure (ActionInteger), pointer :: ManualChoke1FailPtr
  34. ! procedure (ActionInteger), pointer :: ManualChoke1WashoutPtr
  35. ! procedure (ActionInteger), pointer :: ManualChoke2PluggedPtr
  36. ! procedure (ActionInteger), pointer :: ManualChoke2FailPtr
  37. ! procedure (ActionInteger), pointer :: ManualChoke2WashoutPtr
  38. ! procedure (ActionInteger), pointer :: ChokePanelAirFailPtr
  39. contains
  40. subroutine ProcessChokeProblemsDueTime(time)
  41. implicit none
  42. integer :: time
  43. if(ChokeProblems%HydraulicChoke1Plugged%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke1Plugged, ChangeHydraulicChoke1Plugged, time)
  44. if(ChokeProblems%HydraulicChoke1Fail%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke1Fail, ChangeHydraulicChoke1Fail, time)
  45. if(ChokeProblems%HydraulicChoke1Washout%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke1Washout, ChangeHydraulicChoke1Washout, time)
  46. if(ChokeProblems%HydraulicChoke2Plugged%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke2Plugged, ChangeHydraulicChoke2Plugged, time)
  47. if(ChokeProblems%HydraulicChoke2Fail%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke2Fail, ChangeHydraulicChoke2Fail, time)
  48. if(ChokeProblems%HydraulicChoke2Washout%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%HydraulicChoke2Washout, ChangeHydraulicChoke2Washout, time)
  49. if(ChokeProblems%ManualChoke1Plugged%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke1Plugged, ChangeManualChoke1Plugged, time)
  50. if(ChokeProblems%ManualChoke1Fail%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke1Fail, ChangeManualChoke1Fail, time)
  51. if(ChokeProblems%ManualChoke1Washout%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke1Washout, ChangeManualChoke1Washout, time)
  52. if(ChokeProblems%ManualChoke2Plugged%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke2Plugged, ChangeManualChoke2Plugged, time)
  53. if(ChokeProblems%ManualChoke2Fail%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke2Fail, ChangeManualChoke2Fail, time)
  54. if(ChokeProblems%ManualChoke2Washout%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ManualChoke2Washout, ChangeManualChoke2Washout, time)
  55. if(ChokeProblems%ChokePanelAirFail%ProblemType == Time_ProblemType) call ProcessDueTime(ChokeProblems%ChokePanelAirFail, ChangeChokePanelAirFail, time)
  56. end subroutine
  57. subroutine ProcessChokeProblemsDuePumpStrokes(strokes)
  58. implicit none
  59. integer :: strokes
  60. if(ChokeProblems%HydraulicChoke1Plugged%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke1Plugged, ChangeHydraulicChoke1Plugged, strokes)
  61. if(ChokeProblems%HydraulicChoke1Fail%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke1Fail, ChangeHydraulicChoke1Fail, strokes)
  62. if(ChokeProblems%HydraulicChoke1Washout%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke1Washout, ChangeHydraulicChoke1Washout, strokes)
  63. if(ChokeProblems%HydraulicChoke2Plugged%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke2Plugged, ChangeHydraulicChoke2Plugged, strokes)
  64. if(ChokeProblems%HydraulicChoke2Fail%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke2Fail, ChangeHydraulicChoke2Fail, strokes)
  65. if(ChokeProblems%HydraulicChoke2Washout%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%HydraulicChoke2Washout, ChangeHydraulicChoke2Washout, strokes)
  66. if(ChokeProblems%ManualChoke1Plugged%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke1Plugged, ChangeManualChoke1Plugged, strokes)
  67. if(ChokeProblems%ManualChoke1Fail%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke1Fail, ChangeManualChoke1Fail, strokes)
  68. if(ChokeProblems%ManualChoke1Washout%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke1Washout, ChangeManualChoke1Washout, strokes)
  69. if(ChokeProblems%ManualChoke2Plugged%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke2Plugged, ChangeManualChoke2Plugged, strokes)
  70. if(ChokeProblems%ManualChoke2Fail%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke2Fail, ChangeManualChoke2Fail, strokes)
  71. if(ChokeProblems%ManualChoke2Washout%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ManualChoke2Washout, ChangeManualChoke2Washout, strokes)
  72. if(ChokeProblems%ChokePanelAirFail%ProblemType == PumpStrokes_ProblemType) call ProcessDuePumpStrokes(ChokeProblems%ChokePanelAirFail, ChangeChokePanelAirFail, strokes)
  73. end subroutine
  74. subroutine ProcessChokeProblemsDueVolumePumped(volume)
  75. implicit none
  76. real(8) :: volume
  77. if(ChokeProblems%HydraulicChoke1Plugged%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke1Plugged, ChangeHydraulicChoke1Plugged, volume)
  78. if(ChokeProblems%HydraulicChoke1Fail%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke1Fail, ChangeHydraulicChoke1Fail, volume)
  79. if(ChokeProblems%HydraulicChoke1Washout%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke1Washout, ChangeHydraulicChoke1Washout, volume)
  80. if(ChokeProblems%HydraulicChoke2Plugged%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke2Plugged, ChangeHydraulicChoke2Plugged, volume)
  81. if(ChokeProblems%HydraulicChoke2Fail%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke2Fail, ChangeHydraulicChoke2Fail, volume)
  82. if(ChokeProblems%HydraulicChoke2Washout%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%HydraulicChoke2Washout, ChangeHydraulicChoke2Washout, volume)
  83. if(ChokeProblems%ManualChoke1Plugged%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke1Plugged, ChangeManualChoke1Plugged, volume)
  84. if(ChokeProblems%ManualChoke1Fail%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke1Fail, ChangeManualChoke1Fail, volume)
  85. if(ChokeProblems%ManualChoke1Washout%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke1Washout, ChangeManualChoke1Washout, volume)
  86. if(ChokeProblems%ManualChoke2Plugged%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke2Plugged, ChangeManualChoke2Plugged, volume)
  87. if(ChokeProblems%ManualChoke2Fail%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke2Fail, ChangeManualChoke2Fail, volume)
  88. if(ChokeProblems%ManualChoke2Washout%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ManualChoke2Washout, ChangeManualChoke2Washout, volume)
  89. if(ChokeProblems%ChokePanelAirFail%ProblemType == VolumePumped_ProblemType) call ProcessDueVolumePumped(ChokeProblems%ChokePanelAirFail, ChangeChokePanelAirFail, volume)
  90. end subroutine
  91. subroutine ProcessChokeProblemsDueDistanceDrilled(distance)
  92. implicit none
  93. real(8) :: distance
  94. if(ChokeProblems%HydraulicChoke1Plugged%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke1Plugged, ChangeHydraulicChoke1Plugged, distance)
  95. if(ChokeProblems%HydraulicChoke1Fail%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke1Fail, ChangeHydraulicChoke1Fail, distance)
  96. if(ChokeProblems%HydraulicChoke1Washout%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke1Washout, ChangeHydraulicChoke1Washout, distance)
  97. if(ChokeProblems%HydraulicChoke2Plugged%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke2Plugged, ChangeHydraulicChoke2Plugged, distance)
  98. if(ChokeProblems%HydraulicChoke2Fail%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke2Fail, ChangeHydraulicChoke2Fail, distance)
  99. if(ChokeProblems%HydraulicChoke2Washout%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%HydraulicChoke2Washout, ChangeHydraulicChoke2Washout, distance)
  100. if(ChokeProblems%ManualChoke1Plugged%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke1Plugged, ChangeManualChoke1Plugged, distance)
  101. if(ChokeProblems%ManualChoke1Fail%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke1Fail, ChangeManualChoke1Fail, distance)
  102. if(ChokeProblems%ManualChoke1Washout%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke1Washout, ChangeManualChoke1Washout, distance)
  103. if(ChokeProblems%ManualChoke2Plugged%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke2Plugged, ChangeManualChoke2Plugged, distance)
  104. if(ChokeProblems%ManualChoke2Fail%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke2Fail, ChangeManualChoke2Fail, distance)
  105. if(ChokeProblems%ManualChoke2Washout%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ManualChoke2Washout, ChangeManualChoke2Washout, distance)
  106. if(ChokeProblems%ChokePanelAirFail%ProblemType == DistanceDrilled_ProblemType) call ProcessDueDistanceDrilled(ChokeProblems%ChokePanelAirFail, ChangeChokePanelAirFail, distance)
  107. end subroutine
  108. subroutine ChangeHydraulicChoke1Plugged(status)
  109. USE CHOKEVARIABLES
  110. implicit none
  111. integer, intent (in) :: status
  112. ! if(associated(HydraulicChoke1PluggedPtr)) call HydraulicChoke1PluggedPtr(status)
  113. if(status == Clear_StatusType) CHOOKE(1)%PlugMalf = 0
  114. if(status == Executed_StatusType) CHOOKE(1)%PlugMalf = 1
  115. endsubroutine
  116. subroutine ChangeHydraulicChoke1Fail(status)
  117. USE CHOKEVARIABLES
  118. implicit none
  119. integer, intent (in) :: status
  120. ! if(associated(HydraulicChoke1FailPtr)) call HydraulicChoke1FailPtr(status)
  121. if(status == Clear_StatusType) CHOOKE(1)%FailMalf = 0
  122. if(status == Executed_StatusType) CHOOKE(1)%FailMalf = 1
  123. endsubroutine
  124. subroutine ChangeHydraulicChoke1Washout(status)
  125. USE CHOKEVARIABLES
  126. use CChokeManifoldVariables
  127. implicit none
  128. integer, intent (in) :: status
  129. ! if(associated(HydraulicChoke1WashoutPtr)) call HydraulicChoke1WashoutPtr(status)
  130. if(status == Clear_StatusType) CHOOKE(1)%WashoutMalf = 0
  131. if(status == Executed_StatusType) CHOOKE(1)%WashoutMalf = 1
  132. if(status == Clear_StatusType) ChokeManifold%HyChock1OnProblem = .false.
  133. if(status == Executed_StatusType) ChokeManifold%HyChock1OnProblem = .true.
  134. endsubroutine
  135. subroutine ChangeHydraulicChoke2Plugged(status)
  136. USE CHOKEVARIABLES
  137. implicit none
  138. integer, intent (in) :: status
  139. ! if(associated(HydraulicChoke2PluggedPtr)) call HydraulicChoke2PluggedPtr(status)
  140. if(status == Clear_StatusType) CHOOKE(2)%PlugMalf = 0
  141. if(status == Executed_StatusType) CHOOKE(2)%PlugMalf = 1
  142. endsubroutine
  143. subroutine ChangeHydraulicChoke2Fail(status)
  144. USE CHOKEVARIABLES
  145. implicit none
  146. integer, intent (in) :: status
  147. ! if(associated(HydraulicChoke2FailPtr)) call HydraulicChoke2FailPtr(status)
  148. if(status == Clear_StatusType) CHOOKE(2)%FailMalf = 0
  149. if(status == Executed_StatusType) CHOOKE(2)%FailMalf = 1
  150. endsubroutine
  151. subroutine ChangeHydraulicChoke2Washout(status)
  152. USE CHOKEVARIABLES
  153. use CChokeManifoldVariables
  154. implicit none
  155. integer, intent (in) :: status
  156. ! if(associated(HydraulicChoke2WashoutPtr)) call HydraulicChoke2WashoutPtr(status)
  157. if(status == Clear_StatusType) CHOOKE(2)%WashoutMalf = 0
  158. if(status == Executed_StatusType) CHOOKE(2)%WashoutMalf = 1
  159. if(status == Clear_StatusType) ChokeManifold%HyChock2OnProblem = .false.
  160. if(status == Executed_StatusType) ChokeManifold%HyChock2OnProblem = .true.
  161. endsubroutine
  162. subroutine ChangeManualChoke1Plugged(status)
  163. USE FricPressDropVarsModule
  164. implicit none
  165. integer, intent (in) :: status
  166. ! if(associated(ManualChoke1PluggedPtr)) call ManualChoke1PluggedPtr(status)
  167. if(status == Clear_StatusType) FricPressDropVars%ManChoke1Plug = 0
  168. if(status == Executed_StatusType) FricPressDropVars%ManChoke1Plug = 1
  169. endsubroutine
  170. subroutine ChangeManualChoke1Fail(status)
  171. implicit none
  172. integer, intent (in) :: status
  173. ! if(associated(ManualChoke1FailPtr)) call ManualChoke1FailPtr(status)
  174. !if(status == Clear_StatusType) print*,'On_ManualChoke1Fail_Clear'
  175. !if(status == Executed_StatusType) print*,'On_ManualChoke1Fail_Execute'
  176. endsubroutine
  177. subroutine ChangeManualChoke1Washout(status)
  178. USE FricPressDropVarsModule
  179. use CChokeManifoldVariables
  180. implicit none
  181. integer, intent (in) :: status
  182. ! if(associated(ManualChoke1WashoutPtr)) call ManualChoke1WashoutPtr(status)
  183. if(status == Clear_StatusType) FricPressDropVars%ManChoke1Washout = 0
  184. if(status == Executed_StatusType) FricPressDropVars%ManChoke1Washout = 1
  185. if(status == Clear_StatusType) ChokeManifold%LeftManChokeOnProblem = .false.
  186. if(status == Executed_StatusType) ChokeManifold%LeftManChokeOnProblem = .true.
  187. endsubroutine
  188. subroutine ChangeManualChoke2Plugged(status)
  189. USE FricPressDropVarsModule
  190. implicit none
  191. integer, intent (in) :: status
  192. ! if(associated(ManualChoke2PluggedPtr)) call ManualChoke2PluggedPtr(status)
  193. if(status == Clear_StatusType) FricPressDropVars%ManChoke2Plug = 0
  194. if(status == Executed_StatusType) FricPressDropVars%ManChoke2Plug = 1
  195. endsubroutine
  196. subroutine ChangeManualChoke2Fail(status)
  197. implicit none
  198. integer, intent (in) :: status
  199. ! if(associated(ManualChoke2FailPtr)) call ManualChoke2FailPtr(status)
  200. !if(status == Clear_StatusType) print*,'On_ManualChoke2Fail_Clear'
  201. !if(status == Executed_StatusType) print*,'On_ManualChoke2Fail_Execute'
  202. endsubroutine
  203. subroutine ChangeManualChoke2Washout(status)
  204. USE FricPressDropVarsModule
  205. use CChokeManifoldVariables
  206. implicit none
  207. integer, intent (in) :: status
  208. ! if(associated(ManualChoke2WashoutPtr)) call ManualChoke2WashoutPtr(status)
  209. if(status == Clear_StatusType) FricPressDropVars%ManChoke2Washout = 0
  210. if(status == Executed_StatusType) FricPressDropVars%ManChoke2Washout = 1
  211. if(status == Clear_StatusType) ChokeManifold%RightManChokeOnProblem = .false.
  212. if(status == Executed_StatusType) ChokeManifold%RightManChokeOnProblem = .true.
  213. endsubroutine
  214. subroutine ChangeChokePanelAirFail(status)
  215. USE CHOKEVARIABLES
  216. implicit none
  217. integer, intent (in) :: status
  218. ! if(associated(ChokePanelAirFailPtr)) call ChokePanelAirFailPtr(status)
  219. if(status == Clear_StatusType) AirDrivenPump%ChokeAirFail = 0
  220. if(status == Executed_StatusType) AirDrivenPump%ChokeAirFail = 1
  221. endsubroutine
  222. ! subroutine SubscribeHydraulicChoke1Plugged(v)
  223. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke1Plugged
  224. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke1Plugged' :: SubscribeHydraulicChoke1Plugged
  225. ! implicit none
  226. ! procedure (ActionInteger) :: v
  227. ! HydraulicChoke1PluggedPtr => v
  228. ! end subroutine
  229. ! subroutine SubscribeHydraulicChoke1Fail(v)
  230. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke1Fail
  231. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke1Fail' :: SubscribeHydraulicChoke1Fail
  232. ! implicit none
  233. ! procedure (ActionInteger) :: v
  234. ! HydraulicChoke1FailPtr => v
  235. ! end subroutine
  236. ! subroutine SubscribeHydraulicChoke1Washout(v)
  237. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke1Washout
  238. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke1Washout' :: SubscribeHydraulicChoke1Washout
  239. ! implicit none
  240. ! procedure (ActionInteger) :: v
  241. ! HydraulicChoke1WashoutPtr => v
  242. ! end subroutine
  243. ! subroutine SubscribeHydraulicChoke2Plugged(v)
  244. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke2Plugged
  245. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke2Plugged' :: SubscribeHydraulicChoke2Plugged
  246. ! implicit none
  247. ! procedure (ActionInteger) :: v
  248. ! HydraulicChoke2PluggedPtr => v
  249. ! end subroutine
  250. ! subroutine SubscribeHydraulicChoke2Fail(v)
  251. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke2Fail
  252. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke2Fail' :: SubscribeHydraulicChoke2Fail
  253. ! implicit none
  254. ! procedure (ActionInteger) :: v
  255. ! HydraulicChoke2FailPtr => v
  256. ! end subroutine
  257. ! subroutine SubscribeHydraulicChoke2Washout(v)
  258. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeHydraulicChoke2Washout
  259. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeHydraulicChoke2Washout' :: SubscribeHydraulicChoke2Washout
  260. ! implicit none
  261. ! procedure (ActionInteger) :: v
  262. ! HydraulicChoke2WashoutPtr => v
  263. ! end subroutine
  264. ! subroutine SubscribeManualChoke1Plugged(v)
  265. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke1Plugged
  266. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke1Plugged' :: SubscribeManualChoke1Plugged
  267. ! implicit none
  268. ! procedure (ActionInteger) :: v
  269. ! ManualChoke1PluggedPtr => v
  270. ! end subroutine
  271. ! subroutine SubscribeManualChoke1Fail(v)
  272. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke1Fail
  273. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke1Fail' :: SubscribeManualChoke1Fail
  274. ! implicit none
  275. ! procedure (ActionInteger) :: v
  276. ! ManualChoke1FailPtr => v
  277. ! end subroutine
  278. ! subroutine SubscribeManualChoke1Washout(v)
  279. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke1Washout
  280. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke1Washout' :: SubscribeManualChoke1Washout
  281. ! implicit none
  282. ! procedure (ActionInteger) :: v
  283. ! ManualChoke1WashoutPtr => v
  284. ! end subroutine
  285. ! subroutine SubscribeManualChoke2Plugged(v)
  286. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke2Plugged
  287. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke2Plugged' :: SubscribeManualChoke2Plugged
  288. ! implicit none
  289. ! procedure (ActionInteger) :: v
  290. ! ManualChoke2PluggedPtr => v
  291. ! end subroutine
  292. ! subroutine SubscribeManualChoke2Fail(v)
  293. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke2Fail
  294. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke2Fail' :: SubscribeManualChoke2Fail
  295. ! implicit none
  296. ! procedure (ActionInteger) :: v
  297. ! ManualChoke2FailPtr => v
  298. ! end subroutine
  299. ! subroutine SubscribeManualChoke2Washout(v)
  300. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeManualChoke2Washout
  301. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeManualChoke2Washout' :: SubscribeManualChoke2Washout
  302. ! implicit none
  303. ! procedure (ActionInteger) :: v
  304. ! ManualChoke2WashoutPtr => v
  305. ! end subroutine
  306. ! subroutine SubscribeChokePanelAirFail(v)
  307. ! !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeChokePanelAirFail
  308. ! !DEC$ ATTRIBUTES ALIAS: 'SubscribeChokePanelAirFail' :: SubscribeChokePanelAirFail
  309. ! implicit none
  310. ! procedure (ActionInteger) :: v
  311. ! ChokePanelAirFailPtr => v
  312. ! end subroutine
  313. end module CChokeProblemsVariables