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.

1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
1 年之前
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683
  1. module CSounds
  2. use CIActionReference
  3. implicit none
  4. public
  5. ! Input vars
  6. ! Output vars
  7. integer :: Sounds%MP1s
  8. integer :: Sounds%MP2s
  9. integer :: Sounds%MP3s
  10. integer :: Sounds%RTs
  11. integer :: Sounds%DwFws
  12. integer :: Sounds%DwRevs
  13. integer :: Sounds%DwBrakes
  14. integer :: Sounds%ChokePumps
  15. integer :: Sounds%GasThroughChokes
  16. integer :: Sounds%KoomeyAirPumps
  17. integer :: Sounds%KoomeyElectricPumps
  18. logical :: Sounds%RtGearCrashs
  19. logical :: Sounds%DwGearCrashs
  20. logical :: Sounds%FloorCollisions
  21. logical :: Sounds%CrownCollisions
  22. logical :: Sounds%DwClutchs
  23. logical :: Sounds%Blowers
  24. logical :: Sounds%BlowerMp1s
  25. logical :: Sounds%BlowerMp2s
  26. logical :: Sounds%BlowerMp3s
  27. logical :: Sounds%BlowerRts
  28. logical :: Sounds%BlowerDws
  29. logical :: Sounds%BlowerStarts
  30. logical :: Sounds%BlowerShutdowns
  31. logical :: Sounds%ElectricPumps
  32. procedure (ActionInteger), pointer :: SoundMP1Ptr
  33. procedure (ActionInteger), pointer :: SoundMP2Ptr
  34. procedure (ActionInteger), pointer :: SoundMP3Ptr
  35. procedure (ActionInteger), pointer :: SoundRTPtr
  36. procedure (ActionInteger), pointer :: SoundDwFwPtr
  37. procedure (ActionInteger), pointer :: SoundDwRevPtr
  38. procedure (ActionInteger), pointer :: SoundDwBrakePtr
  39. procedure (ActionInteger), pointer :: SoundChokePumpPtr
  40. procedure (ActionInteger), pointer :: SoundGasThroughChokePtr
  41. procedure (ActionInteger), pointer :: SoundKoomeyAirPumpPtr
  42. procedure (ActionInteger), pointer :: SoundKoomeyElectricPumpPtr
  43. procedure (ActionBool), pointer :: SoundRtGearCrashPtr
  44. procedure (ActionBool), pointer :: SoundDwGearCrashPtr
  45. procedure (ActionBool), pointer :: SoundFloorCollisionPtr
  46. procedure (ActionBool), pointer :: SoundCrownCollisionPtr
  47. procedure (ActionBool), pointer :: SoundDwClutchPtr
  48. procedure (ActionBool), pointer :: SoundBlowerPtr
  49. procedure (ActionBool), pointer :: SoundBlowerMp1Ptr
  50. procedure (ActionBool), pointer :: SoundBlowerMp2Ptr
  51. procedure (ActionBool), pointer :: SoundBlowerMp3Ptr
  52. procedure (ActionBool), pointer :: SoundBlowerRtPtr
  53. procedure (ActionBool), pointer :: SoundBlowerDwPtr
  54. procedure (ActionBool), pointer :: SoundBlowerStartPtr
  55. procedure (ActionBool), pointer :: SoundBlowerShutdownPtr
  56. procedure (ActionBool), pointer :: SoundElectricPumpPtr
  57. private :: SoundMP1Ptr, SoundMP2Ptr, SoundMP3Ptr, SoundRTPtr, SoundDwFwPtr, SoundDwRevPtr,SoundDwBrakePtr,SoundChokePumpPtr,SoundGasThroughChokePtr,SoundKoomeyAirPumpPtr, &
  58. SoundKoomeyElectricPumpPtr, SoundRtGearCrashPtr,SoundDwGearCrashPtr,SoundFloorCollisionPtr,SoundCrownCollisionPtr,SoundDwClutchPtr,SoundBlowerPtr, &
  59. SoundBlowerMp1Ptr, SoundBlowerMp2Ptr,SoundBlowerMp3Ptr,SoundBlowerRtPtr,SoundBlowerDwPtr,SoundBlowerStartPtr,SoundBlowerShutdownPtr,SoundElectricPumpPtr
  60. contains
  61. subroutine SetSoundMP1(v)
  62. implicit none
  63. integer, intent(inout) :: v
  64. !if(associated(SoundMP1Ptr)) call SoundMP1Ptr(v)
  65. Sounds%MP1s = v
  66. end subroutine
  67. subroutine SetSoundMP2(v)
  68. implicit none
  69. integer, intent(inout) :: v
  70. !if(associated(SoundMP2Ptr)) call SoundMP2Ptr(v)
  71. Sounds%MP2s = v
  72. end subroutine
  73. subroutine SetSoundMP3(v)
  74. implicit none
  75. integer, intent(inout) :: v
  76. !if(associated(SoundMP3Ptr)) call SoundMP3Ptr(v)
  77. Sounds%MP3s = v
  78. end subroutine
  79. subroutine SetSoundRT(v)
  80. implicit none
  81. integer, intent(inout) :: v
  82. !if(associated(SoundRTPtr)) call SoundRTPtr(v)
  83. Sounds%RTs = v
  84. end subroutine
  85. subroutine SetSoundDwFw(v)
  86. implicit none
  87. integer, intent(inout) :: v
  88. !if(associated(SoundDwFwPtr)) call SoundDwFwPtr(v)
  89. Sounds%DwFws = v
  90. end subroutine
  91. subroutine SetSoundDwRev(v)
  92. implicit none
  93. integer, intent(inout) :: v
  94. !if(associated(SoundDwRevPtr)) call SoundDwRevPtr(v)
  95. Sounds%DwRevs = v
  96. end subroutine
  97. subroutine SetSoundDwBrake(v)
  98. implicit none
  99. integer, intent(inout) :: v
  100. !if(associated(SoundDwBrakePtr)) call SoundDwBrakePtr(v)
  101. Sounds%DwBrakes = v
  102. end subroutine
  103. subroutine SetSoundChokePump(v)
  104. implicit none
  105. integer, intent(inout) :: v
  106. !if(associated(SoundChokePumpPtr)) call SoundChokePumpPtr(v)
  107. Sounds%ChokePumps = v
  108. end subroutine
  109. subroutine SetSoundGasThroughChoke(v)
  110. implicit none
  111. integer, intent(inout) :: v
  112. !if(associated(SoundGasThroughChokePtr)) call SoundGasThroughChokePtr(v)
  113. Sounds%GasThroughChokes = v
  114. end subroutine
  115. subroutine SetSoundKoomeyAirPump(v)
  116. implicit none
  117. integer, intent(inout) :: v
  118. !if(associated(SoundKoomeyAirPumpPtr)) call SoundKoomeyAirPumpPtr(v)
  119. Sounds%KoomeyAirPumps = v
  120. end subroutine
  121. subroutine SetSoundKoomeyElectricPump(v)
  122. implicit none
  123. integer, intent(inout) :: v
  124. !if(associated(SoundKoomeyElectricPumpPtr)) call SoundKoomeyElectricPumpPtr(v)
  125. Sounds%KoomeyElectricPumps = v
  126. end subroutine
  127. subroutine SetSoundRtGearCrash(v)
  128. implicit none
  129. logical, intent(inout) :: v
  130. !if(associated(SoundRtGearCrashPtr)) call SoundRtGearCrashPtr(v)
  131. Sounds%RtGearCrashs = v
  132. end subroutine
  133. subroutine SetSoundDwGearCrash(v)
  134. implicit none
  135. logical, intent(inout) :: v
  136. !if(associated(SoundDwGearCrashPtr)) call SoundDwGearCrashPtr(v)
  137. Sounds%DwGearCrashs = v
  138. end subroutine
  139. subroutine SetSoundFloorCollision(v)
  140. implicit none
  141. logical, intent(inout) :: v
  142. !if(associated(SoundFloorCollisionPtr)) call SoundFloorCollisionPtr(v)
  143. Sounds%FloorCollisions = v
  144. end subroutine
  145. subroutine SetSoundCrownCollision(v)
  146. implicit none
  147. logical, intent(inout) :: v
  148. !if(associated(SoundCrownCollisionPtr)) call SoundCrownCollisionPtr(v)
  149. Sounds%CrownCollisions = v
  150. end subroutine
  151. subroutine SetSoundDwClutch(v)
  152. implicit none
  153. logical, intent(inout) :: v
  154. !if(associated(SoundDwClutchPtr)) call SoundDwClutchPtr(v)
  155. Sounds%DwClutchs = v
  156. end subroutine
  157. subroutine SetSoundBlower(v)
  158. implicit none
  159. logical, intent(inout) :: v
  160. !if(associated(SoundBlowerPtr)) call SoundBlowerPtr(v)
  161. Sounds%Blowers = v
  162. end subroutine
  163. subroutine SetSoundBlowerMP1(v)
  164. implicit none
  165. logical, intent(inout) :: v
  166. !if(associated(SoundBlowerMp1Ptr)) call SoundBlowerMp1Ptr(v)
  167. Sounds%BlowerMp1s = v
  168. end subroutine
  169. subroutine SetSoundBlowerMP2(v)
  170. implicit none
  171. logical, intent(inout) :: v
  172. !if(associated(SoundBlowerMp2Ptr)) call SoundBlowerMp2Ptr(v)
  173. Sounds%BlowerMp2s = v
  174. end subroutine
  175. subroutine SetSoundBlowerMP3(v)
  176. implicit none
  177. logical, intent(inout) :: v
  178. !if(associated(SoundBlowerMp3Ptr)) call SoundBlowerMp3Ptr(v)
  179. Sounds%BlowerMp3s = v
  180. end subroutine
  181. subroutine SetSoundBlowerRT(v)
  182. implicit none
  183. logical, intent(inout) :: v
  184. !if(associated(SoundBlowerRtPtr)) call SoundBlowerRtPtr(v)
  185. Sounds%BlowerRts = v
  186. end subroutine
  187. subroutine SetSoundBlowerDW(v)
  188. implicit none
  189. logical, intent(inout) :: v
  190. !if(associated(SoundBlowerDwPtr)) call SoundBlowerDwPtr(v)
  191. Sounds%BlowerDws = v
  192. end subroutine
  193. subroutine SetSoundBlowerStart(v)
  194. implicit none
  195. logical, intent(inout) :: v
  196. !if(associated(SoundBlowerStartPtr)) call SoundBlowerStartPtr(v)
  197. Sounds%BlowerStarts = v
  198. end subroutine
  199. subroutine SetSoundBlowerShutdown(v)
  200. implicit none
  201. logical, intent(inout) :: v
  202. !if(associated(SoundBlowerShutdownPtr)) call SoundBlowerShutdownPtr(v)
  203. Sounds%BlowerShutdowns = v
  204. end subroutine
  205. subroutine SetSoundElectricPump(v)
  206. implicit none
  207. logical, intent(inout) :: v
  208. !if(associated(SoundElectricPumpPtr)) call SoundElectricPumpPtr(v)
  209. Sounds%ElectricPumps = v
  210. end subroutine
  211. subroutine SubscribeSoundMP1(v)
  212. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundMP1
  213. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundMP1' :: SubscribeSoundMP1
  214. implicit none
  215. procedure (ActionInteger) :: v
  216. SoundMP1Ptr => v
  217. end subroutine
  218. subroutine SubscribeSoundMP2(v)
  219. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundMP2
  220. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundMP2' :: SubscribeSoundMP2
  221. implicit none
  222. procedure (ActionInteger) :: v
  223. SoundMP2Ptr => v
  224. end subroutine
  225. subroutine SubscribeSoundMP3(v)
  226. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundMP3
  227. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundMP3' :: SubscribeSoundMP3
  228. implicit none
  229. procedure (ActionInteger) :: v
  230. SoundMP3Ptr => v
  231. end subroutine
  232. subroutine SubscribeSoundRT(v)
  233. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundRT
  234. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundRT' :: SubscribeSoundRT
  235. implicit none
  236. procedure (ActionInteger) :: v
  237. SoundRTPtr => v
  238. end subroutine
  239. subroutine SubscribeSoundDwFw(v)
  240. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundDwFw
  241. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundDwFw' :: SubscribeSoundDwFw
  242. implicit none
  243. procedure (ActionInteger) :: v
  244. SoundDwFwPtr => v
  245. end subroutine
  246. subroutine SubscribeSoundDwRev(v)
  247. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundDwRev
  248. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundDwRev' :: SubscribeSoundDwRev
  249. implicit none
  250. procedure (ActionInteger) :: v
  251. SoundDwRevPtr => v
  252. end subroutine
  253. subroutine SubscribeSoundDwBrake(v)
  254. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundDwBrake
  255. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundDwBrake' :: SubscribeSoundDwBrake
  256. implicit none
  257. procedure (ActionInteger) :: v
  258. SoundDwBrakePtr => v
  259. end subroutine
  260. subroutine SubscribeSoundChokePump(v)
  261. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundChokePump
  262. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundChokePump' :: SubscribeSoundChokePump
  263. implicit none
  264. procedure (ActionInteger) :: v
  265. SoundChokePumpPtr => v
  266. end subroutine
  267. subroutine SubscribeSoundGasThroughChoke(v)
  268. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundGasThroughChoke
  269. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundGasThroughChoke' :: SubscribeSoundGasThroughChoke
  270. implicit none
  271. procedure (ActionInteger) :: v
  272. SoundGasThroughChokePtr => v
  273. end subroutine
  274. subroutine SubscribeSoundKoomeyAirPump(v)
  275. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundKoomeyAirPump
  276. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundKoomeyAirPump' :: SubscribeSoundKoomeyAirPump
  277. implicit none
  278. procedure (ActionInteger) :: v
  279. SoundKoomeyAirPumpPtr => v
  280. end subroutine
  281. subroutine SubscribeSoundKoomeyElectricPump(v)
  282. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundKoomeyElectricPump
  283. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundKoomeyElectricPump' :: SubscribeSoundKoomeyElectricPump
  284. implicit none
  285. procedure (ActionInteger) :: v
  286. SoundKoomeyElectricPumpPtr => v
  287. end subroutine
  288. subroutine SubscribeSoundRtGearCrash(v)
  289. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundRtGearCrash
  290. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundRtGearCrash' :: SubscribeSoundRtGearCrash
  291. implicit none
  292. procedure (ActionBool) :: v
  293. SoundRtGearCrashPtr => v
  294. end subroutine
  295. subroutine SubscribeSoundDwGearCrash(v)
  296. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundDwGearCrash
  297. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundDwGearCrash' :: SubscribeSoundDwGearCrash
  298. implicit none
  299. procedure (ActionBool) :: v
  300. SoundDwGearCrashPtr => v
  301. end subroutine
  302. subroutine SubscribeSoundFloorCollision(v)
  303. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundFloorCollision
  304. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundFloorCollision' :: SubscribeSoundFloorCollision
  305. implicit none
  306. procedure (ActionBool) :: v
  307. SoundFloorCollisionPtr => v
  308. end subroutine
  309. subroutine SubscribeSoundCrownCollision(v)
  310. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundCrownCollision
  311. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundCrownCollision' :: SubscribeSoundCrownCollision
  312. implicit none
  313. procedure (ActionBool) :: v
  314. SoundCrownCollisionPtr => v
  315. end subroutine
  316. subroutine SubscribeSoundDwClutch(v)
  317. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundDwClutch
  318. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundDwClutch' :: SubscribeSoundDwClutch
  319. implicit none
  320. procedure (ActionBool) :: v
  321. SoundDwClutchPtr => v
  322. end subroutine
  323. subroutine SubscribeSoundBlower(v)
  324. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlower
  325. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlower' :: SubscribeSoundBlower
  326. implicit none
  327. procedure (ActionBool) :: v
  328. SoundBlowerPtr => v
  329. end subroutine
  330. subroutine SubscribeSoundBlowerMp1(v)
  331. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerMp1
  332. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerMp1' :: SubscribeSoundBlowerMp1
  333. implicit none
  334. procedure (ActionBool) :: v
  335. SoundBlowerMp1Ptr => v
  336. end subroutine
  337. subroutine SubscribeSoundBlowerMp2(v)
  338. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerMp2
  339. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerMp2' :: SubscribeSoundBlowerMp2
  340. implicit none
  341. procedure (ActionBool) :: v
  342. SoundBlowerMp2Ptr => v
  343. end subroutine
  344. subroutine SubscribeSoundBlowerMp3(v)
  345. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerMp3
  346. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerMp3' :: SubscribeSoundBlowerMp3
  347. implicit none
  348. procedure (ActionBool) :: v
  349. SoundBlowerMp3Ptr => v
  350. end subroutine
  351. subroutine SubscribeSoundBlowerRt(v)
  352. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerRt
  353. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerRt' :: SubscribeSoundBlowerRt
  354. implicit none
  355. procedure (ActionBool) :: v
  356. SoundBlowerRtPtr => v
  357. end subroutine
  358. subroutine SubscribeSoundBlowerDw(v)
  359. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerDw
  360. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerDw' :: SubscribeSoundBlowerDw
  361. implicit none
  362. procedure (ActionBool) :: v
  363. SoundBlowerDwPtr => v
  364. end subroutine
  365. subroutine SubscribeSoundBlowerStart(v)
  366. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerStart
  367. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerStart' :: SubscribeSoundBlowerStart
  368. implicit none
  369. procedure (ActionBool) :: v
  370. SoundBlowerStartPtr => v
  371. end subroutine
  372. subroutine SubscribeSoundBlowerShutdown(v)
  373. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundBlowerShutdown
  374. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundBlowerShutdown' :: SubscribeSoundBlowerShutdown
  375. implicit none
  376. procedure (ActionBool) :: v
  377. SoundBlowerShutdownPtr => v
  378. end subroutine
  379. subroutine SubscribeSoundElectricPump(v)
  380. !DEC$ ATTRIBUTES DLLEXPORT :: SubscribeSoundElectricPump
  381. !DEC$ ATTRIBUTES ALIAS: 'SubscribeSoundElectricPump' :: SubscribeSoundElectricPump
  382. implicit none
  383. procedure (ActionBool) :: v
  384. SoundElectricPumpPtr => v
  385. end subroutine
  386. ! Input routines
  387. ! Output routines
  388. integer function GetSoundMP1()
  389. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundMP1
  390. !DEC$ ATTRIBUTES ALIAS: 'GetSoundMP1' :: GetSoundMP1
  391. implicit none
  392. GetSoundMP1 = Sounds%MP1s
  393. end function
  394. integer function GetSoundMP2()
  395. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundMP2
  396. !DEC$ ATTRIBUTES ALIAS: 'GetSoundMP2' :: GetSoundMP2
  397. implicit none
  398. GetSoundMP2 = Sounds%MP2s
  399. end function
  400. integer function GetSoundMP3()
  401. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundMP3
  402. !DEC$ ATTRIBUTES ALIAS: 'GetSoundMP3' :: GetSoundMP3
  403. implicit none
  404. GetSoundMP3 = Sounds%MP3s
  405. end function
  406. integer function GetSoundRT()
  407. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundRT
  408. !DEC$ ATTRIBUTES ALIAS: 'GetSoundRT' :: GetSoundRT
  409. implicit none
  410. GetSoundRT = Sounds%RTs
  411. end function
  412. integer function GetSoundDwFw()
  413. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundDwFw
  414. !DEC$ ATTRIBUTES ALIAS: 'GetSoundDwFw' :: GetSoundDwFw
  415. implicit none
  416. GetSoundDwFw = Sounds%DwFws
  417. end function
  418. integer function GetSoundDwRev()
  419. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundDwRev
  420. !DEC$ ATTRIBUTES ALIAS: 'GetSoundDwRev' :: GetSoundDwRev
  421. implicit none
  422. GetSoundDwRev = Sounds%DwRevs
  423. end function
  424. integer function GetSoundDwBrake()
  425. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundDwBrake
  426. !DEC$ ATTRIBUTES ALIAS: 'GetSoundDwBrake' :: GetSoundDwBrake
  427. implicit none
  428. GetSoundDwBrake = Sounds%DwBrakes
  429. end function
  430. integer function GetSoundChokePump()
  431. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundChokePump
  432. !DEC$ ATTRIBUTES ALIAS: 'GetSoundChokePump' :: GetSoundChokePump
  433. implicit none
  434. GetSoundChokePump = Sounds%ChokePumps
  435. end function
  436. integer function GetSoundGasThroughChoke()
  437. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundGasThroughChoke
  438. !DEC$ ATTRIBUTES ALIAS: 'GetSoundGasThroughChoke' :: GetSoundGasThroughChoke
  439. implicit none
  440. GetSoundGasThroughChoke = Sounds%GasThroughChokes
  441. end function
  442. integer function GetSoundKoomeyAirPump()
  443. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundKoomeyAirPump
  444. !DEC$ ATTRIBUTES ALIAS: 'GetSoundKoomeyAirPump' :: GetSoundKoomeyAirPump
  445. implicit none
  446. GetSoundKoomeyAirPump = Sounds%KoomeyAirPumps
  447. end function
  448. integer function GetSoundKoomeyElectricPump()
  449. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundKoomeyElectricPump
  450. !DEC$ ATTRIBUTES ALIAS: 'GetSoundKoomeyElectricPump' :: GetSoundKoomeyElectricPump
  451. implicit none
  452. GetSoundKoomeyElectricPump = Sounds%KoomeyElectricPumps
  453. end function
  454. logical function GetSoundRtGearCrash()
  455. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundRtGearCrash
  456. !DEC$ ATTRIBUTES ALIAS: 'GetSoundRtGearCrash' :: GetSoundRtGearCrash
  457. implicit none
  458. GetSoundRtGearCrash = Sounds%RtGearCrashs
  459. end function
  460. logical function GetSoundDwGearCrash()
  461. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundDwGearCrash
  462. !DEC$ ATTRIBUTES ALIAS: 'GetSoundDwGearCrash' :: GetSoundDwGearCrash
  463. implicit none
  464. GetSoundDwGearCrash = Sounds%DwGearCrashs
  465. end function
  466. logical function GetSoundFloorCollision()
  467. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundFloorCollision
  468. !DEC$ ATTRIBUTES ALIAS: 'GetSoundFloorCollision' :: GetSoundFloorCollision
  469. implicit none
  470. GetSoundFloorCollision = Sounds%FloorCollisions
  471. end function
  472. logical function GetSoundCrownCollision()
  473. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundCrownCollision
  474. !DEC$ ATTRIBUTES ALIAS: 'GetSoundCrownCollision' :: GetSoundCrownCollision
  475. implicit none
  476. GetSoundCrownCollision = Sounds%CrownCollisions
  477. end function
  478. logical function GetSoundDwClutch()
  479. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundDwClutch
  480. !DEC$ ATTRIBUTES ALIAS: 'GetSoundDwClutch' :: GetSoundDwClutch
  481. implicit none
  482. GetSoundDwClutch = Sounds%DwClutchs
  483. end function
  484. logical function GetSoundBlower()
  485. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlower
  486. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlower' :: GetSoundBlower
  487. implicit none
  488. GetSoundBlower = Sounds%Blowers
  489. end function
  490. logical function GetSoundBlowerMp1()
  491. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerMp1
  492. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerMp1' :: GetSoundBlowerMp1
  493. implicit none
  494. GetSoundBlowerMp1 = Sounds%BlowerMp1s
  495. end function
  496. logical function GetSoundBlowerMp2()
  497. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerMp2
  498. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerMp2' :: GetSoundBlowerMp2
  499. implicit none
  500. GetSoundBlowerMp2 = Sounds%BlowerMp2s
  501. end function
  502. logical function GetSoundBlowerMp3()
  503. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerMp3
  504. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerMp3' :: GetSoundBlowerMp3
  505. implicit none
  506. GetSoundBlowerMp3 = Sounds%BlowerMp3s
  507. end function
  508. logical function GetSoundBlowerRt()
  509. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerRt
  510. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerRt' :: GetSoundBlowerRt
  511. implicit none
  512. GetSoundBlowerRt = Sounds%BlowerRts
  513. end function
  514. logical function GetSoundBlowerDw()
  515. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerDw
  516. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerDw' :: GetSoundBlowerDw
  517. implicit none
  518. GetSoundBlowerDw = Sounds%BlowerDws
  519. end function
  520. logical function GetSoundBlowerStart()
  521. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerStart
  522. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerStart' :: GetSoundBlowerStart
  523. implicit none
  524. GetSoundBlowerStart = Sounds%BlowerStarts
  525. end function
  526. logical function GetSoundBlowerShutdown()
  527. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundBlowerShutdown
  528. !DEC$ ATTRIBUTES ALIAS: 'GetSoundBlowerShutdown' :: GetSoundBlowerShutdown
  529. implicit none
  530. GetSoundBlowerShutdown = Sounds%BlowerShutdowns
  531. end function
  532. logical function GetSoundElectricPump()
  533. !DEC$ ATTRIBUTES DLLEXPORT :: GetSoundElectricPump
  534. !DEC$ ATTRIBUTES ALIAS: 'GetSoundElectricPump' :: GetSoundElectricPump
  535. implicit none
  536. GetSoundElectricPump = Sounds%ElectricPumps
  537. end function
  538. end module CSounds