cosmos 4.0.0-universal-java-1.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1478) hide show
  1. checksums.yaml +7 -0
  2. data/.coveralls.yml +1 -0
  3. data/.gitattributes +3 -0
  4. data/.gitignore +48 -0
  5. data/.rubocop.yml +23 -0
  6. data/.travis.yml +10 -0
  7. data/.yardopts +3 -0
  8. data/CONTRIBUTING.txt +50 -0
  9. data/Gemfile +10 -0
  10. data/Guardfile +27 -0
  11. data/LICENSE.txt +879 -0
  12. data/Manifest.txt +1536 -0
  13. data/README.md +111 -0
  14. data/Rakefile +264 -0
  15. data/autohotkey/config/data/attitude.bin +0 -0
  16. data/autohotkey/config/data/diamond.STL +58 -0
  17. data/autohotkey/config/data/groundoff.gif +0 -0
  18. data/autohotkey/config/data/groundon.gif +0 -0
  19. data/autohotkey/config/data/position.bin +0 -0
  20. data/autohotkey/config/data/satellite.gif +0 -0
  21. data/autohotkey/config/data/tada.wav +0 -0
  22. data/autohotkey/config/system/system.txt +29 -0
  23. data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +126 -0
  24. data/autohotkey/config/targets/INST/cmd_tlm/inst_tlm.txt +270 -0
  25. data/autohotkey/config/targets/INST/cmd_tlm_server.txt +5 -0
  26. data/autohotkey/config/targets/INST/doc/README.txt +1 -0
  27. data/autohotkey/config/targets/INST/lib/example_limits_response.rb +30 -0
  28. data/autohotkey/config/targets/INST/lib/sim_inst.rb +305 -0
  29. data/autohotkey/config/targets/INST/screens/_footer.txt +4 -0
  30. data/autohotkey/config/targets/INST/screens/adcs.txt +46 -0
  31. data/autohotkey/config/targets/INST/screens/array.txt +7 -0
  32. data/autohotkey/config/targets/INST/screens/block.txt +8 -0
  33. data/autohotkey/config/targets/INST/screens/commanding.txt +30 -0
  34. data/autohotkey/config/targets/INST/screens/extra.txt +19 -0
  35. data/autohotkey/config/targets/INST/screens/graphs.txt +14 -0
  36. data/autohotkey/config/targets/INST/screens/ground.txt +25 -0
  37. data/autohotkey/config/targets/INST/screens/health_status.txt +33 -0
  38. data/autohotkey/config/targets/INST/screens/hs.txt +46 -0
  39. data/autohotkey/config/targets/INST/screens/image.txt +21 -0
  40. data/autohotkey/config/targets/INST/screens/latest.txt +23 -0
  41. data/autohotkey/config/targets/INST/screens/mech.txt +25 -0
  42. data/autohotkey/config/targets/INST/screens/other.txt +25 -0
  43. data/autohotkey/config/targets/INST/screens/params.txt +25 -0
  44. data/autohotkey/config/targets/INST/screens/tabs.txt +68 -0
  45. data/autohotkey/config/targets/INST/sequences/run_sequence.txt +1 -0
  46. data/autohotkey/config/targets/INST/target.txt +27 -0
  47. data/autohotkey/config/targets/META/cmd_tlm/meta_cmd.txt +10 -0
  48. data/autohotkey/config/targets/META/cmd_tlm/meta_tlm.txt +9 -0
  49. data/autohotkey/config/targets/META/screens/data.txt +12 -0
  50. data/autohotkey/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -0
  51. data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  52. data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +41 -0
  53. data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  54. data/autohotkey/config/targets/SYSTEM/screens/error.txt +11 -0
  55. data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +14 -0
  56. data/autohotkey/config/targets/SYSTEM/screens/meta.txt +14 -0
  57. data/autohotkey/config/targets/SYSTEM/target.txt +12 -0
  58. data/autohotkey/config/tools/cmd_sender/cmd_sender.txt +1 -0
  59. data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +22 -0
  60. data/autohotkey/config/tools/data_viewer/data_viewer.txt +11 -0
  61. data/autohotkey/config/tools/handbook_creator/default_toc.xsl +59 -0
  62. data/autohotkey/config/tools/handbook_creator/handbook_creator.txt +49 -0
  63. data/autohotkey/config/tools/handbook_creator/templates/command_packets.html.erb +86 -0
  64. data/autohotkey/config/tools/handbook_creator/templates/command_toc.html.erb +38 -0
  65. data/autohotkey/config/tools/handbook_creator/templates/footer.html.erb +9 -0
  66. data/autohotkey/config/tools/handbook_creator/templates/header.html.erb +25 -0
  67. data/autohotkey/config/tools/handbook_creator/templates/limits_groups.html.erb +13 -0
  68. data/autohotkey/config/tools/handbook_creator/templates/nav.html.erb +27 -0
  69. data/autohotkey/config/tools/handbook_creator/templates/overview.html.erb +1 -0
  70. data/autohotkey/config/tools/handbook_creator/templates/pdf_cover.html.erb +23 -0
  71. data/autohotkey/config/tools/handbook_creator/templates/pdf_footer.html.erb +33 -0
  72. data/autohotkey/config/tools/handbook_creator/templates/pdf_header.html.erb +41 -0
  73. data/autohotkey/config/tools/handbook_creator/templates/telemetry_packets.html.erb +80 -0
  74. data/autohotkey/config/tools/handbook_creator/templates/telemetry_toc.html.erb +38 -0
  75. data/autohotkey/config/tools/handbook_creator/templates/title.html.erb +1 -0
  76. data/autohotkey/config/tools/launcher/launcher.txt +38 -0
  77. data/autohotkey/config/tools/limits_monitor/README.txt +1 -0
  78. data/autohotkey/config/tools/opengl_builder/error.txt +1 -0
  79. data/autohotkey/config/tools/script_runner/script_runner.txt +3 -0
  80. data/autohotkey/config/tools/table_manager/ConfigTables_def.txt +8 -0
  81. data/autohotkey/config/tools/table_manager/OldOneDimensionalTable_def.txt +19 -0
  82. data/autohotkey/config/tools/table_manager/OldTwoDimensionalTable_def.txt +248 -0
  83. data/autohotkey/config/tools/table_manager/OneDimensionalTable_def.txt +31 -0
  84. data/autohotkey/config/tools/table_manager/TwoDimensionalTable_def.txt +28 -0
  85. data/autohotkey/config/tools/test_runner/test_runner.txt +8 -0
  86. data/autohotkey/config/tools/test_runner/test_runner2.txt +11 -0
  87. data/autohotkey/config/tools/test_runner/test_runner3.txt +7 -0
  88. data/autohotkey/config/tools/test_runner/test_runner4.txt +1 -0
  89. data/autohotkey/config/tools/tlm_extractor/tlm_extractor.txt +14 -0
  90. data/autohotkey/config/tools/tlm_extractor/tlm_extractor2.txt +9 -0
  91. data/autohotkey/config/tools/tlm_grapher/README.txt +1 -0
  92. data/autohotkey/config/tools/tlm_grapher/bad.txt +50 -0
  93. data/autohotkey/config/tools/tlm_grapher/temp1-4.txt +51 -0
  94. data/autohotkey/config/tools/tlm_grapher/test2.txt +111 -0
  95. data/autohotkey/config/tools/tlm_viewer/tlm_viewer.txt +24 -0
  96. data/autohotkey/config/tools/tlm_viewer/tlm_viewer2.txt +4 -0
  97. data/autohotkey/config/tools/tlm_viewer/tlm_viewer3.txt +3 -0
  98. data/autohotkey/lib/example_background_task.rb +42 -0
  99. data/autohotkey/lib/user_version.rb +3 -0
  100. data/autohotkey/procedures/clear_util.rb +7 -0
  101. data/autohotkey/procedures/collect.rb +18 -0
  102. data/autohotkey/procedures/collect_util.rb +14 -0
  103. data/autohotkey/procedures/example_test.rb +71 -0
  104. data/autohotkey/procedures/example_test2.rb +74 -0
  105. data/autohotkey/procedures/script_test.rb +21 -0
  106. data/autohotkey/procedures/syntax_error.rb +18 -0
  107. data/autohotkey/tools/CmdExtractorAHK +16 -0
  108. data/autohotkey/tools/CmdSender +14 -0
  109. data/autohotkey/tools/CmdSenderAHK +18 -0
  110. data/autohotkey/tools/CmdSequence +14 -0
  111. data/autohotkey/tools/CmdSequenceAHK +23 -0
  112. data/autohotkey/tools/CmdSequenceAHK2 +16 -0
  113. data/autohotkey/tools/CmdTlmServer +14 -0
  114. data/autohotkey/tools/CmdTlmServerAHK +28 -0
  115. data/autohotkey/tools/CmdTlmServerAHK2 +17 -0
  116. data/autohotkey/tools/DataViewer +14 -0
  117. data/autohotkey/tools/DataViewerAHK +17 -0
  118. data/autohotkey/tools/HandbookCreatorAHK +20 -0
  119. data/autohotkey/tools/LauncherAHK +17 -0
  120. data/autohotkey/tools/LimitsMonitorAHK +20 -0
  121. data/autohotkey/tools/OpenGLBuilderAHK +24 -0
  122. data/autohotkey/tools/PacketViewer +14 -0
  123. data/autohotkey/tools/PacketViewerAHK +18 -0
  124. data/autohotkey/tools/PacketViewerAHK2 +17 -0
  125. data/autohotkey/tools/Replay +14 -0
  126. data/autohotkey/tools/ReplayAHK +17 -0
  127. data/autohotkey/tools/ScriptRunner +14 -0
  128. data/autohotkey/tools/ScriptRunnerAHK +20 -0
  129. data/autohotkey/tools/ScriptRunnerAHK2 +17 -0
  130. data/autohotkey/tools/TableManager +14 -0
  131. data/autohotkey/tools/TableManagerAHK +25 -0
  132. data/autohotkey/tools/TableManagerAHK2 +18 -0
  133. data/autohotkey/tools/TableManagerAHK3 +18 -0
  134. data/autohotkey/tools/TableManagerAHK4 +24 -0
  135. data/autohotkey/tools/TestRunner +15 -0
  136. data/autohotkey/tools/TestRunnerAHK +17 -0
  137. data/autohotkey/tools/TestRunnerAHK2 +17 -0
  138. data/autohotkey/tools/TestRunnerAHK3 +17 -0
  139. data/autohotkey/tools/TestRunnerAHK4 +17 -0
  140. data/autohotkey/tools/TestRunnerAHK5 +17 -0
  141. data/autohotkey/tools/TestRunnerAHK6 +17 -0
  142. data/autohotkey/tools/TlmExtractor +15 -0
  143. data/autohotkey/tools/TlmExtractorAHK +19 -0
  144. data/autohotkey/tools/TlmExtractorAHK2 +16 -0
  145. data/autohotkey/tools/TlmExtractorAHK3 +16 -0
  146. data/autohotkey/tools/TlmGrapher +14 -0
  147. data/autohotkey/tools/TlmGrapherAHK +19 -0
  148. data/autohotkey/tools/TlmGrapherAHK2 +23 -0
  149. data/autohotkey/tools/TlmGrapherAHK3 +17 -0
  150. data/autohotkey/tools/TlmGrapherAHK4 +17 -0
  151. data/autohotkey/tools/TlmViewer +14 -0
  152. data/autohotkey/tools/TlmViewerAHK +28 -0
  153. data/autohotkey/tools/TlmViewerAHK2 +22 -0
  154. data/autohotkey/tools/TlmViewerAHK3 +23 -0
  155. data/autohotkey/tools/TlmViewerAHK4 +22 -0
  156. data/autohotkey/tools/TlmViewerAHK5 +18 -0
  157. data/autohotkey/tools/autohotkey.rb +38 -0
  158. data/autohotkey/tools/cmd_extractor.ahk +50 -0
  159. data/autohotkey/tools/cmd_sender.ahk +180 -0
  160. data/autohotkey/tools/cmd_sequence.ahk +215 -0
  161. data/autohotkey/tools/cmd_sequence2.ahk +23 -0
  162. data/autohotkey/tools/cmd_tlm_server.ahk +90 -0
  163. data/autohotkey/tools/cmd_tlm_server2.ahk +45 -0
  164. data/autohotkey/tools/data_viewer.ahk +140 -0
  165. data/autohotkey/tools/handbook_creator.ahk +32 -0
  166. data/autohotkey/tools/launcher.ahk +41 -0
  167. data/autohotkey/tools/limits_monitor.ahk +121 -0
  168. data/autohotkey/tools/open_gl_builder.ahk +133 -0
  169. data/autohotkey/tools/packet_viewer.ahk +216 -0
  170. data/autohotkey/tools/packet_viewer2.ahk +9 -0
  171. data/autohotkey/tools/replay.ahk +103 -0
  172. data/autohotkey/tools/script_runner.ahk +588 -0
  173. data/autohotkey/tools/script_runner2.ahk +50 -0
  174. data/autohotkey/tools/table_manager.ahk +291 -0
  175. data/autohotkey/tools/test_runner.ahk +262 -0
  176. data/autohotkey/tools/test_runner2.ahk +49 -0
  177. data/autohotkey/tools/test_runner3.ahk +11 -0
  178. data/autohotkey/tools/test_runner5.ahk +8 -0
  179. data/autohotkey/tools/test_runner6.ahk +5 -0
  180. data/autohotkey/tools/tlm_extractor.ahk +357 -0
  181. data/autohotkey/tools/tlm_grapher.ahk +658 -0
  182. data/autohotkey/tools/tlm_grapher2.ahk +115 -0
  183. data/autohotkey/tools/tlm_grapher3.ahk +23 -0
  184. data/autohotkey/tools/tlm_viewer.ahk +138 -0
  185. data/autohotkey/tools/tlm_viewer2.ahk +49 -0
  186. data/autohotkey/tools/tlm_viewer4.ahk +4 -0
  187. data/autohotkey/tools/tlm_viewer5.ahk +19 -0
  188. data/bin/cosmos +266 -0
  189. data/bin/cstol_converter +1166 -0
  190. data/bin/exchndl20-x64.dll +0 -0
  191. data/bin/exchndl20.dll +0 -0
  192. data/bin/exchndl21-x64.dll +0 -0
  193. data/bin/exchndl21.dll +0 -0
  194. data/bin/exchndl22-x64.dll +0 -0
  195. data/bin/exchndl22.dll +0 -0
  196. data/bin/mgwhelp-x64.dll +0 -0
  197. data/bin/mgwhelp.dll +0 -0
  198. data/bin/rubysloc +85 -0
  199. data/bin/xtce_converter +83 -0
  200. data/cosmos.gemspec +107 -0
  201. data/data/COSMOS_64x64.bmp +0 -0
  202. data/data/COSMOS_64x64.ico +0 -0
  203. data/data/COSMOS_64x64.png +0 -0
  204. data/data/COSMOS_Architecture.png +0 -0
  205. data/data/CheckBoxCheck.gif +0 -0
  206. data/data/CheckBoxEmpty.gif +0 -0
  207. data/data/Earthmap1024x512.gif +0 -0
  208. data/data/about.txt +4 -0
  209. data/data/add_database.png +0 -0
  210. data/data/add_plot.png +0 -0
  211. data/data/add_tab.png +0 -0
  212. data/data/blank.png +0 -0
  213. data/data/bug.png +0 -0
  214. data/data/checkmark.png +0 -0
  215. data/data/close.png +0 -0
  216. data/data/cmd_extractor.png +0 -0
  217. data/data/cmd_sender.png +0 -0
  218. data/data/cmd_sequence.png +0 -0
  219. data/data/config/_array_params.yaml +23 -0
  220. data/data/config/_id_items.yaml +24 -0
  221. data/data/config/_id_params.yaml +58 -0
  222. data/data/config/_interfaces.yaml +206 -0
  223. data/data/config/_items.yaml +20 -0
  224. data/data/config/_params.yaml +58 -0
  225. data/data/config/cmd_tlm_server.yaml +110 -0
  226. data/data/config/command.yaml +38 -0
  227. data/data/config/command_modifiers.yaml +127 -0
  228. data/data/config/command_telemetry.yaml +3 -0
  229. data/data/config/data_viewer.yaml +43 -0
  230. data/data/config/handbook_creator.yaml +23 -0
  231. data/data/config/housekeeping_params.yaml +71 -0
  232. data/data/config/interface_modifiers.yaml +44 -0
  233. data/data/config/item_modifiers.yaml +172 -0
  234. data/data/config/launcher.yaml +117 -0
  235. data/data/config/limits_monitor.yaml +53 -0
  236. data/data/config/linegraph_params.yaml +30 -0
  237. data/data/config/linegraph_plot.yaml +106 -0
  238. data/data/config/page_modifiers.yaml +128 -0
  239. data/data/config/param_item_modifiers.yaml +41 -0
  240. data/data/config/parameter_modifiers.yaml +144 -0
  241. data/data/config/protocols.yaml +257 -0
  242. data/data/config/screen.yaml +151 -0
  243. data/data/config/script_runner.yaml +15 -0
  244. data/data/config/system.yaml +153 -0
  245. data/data/config/table_manager.yaml +76 -0
  246. data/data/config/table_parameter_modifiers.yaml +9 -0
  247. data/data/config/target.yaml +71 -0
  248. data/data/config/telemetry.yaml +73 -0
  249. data/data/config/telemetry_modifiers.yaml +129 -0
  250. data/data/config/test_runner.yaml +118 -0
  251. data/data/config/tlm_extractor.yaml +109 -0
  252. data/data/config/tlm_grapher.yaml +78 -0
  253. data/data/config/tlm_viewer.yaml +107 -0
  254. data/data/config/unknown.yaml +3 -0
  255. data/data/config/widgets.yaml +1339 -0
  256. data/data/config/xy_params.yaml +50 -0
  257. data/data/config/xy_plot.yaml +12 -0
  258. data/data/config_editor.png +0 -0
  259. data/data/copy.png +0 -0
  260. data/data/cosmos.xcf +0 -0
  261. data/data/cosmos_word.gif +0 -0
  262. data/data/crc.txt +350 -0
  263. data/data/critical.wav +0 -0
  264. data/data/cts.png +0 -0
  265. data/data/cut.png +0 -0
  266. data/data/data_viewer.png +0 -0
  267. data/data/delete.png +0 -0
  268. data/data/delete_database.png +0 -0
  269. data/data/delete_plot.png +0 -0
  270. data/data/delete_tab.png +0 -0
  271. data/data/diamond.STL +58 -0
  272. data/data/disconnected.png +0 -0
  273. data/data/edit.png +0 -0
  274. data/data/edit_database.png +0 -0
  275. data/data/edit_plot.png +0 -0
  276. data/data/edit_tab.png +0 -0
  277. data/data/end-26.png +0 -0
  278. data/data/fast_forward-26.png +0 -0
  279. data/data/file.png +0 -0
  280. data/data/handbook_creator.png +0 -0
  281. data/data/help.png +0 -0
  282. data/data/html-32.png +0 -0
  283. data/data/information.wav +0 -0
  284. data/data/input.wav +0 -0
  285. data/data/launcher.png +0 -0
  286. data/data/legal.gif +0 -0
  287. data/data/legal.txt +8 -0
  288. data/data/limits_monitor.png +0 -0
  289. data/data/message.wav +0 -0
  290. data/data/moonmap1k.gif +0 -0
  291. data/data/multi.png +0 -0
  292. data/data/open.png +0 -0
  293. data/data/open_in_browser-32.png +0 -0
  294. data/data/opengl_builder.png +0 -0
  295. data/data/packet_viewer.png +0 -0
  296. data/data/pdf-32.png +0 -0
  297. data/data/play-26.png +0 -0
  298. data/data/question.wav +0 -0
  299. data/data/redo.png +0 -0
  300. data/data/replay.png +0 -0
  301. data/data/reverse-play-26.png +0 -0
  302. data/data/rewind-26.png +0 -0
  303. data/data/running.png +0 -0
  304. data/data/save.png +0 -0
  305. data/data/save_as.png +0 -0
  306. data/data/screenshot.png +0 -0
  307. data/data/script_runner.png +0 -0
  308. data/data/search-14.png +0 -0
  309. data/data/search.png +0 -0
  310. data/data/send_file.png +0 -0
  311. data/data/skip_to_start-26.png +0 -0
  312. data/data/spinner.gif +0 -0
  313. data/data/splash.gif +0 -0
  314. data/data/stop-26.png +0 -0
  315. data/data/table_manager.png +0 -0
  316. data/data/test_runner.png +0 -0
  317. data/data/tlm_extractor.png +0 -0
  318. data/data/tlm_grapher.png +0 -0
  319. data/data/tlm_viewer.png +0 -0
  320. data/data/undo.png +0 -0
  321. data/data/warning.wav +0 -0
  322. data/demo/Gemfile +10 -0
  323. data/demo/Launcher +16 -0
  324. data/demo/Launcher.bat +9 -0
  325. data/demo/Rakefile +77 -0
  326. data/demo/config/data/attitude.bin +0 -0
  327. data/demo/config/data/crc.txt +253 -0
  328. data/demo/config/data/diamond.STL +58 -0
  329. data/demo/config/data/groundoff.gif +0 -0
  330. data/demo/config/data/groundon.gif +0 -0
  331. data/demo/config/data/hselectoff.gif +0 -0
  332. data/demo/config/data/hselecton.gif +0 -0
  333. data/demo/config/data/hswitchoff.gif +0 -0
  334. data/demo/config/data/hswitchon.gif +0 -0
  335. data/demo/config/data/meta_init.txt +1 -0
  336. data/demo/config/data/position.bin +0 -0
  337. data/demo/config/data/poweroff.gif +0 -0
  338. data/demo/config/data/poweron.gif +0 -0
  339. data/demo/config/data/satellite.gif +0 -0
  340. data/demo/config/data/tada.wav +0 -0
  341. data/demo/config/data/vswitchoff.gif +0 -0
  342. data/demo/config/data/vswitchon.gif +0 -0
  343. data/demo/config/system/system.txt +47 -0
  344. data/demo/config/system/system2.txt +43 -0
  345. data/demo/config/targets/EXAMPLE/cmd_tlm/example_cmds.txt +2 -0
  346. data/demo/config/targets/EXAMPLE/cmd_tlm/example_tlm.txt +5 -0
  347. data/demo/config/targets/EXAMPLE/cmd_tlm_server.txt +6 -0
  348. data/demo/config/targets/EXAMPLE/lib/example_interface.rb +18 -0
  349. data/demo/config/targets/EXAMPLE/target.txt +9 -0
  350. data/demo/config/targets/INST/cmd_tlm/_ccsds_cmd.txt +9 -0
  351. data/demo/config/targets/INST/cmd_tlm/_ccsds_tlm.txt +19 -0
  352. data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +57 -0
  353. data/demo/config/targets/INST/cmd_tlm/inst_tlm.txt +164 -0
  354. data/demo/config/targets/INST/cmd_tlm_server.txt +5 -0
  355. data/demo/config/targets/INST/doc/README.txt +1 -0
  356. data/demo/config/targets/INST/lib/example_limits_response.rb +30 -0
  357. data/demo/config/targets/INST/lib/inst_dump_component.rb +34 -0
  358. data/demo/config/targets/INST/lib/sim_inst.rb +321 -0
  359. data/demo/config/targets/INST/procedures/checks.rb +11 -0
  360. data/demo/config/targets/INST/procedures/collect.rb +18 -0
  361. data/demo/config/targets/INST/procedures/disconnect.rb +29 -0
  362. data/demo/config/targets/INST/procedures/utilities/clear.rb +7 -0
  363. data/demo/config/targets/INST/procedures/utilities/collect.rb +14 -0
  364. data/demo/config/targets/INST/screens/_footer.txt +4 -0
  365. data/demo/config/targets/INST/screens/adcs.txt +70 -0
  366. data/demo/config/targets/INST/screens/array.txt +15 -0
  367. data/demo/config/targets/INST/screens/block.txt +8 -0
  368. data/demo/config/targets/INST/screens/commanding.txt +37 -0
  369. data/demo/config/targets/INST/screens/graphs.txt +14 -0
  370. data/demo/config/targets/INST/screens/ground.txt +25 -0
  371. data/demo/config/targets/INST/screens/hs.txt +42 -0
  372. data/demo/config/targets/INST/screens/latest.txt +23 -0
  373. data/demo/config/targets/INST/screens/limits.txt +43 -0
  374. data/demo/config/targets/INST/screens/other.txt +24 -0
  375. data/demo/config/targets/INST/screens/spacing_box.txt +44 -0
  376. data/demo/config/targets/INST/screens/spacing_grid.txt +78 -0
  377. data/demo/config/targets/INST/screens/tabs.txt +68 -0
  378. data/demo/config/targets/INST/sequences/sequence.tsv +3 -0
  379. data/demo/config/targets/INST/tables/EventAction.csv +9 -0
  380. data/demo/config/targets/INST/tables/EventAction.dat +0 -0
  381. data/demo/config/targets/INST/tables/McConfigTable.csv +20 -0
  382. data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
  383. data/demo/config/targets/INST/target.txt +37 -0
  384. data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +2 -0
  385. data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +2 -0
  386. data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +6 -0
  387. data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +38 -0
  388. data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +11 -0
  389. data/demo/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  390. data/demo/config/targets/SYSTEM/cmd_tlm/override.txt +29 -0
  391. data/demo/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +41 -0
  392. data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  393. data/demo/config/targets/SYSTEM/cmd_tlm_server.txt +6 -0
  394. data/demo/config/targets/SYSTEM/lib/limits_groups.rb +39 -0
  395. data/demo/config/targets/SYSTEM/screens/status.txt +12 -0
  396. data/demo/config/targets/SYSTEM/target.txt +12 -0
  397. data/demo/config/targets/TEMPLATED/cmd_tlm/templated_cmds.txt +13 -0
  398. data/demo/config/targets/TEMPLATED/cmd_tlm/templated_tlm.txt +3 -0
  399. data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +6 -0
  400. data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +59 -0
  401. data/demo/config/targets/TEMPLATED/target.txt +8 -0
  402. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +49 -0
  403. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +42 -0
  404. data/demo/config/tools/data_viewer/data_viewer.txt +20 -0
  405. data/demo/config/tools/example_application.css +58 -0
  406. data/demo/config/tools/handbook_creator/default_toc.xsl +59 -0
  407. data/demo/config/tools/handbook_creator/handbook_creator.txt +66 -0
  408. data/demo/config/tools/handbook_creator/templates/command_packets.html.erb +88 -0
  409. data/demo/config/tools/handbook_creator/templates/command_toc.html.erb +38 -0
  410. data/demo/config/tools/handbook_creator/templates/footer.html.erb +9 -0
  411. data/demo/config/tools/handbook_creator/templates/header.html.erb +25 -0
  412. data/demo/config/tools/handbook_creator/templates/limits_groups.html.erb +13 -0
  413. data/demo/config/tools/handbook_creator/templates/nav.html.erb +27 -0
  414. data/demo/config/tools/handbook_creator/templates/overview.html.erb +1 -0
  415. data/demo/config/tools/handbook_creator/templates/pdf_cover.html.erb +23 -0
  416. data/demo/config/tools/handbook_creator/templates/pdf_footer.html.erb +33 -0
  417. data/demo/config/tools/handbook_creator/templates/pdf_header.html.erb +41 -0
  418. data/demo/config/tools/handbook_creator/templates/telemetry_packets.html.erb +82 -0
  419. data/demo/config/tools/handbook_creator/templates/telemetry_toc.html.erb +38 -0
  420. data/demo/config/tools/handbook_creator/templates/title.html.erb +1 -0
  421. data/demo/config/tools/launcher/launcher.css +7 -0
  422. data/demo/config/tools/launcher/launcher.txt +48 -0
  423. data/demo/config/tools/launcher/launcher2.css +10 -0
  424. data/demo/config/tools/launcher/launcher2.txt +48 -0
  425. data/demo/config/tools/launcher/launcher_mini.txt +45 -0
  426. data/demo/config/tools/limits_monitor/README.txt +1 -0
  427. data/demo/config/tools/opengl_builder/README.txt +1 -0
  428. data/demo/config/tools/script_runner/script_runner.txt +3 -0
  429. data/demo/config/tools/table_manager/ConfigTables_def.txt +8 -0
  430. data/demo/config/tools/table_manager/ExampleTableDefinition.txt +24 -0
  431. data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +37 -0
  432. data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +34 -0
  433. data/demo/config/tools/table_manager/PPSSelectionTable_def.txt +9 -0
  434. data/demo/config/tools/table_manager/TLMMonitoringTable_def.txt +31 -0
  435. data/demo/config/tools/test_runner/test_runner.css +45 -0
  436. data/demo/config/tools/test_runner/test_runner.txt +17 -0
  437. data/demo/config/tools/tlm_extractor/_adcs_time.txt +2 -0
  438. data/demo/config/tools/tlm_extractor/tlm_extractor.txt +13 -0
  439. data/demo/config/tools/tlm_extractor/tlm_extractor2.txt +2 -0
  440. data/demo/config/tools/tlm_extractor/tlm_extractor3.txt +2 -0
  441. data/demo/config/tools/tlm_extractor/tlm_extractor4.txt +2 -0
  442. data/demo/config/tools/tlm_grapher/README.txt +1 -0
  443. data/demo/config/tools/tlm_viewer/tlm_viewer.txt +41 -0
  444. data/demo/lib/example_background_task.rb +55 -0
  445. data/demo/lib/example_target.rb +103 -0
  446. data/demo/lib/scpi_target.rb +68 -0
  447. data/demo/lib/user_version.rb +3 -0
  448. data/demo/procedures/cosmos_api_test.rb +310 -0
  449. data/demo/procedures/example_test.rb +192 -0
  450. data/demo/procedures/plot_test.rb +8 -0
  451. data/demo/procedures/run_example_test.rb +3 -0
  452. data/demo/procedures/test.rb +51 -0
  453. data/demo/tools/CmdExtractor +16 -0
  454. data/demo/tools/CmdExtractor.bat +9 -0
  455. data/demo/tools/CmdSender +16 -0
  456. data/demo/tools/CmdSender.bat +9 -0
  457. data/demo/tools/CmdSequence +16 -0
  458. data/demo/tools/CmdSequence.bat +9 -0
  459. data/demo/tools/CmdTlmServer +16 -0
  460. data/demo/tools/CmdTlmServer.bat +9 -0
  461. data/demo/tools/ConfigEditor +16 -0
  462. data/demo/tools/ConfigEditor.bat +9 -0
  463. data/demo/tools/DataViewer +16 -0
  464. data/demo/tools/DataViewer.bat +9 -0
  465. data/demo/tools/ExampleTarget +16 -0
  466. data/demo/tools/ExampleTarget.bat +9 -0
  467. data/demo/tools/HandbookCreator +16 -0
  468. data/demo/tools/HandbookCreator.bat +9 -0
  469. data/demo/tools/Launcher +16 -0
  470. data/demo/tools/Launcher.bat +9 -0
  471. data/demo/tools/LimitsMonitor +16 -0
  472. data/demo/tools/LimitsMonitor.bat +9 -0
  473. data/demo/tools/OpenGLBuilder +16 -0
  474. data/demo/tools/OpenGLBuilder.bat +9 -0
  475. data/demo/tools/PacketViewer +16 -0
  476. data/demo/tools/PacketViewer.bat +9 -0
  477. data/demo/tools/Replay +16 -0
  478. data/demo/tools/Replay.bat +9 -0
  479. data/demo/tools/ScpiTarget +16 -0
  480. data/demo/tools/ScpiTarget.bat +9 -0
  481. data/demo/tools/ScriptRunner +16 -0
  482. data/demo/tools/ScriptRunner.bat +9 -0
  483. data/demo/tools/TableManager +16 -0
  484. data/demo/tools/TableManager.bat +9 -0
  485. data/demo/tools/TestRunner +16 -0
  486. data/demo/tools/TestRunner.bat +9 -0
  487. data/demo/tools/TlmExtractor +16 -0
  488. data/demo/tools/TlmExtractor.bat +9 -0
  489. data/demo/tools/TlmGrapher +16 -0
  490. data/demo/tools/TlmGrapher.bat +9 -0
  491. data/demo/tools/TlmViewer +16 -0
  492. data/demo/tools/TlmViewer.bat +9 -0
  493. data/demo/tools/ToolLaunch.bat +72 -0
  494. data/demo/tools/mac/CmdExtractor.app/Contents/Info.plist +38 -0
  495. data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +16 -0
  496. data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +10 -0
  497. data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/tool_launch.rb +38 -0
  498. data/demo/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
  499. data/demo/tools/mac/CmdSender.app/Contents/Info.plist +38 -0
  500. data/demo/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +16 -0
  501. data/demo/tools/mac/CmdSender.app/Contents/MacOS/main.sh +10 -0
  502. data/demo/tools/mac/CmdSender.app/Contents/MacOS/tool_launch.rb +38 -0
  503. data/demo/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
  504. data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  505. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  506. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  507. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  508. data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  509. data/demo/tools/mac/CmdTlmServer.app/Contents/Info.plist +38 -0
  510. data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +16 -0
  511. data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +10 -0
  512. data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/tool_launch.rb +38 -0
  513. data/demo/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
  514. data/demo/tools/mac/DataViewer.app/Contents/Info.plist +38 -0
  515. data/demo/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +16 -0
  516. data/demo/tools/mac/DataViewer.app/Contents/MacOS/main.sh +10 -0
  517. data/demo/tools/mac/DataViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  518. data/demo/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
  519. data/demo/tools/mac/HandbookCreator.app/Contents/Info.plist +38 -0
  520. data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +16 -0
  521. data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +10 -0
  522. data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/tool_launch.rb +38 -0
  523. data/demo/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
  524. data/demo/tools/mac/Launcher.app/Contents/Info.plist +38 -0
  525. data/demo/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +16 -0
  526. data/demo/tools/mac/Launcher.app/Contents/MacOS/main.sh +10 -0
  527. data/demo/tools/mac/Launcher.app/Contents/MacOS/tool_launch.rb +38 -0
  528. data/demo/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
  529. data/demo/tools/mac/LimitsMonitor.app/Contents/Info.plist +38 -0
  530. data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +16 -0
  531. data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +10 -0
  532. data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/tool_launch.rb +38 -0
  533. data/demo/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
  534. data/demo/tools/mac/OpenGLBuilder.app/Contents/Info.plist +38 -0
  535. data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +16 -0
  536. data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +10 -0
  537. data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/tool_launch.rb +38 -0
  538. data/demo/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
  539. data/demo/tools/mac/PacketViewer.app/Contents/Info.plist +38 -0
  540. data/demo/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +16 -0
  541. data/demo/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +10 -0
  542. data/demo/tools/mac/PacketViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  543. data/demo/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
  544. data/demo/tools/mac/Replay.app/Contents/Info.plist +38 -0
  545. data/demo/tools/mac/Replay.app/Contents/MacOS/Replay.rb +16 -0
  546. data/demo/tools/mac/Replay.app/Contents/MacOS/main.sh +10 -0
  547. data/demo/tools/mac/Replay.app/Contents/MacOS/tool_launch.rb +38 -0
  548. data/demo/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
  549. data/demo/tools/mac/ScriptRunner.app/Contents/Info.plist +38 -0
  550. data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +16 -0
  551. data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +10 -0
  552. data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/tool_launch.rb +38 -0
  553. data/demo/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
  554. data/demo/tools/mac/TableManager.app/Contents/Info.plist +38 -0
  555. data/demo/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +16 -0
  556. data/demo/tools/mac/TableManager.app/Contents/MacOS/main.sh +10 -0
  557. data/demo/tools/mac/TableManager.app/Contents/MacOS/tool_launch.rb +38 -0
  558. data/demo/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
  559. data/demo/tools/mac/TestRunner.app/Contents/Info.plist +38 -0
  560. data/demo/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +16 -0
  561. data/demo/tools/mac/TestRunner.app/Contents/MacOS/main.sh +10 -0
  562. data/demo/tools/mac/TestRunner.app/Contents/MacOS/tool_launch.rb +38 -0
  563. data/demo/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
  564. data/demo/tools/mac/TlmExtractor.app/Contents/Info.plist +38 -0
  565. data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +16 -0
  566. data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +10 -0
  567. data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/tool_launch.rb +38 -0
  568. data/demo/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
  569. data/demo/tools/mac/TlmGrapher.app/Contents/Info.plist +38 -0
  570. data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +16 -0
  571. data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +10 -0
  572. data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/tool_launch.rb +38 -0
  573. data/demo/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
  574. data/demo/tools/mac/TlmViewer.app/Contents/Info.plist +38 -0
  575. data/demo/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +16 -0
  576. data/demo/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +10 -0
  577. data/demo/tools/mac/TlmViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  578. data/demo/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
  579. data/demo/tools/tool_launch.rb +38 -0
  580. data/ext/cosmos/ext/array/array.c +111 -0
  581. data/ext/cosmos/ext/array/extconf.rb +13 -0
  582. data/ext/cosmos/ext/buffered_file/buffered_file.c +167 -0
  583. data/ext/cosmos/ext/buffered_file/extconf.rb +13 -0
  584. data/ext/cosmos/ext/config_parser/config_parser.c +237 -0
  585. data/ext/cosmos/ext/config_parser/extconf.rb +13 -0
  586. data/ext/cosmos/ext/cosmos_io/cosmos_io.c +117 -0
  587. data/ext/cosmos/ext/cosmos_io/extconf.rb +13 -0
  588. data/ext/cosmos/ext/crc/crc.c +341 -0
  589. data/ext/cosmos/ext/crc/extconf.rb +13 -0
  590. data/ext/cosmos/ext/line_graph/extconf.rb +13 -0
  591. data/ext/cosmos/ext/line_graph/line_graph.c +501 -0
  592. data/ext/cosmos/ext/low_fragmentation_array/extconf.rb +13 -0
  593. data/ext/cosmos/ext/low_fragmentation_array/low_fragmentation_array.c +265 -0
  594. data/ext/cosmos/ext/packet/extconf.rb +13 -0
  595. data/ext/cosmos/ext/packet/packet.c +350 -0
  596. data/ext/cosmos/ext/platform/extconf.rb +13 -0
  597. data/ext/cosmos/ext/platform/platform.c +101 -0
  598. data/ext/cosmos/ext/polynomial_conversion/extconf.rb +13 -0
  599. data/ext/cosmos/ext/polynomial_conversion/polynomial_conversion.c +73 -0
  600. data/ext/cosmos/ext/string/extconf.rb +13 -0
  601. data/ext/cosmos/ext/string/string.c +49 -0
  602. data/ext/cosmos/ext/structure/structure.c +1433 -0
  603. data/ext/cosmos/ext/tabbed_plots_config/extconf.rb +13 -0
  604. data/ext/cosmos/ext/tabbed_plots_config/tabbed_plots_config.c +51 -0
  605. data/ext/cosmos/ext/telemetry/extconf.rb +13 -0
  606. data/ext/cosmos/ext/telemetry/telemetry.c +307 -0
  607. data/ext/mkrf_conf.rb +40 -0
  608. data/install/Gemfile +10 -0
  609. data/install/Launcher +16 -0
  610. data/install/Launcher.bat +9 -0
  611. data/install/Rakefile +77 -0
  612. data/install/config/data/README.txt +1 -0
  613. data/install/config/data/crc.txt +155 -0
  614. data/install/config/system/system.txt +39 -0
  615. data/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +14 -0
  616. data/install/config/targets/SYSTEM/target.txt +12 -0
  617. data/install/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -0
  618. data/install/config/tools/data_viewer/data_viewer.txt +4 -0
  619. data/install/config/tools/handbook_creator/default_toc.xsl +59 -0
  620. data/install/config/tools/handbook_creator/handbook_creator.txt +49 -0
  621. data/install/config/tools/handbook_creator/templates/command_packets.html.erb +86 -0
  622. data/install/config/tools/handbook_creator/templates/command_toc.html.erb +38 -0
  623. data/install/config/tools/handbook_creator/templates/footer.html.erb +9 -0
  624. data/install/config/tools/handbook_creator/templates/header.html.erb +25 -0
  625. data/install/config/tools/handbook_creator/templates/limits_groups.html.erb +13 -0
  626. data/install/config/tools/handbook_creator/templates/nav.html.erb +27 -0
  627. data/install/config/tools/handbook_creator/templates/overview.html.erb +1 -0
  628. data/install/config/tools/handbook_creator/templates/pdf_cover.html.erb +23 -0
  629. data/install/config/tools/handbook_creator/templates/pdf_footer.html.erb +33 -0
  630. data/install/config/tools/handbook_creator/templates/pdf_header.html.erb +41 -0
  631. data/install/config/tools/handbook_creator/templates/telemetry_packets.html.erb +80 -0
  632. data/install/config/tools/handbook_creator/templates/telemetry_toc.html.erb +38 -0
  633. data/install/config/tools/handbook_creator/templates/title.html.erb +1 -0
  634. data/install/config/tools/launcher/launcher.txt +40 -0
  635. data/install/config/tools/limits_monitor/README.txt +1 -0
  636. data/install/config/tools/opengl_builder/README.txt +1 -0
  637. data/install/config/tools/script_runner/script_runner.txt +3 -0
  638. data/install/config/tools/table_manager/README.txt +1 -0
  639. data/install/config/tools/test_runner/test_runner.txt +8 -0
  640. data/install/config/tools/tlm_extractor/README.txt +1 -0
  641. data/install/config/tools/tlm_grapher/README.txt +1 -0
  642. data/install/config/tools/tlm_viewer/tlm_viewer.txt +5 -0
  643. data/install/lib/user_version.rb +3 -0
  644. data/install/procedures/README.txt +1 -0
  645. data/install/tools/CmdExtractor +16 -0
  646. data/install/tools/CmdExtractor.bat +9 -0
  647. data/install/tools/CmdSender +16 -0
  648. data/install/tools/CmdSender.bat +9 -0
  649. data/install/tools/CmdSequence +16 -0
  650. data/install/tools/CmdSequence.bat +9 -0
  651. data/install/tools/CmdTlmServer +16 -0
  652. data/install/tools/CmdTlmServer.bat +9 -0
  653. data/install/tools/ConfigEditor +16 -0
  654. data/install/tools/ConfigEditor.bat +9 -0
  655. data/install/tools/DataViewer +16 -0
  656. data/install/tools/DataViewer.bat +9 -0
  657. data/install/tools/HandbookCreator +16 -0
  658. data/install/tools/HandbookCreator.bat +9 -0
  659. data/install/tools/Launcher +16 -0
  660. data/install/tools/Launcher.bat +9 -0
  661. data/install/tools/LimitsMonitor +16 -0
  662. data/install/tools/LimitsMonitor.bat +9 -0
  663. data/install/tools/OpenGLBuilder +16 -0
  664. data/install/tools/OpenGLBuilder.bat +9 -0
  665. data/install/tools/PacketViewer +16 -0
  666. data/install/tools/PacketViewer.bat +9 -0
  667. data/install/tools/Replay +16 -0
  668. data/install/tools/Replay.bat +9 -0
  669. data/install/tools/ScriptRunner +16 -0
  670. data/install/tools/ScriptRunner.bat +9 -0
  671. data/install/tools/TableManager +16 -0
  672. data/install/tools/TableManager.bat +9 -0
  673. data/install/tools/TestRunner +16 -0
  674. data/install/tools/TestRunner.bat +9 -0
  675. data/install/tools/TlmExtractor +16 -0
  676. data/install/tools/TlmExtractor.bat +9 -0
  677. data/install/tools/TlmGrapher +16 -0
  678. data/install/tools/TlmGrapher.bat +9 -0
  679. data/install/tools/TlmViewer +16 -0
  680. data/install/tools/TlmViewer.bat +9 -0
  681. data/install/tools/ToolLaunch.bat +72 -0
  682. data/install/tools/mac/CmdExtractor.app/Contents/Info.plist +38 -0
  683. data/install/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +16 -0
  684. data/install/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +10 -0
  685. data/install/tools/mac/CmdExtractor.app/Contents/MacOS/tool_launch.rb +38 -0
  686. data/install/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
  687. data/install/tools/mac/CmdSender.app/Contents/Info.plist +38 -0
  688. data/install/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +16 -0
  689. data/install/tools/mac/CmdSender.app/Contents/MacOS/main.sh +10 -0
  690. data/install/tools/mac/CmdSender.app/Contents/MacOS/tool_launch.rb +38 -0
  691. data/install/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
  692. data/install/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  693. data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  694. data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  695. data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  696. data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  697. data/install/tools/mac/CmdTlmServer.app/Contents/Info.plist +38 -0
  698. data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +16 -0
  699. data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +10 -0
  700. data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/tool_launch.rb +38 -0
  701. data/install/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
  702. data/install/tools/mac/DataViewer.app/Contents/Info.plist +38 -0
  703. data/install/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +16 -0
  704. data/install/tools/mac/DataViewer.app/Contents/MacOS/main.sh +10 -0
  705. data/install/tools/mac/DataViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  706. data/install/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
  707. data/install/tools/mac/HandbookCreator.app/Contents/Info.plist +38 -0
  708. data/install/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +16 -0
  709. data/install/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +10 -0
  710. data/install/tools/mac/HandbookCreator.app/Contents/MacOS/tool_launch.rb +38 -0
  711. data/install/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
  712. data/install/tools/mac/Launcher.app/Contents/Info.plist +38 -0
  713. data/install/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +16 -0
  714. data/install/tools/mac/Launcher.app/Contents/MacOS/main.sh +10 -0
  715. data/install/tools/mac/Launcher.app/Contents/MacOS/tool_launch.rb +38 -0
  716. data/install/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
  717. data/install/tools/mac/LimitsMonitor.app/Contents/Info.plist +38 -0
  718. data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +16 -0
  719. data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +10 -0
  720. data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/tool_launch.rb +38 -0
  721. data/install/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
  722. data/install/tools/mac/OpenGLBuilder.app/Contents/Info.plist +38 -0
  723. data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +16 -0
  724. data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +10 -0
  725. data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/tool_launch.rb +38 -0
  726. data/install/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
  727. data/install/tools/mac/PacketViewer.app/Contents/Info.plist +38 -0
  728. data/install/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +16 -0
  729. data/install/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +10 -0
  730. data/install/tools/mac/PacketViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  731. data/install/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
  732. data/install/tools/mac/Replay.app/Contents/Info.plist +38 -0
  733. data/install/tools/mac/Replay.app/Contents/MacOS/Replay.rb +16 -0
  734. data/install/tools/mac/Replay.app/Contents/MacOS/main.sh +10 -0
  735. data/install/tools/mac/Replay.app/Contents/MacOS/tool_launch.rb +38 -0
  736. data/install/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
  737. data/install/tools/mac/ScriptRunner.app/Contents/Info.plist +38 -0
  738. data/install/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +16 -0
  739. data/install/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +10 -0
  740. data/install/tools/mac/ScriptRunner.app/Contents/MacOS/tool_launch.rb +38 -0
  741. data/install/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
  742. data/install/tools/mac/TableManager.app/Contents/Info.plist +38 -0
  743. data/install/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +16 -0
  744. data/install/tools/mac/TableManager.app/Contents/MacOS/main.sh +10 -0
  745. data/install/tools/mac/TableManager.app/Contents/MacOS/tool_launch.rb +38 -0
  746. data/install/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
  747. data/install/tools/mac/TestRunner.app/Contents/Info.plist +38 -0
  748. data/install/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +16 -0
  749. data/install/tools/mac/TestRunner.app/Contents/MacOS/main.sh +10 -0
  750. data/install/tools/mac/TestRunner.app/Contents/MacOS/tool_launch.rb +38 -0
  751. data/install/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
  752. data/install/tools/mac/TlmExtractor.app/Contents/Info.plist +38 -0
  753. data/install/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +16 -0
  754. data/install/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +10 -0
  755. data/install/tools/mac/TlmExtractor.app/Contents/MacOS/tool_launch.rb +38 -0
  756. data/install/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
  757. data/install/tools/mac/TlmGrapher.app/Contents/Info.plist +38 -0
  758. data/install/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +16 -0
  759. data/install/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +10 -0
  760. data/install/tools/mac/TlmGrapher.app/Contents/MacOS/tool_launch.rb +38 -0
  761. data/install/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
  762. data/install/tools/mac/TlmViewer.app/Contents/Info.plist +38 -0
  763. data/install/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +16 -0
  764. data/install/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +10 -0
  765. data/install/tools/mac/TlmViewer.app/Contents/MacOS/tool_launch.rb +38 -0
  766. data/install/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
  767. data/install/tools/tool_launch.rb +38 -0
  768. data/lib/cosmos.rb +63 -0
  769. data/lib/cosmos/ccsds/ccsds_packet.rb +63 -0
  770. data/lib/cosmos/ccsds/ccsds_parser.rb +143 -0
  771. data/lib/cosmos/config/config_parser.rb +508 -0
  772. data/lib/cosmos/config/meta_config_parser.rb +57 -0
  773. data/lib/cosmos/conversions.rb +13 -0
  774. data/lib/cosmos/conversions/conversion.rb +49 -0
  775. data/lib/cosmos/conversions/generic_conversion.rb +67 -0
  776. data/lib/cosmos/conversions/new_packet_log_conversion.rb +52 -0
  777. data/lib/cosmos/conversions/polynomial_conversion.rb +79 -0
  778. data/lib/cosmos/conversions/processor_conversion.rb +56 -0
  779. data/lib/cosmos/conversions/received_count_conversion.rb +33 -0
  780. data/lib/cosmos/conversions/received_time_formatted_conversion.rb +37 -0
  781. data/lib/cosmos/conversions/received_time_seconds_conversion.rb +37 -0
  782. data/lib/cosmos/conversions/segmented_polynomial_conversion.rb +139 -0
  783. data/lib/cosmos/conversions/unix_time_conversion.rb +57 -0
  784. data/lib/cosmos/conversions/unix_time_formatted_conversion.rb +44 -0
  785. data/lib/cosmos/conversions/unix_time_seconds_conversion.rb +44 -0
  786. data/lib/cosmos/core_ext.rb +18 -0
  787. data/lib/cosmos/core_ext/array.rb +397 -0
  788. data/lib/cosmos/core_ext/class.rb +53 -0
  789. data/lib/cosmos/core_ext/cosmos_io.rb +45 -0
  790. data/lib/cosmos/core_ext/exception.rb +52 -0
  791. data/lib/cosmos/core_ext/file.rb +76 -0
  792. data/lib/cosmos/core_ext/hash.rb +28 -0
  793. data/lib/cosmos/core_ext/io.rb +93 -0
  794. data/lib/cosmos/core_ext/kernel.rb +33 -0
  795. data/lib/cosmos/core_ext/math.rb +119 -0
  796. data/lib/cosmos/core_ext/matrix.rb +149 -0
  797. data/lib/cosmos/core_ext/objectspace.rb +27 -0
  798. data/lib/cosmos/core_ext/range.rb +18 -0
  799. data/lib/cosmos/core_ext/socket.rb +32 -0
  800. data/lib/cosmos/core_ext/string.rb +351 -0
  801. data/lib/cosmos/core_ext/stringio.rb +24 -0
  802. data/lib/cosmos/core_ext/time.rb +481 -0
  803. data/lib/cosmos/ext/.keep +0 -0
  804. data/lib/cosmos/gui/choosers/combobox_chooser.rb +141 -0
  805. data/lib/cosmos/gui/choosers/file_chooser.rb +85 -0
  806. data/lib/cosmos/gui/choosers/float_chooser.rb +67 -0
  807. data/lib/cosmos/gui/choosers/integer_chooser.rb +69 -0
  808. data/lib/cosmos/gui/choosers/string_chooser.rb +35 -0
  809. data/lib/cosmos/gui/choosers/telemetry_chooser.rb +326 -0
  810. data/lib/cosmos/gui/choosers/value_chooser.rb +67 -0
  811. data/lib/cosmos/gui/dialogs/about_dialog.rb +166 -0
  812. data/lib/cosmos/gui/dialogs/calendar_dialog.rb +140 -0
  813. data/lib/cosmos/gui/dialogs/cmd_details_dialog.rb +51 -0
  814. data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +163 -0
  815. data/lib/cosmos/gui/dialogs/details_dialog.rb +190 -0
  816. data/lib/cosmos/gui/dialogs/exception_dialog.rb +106 -0
  817. data/lib/cosmos/gui/dialogs/exception_list_dialog.rb +60 -0
  818. data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +272 -0
  819. data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +143 -0
  820. data/lib/cosmos/gui/dialogs/legal_dialog.rb +183 -0
  821. data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +97 -0
  822. data/lib/cosmos/gui/dialogs/progress_dialog.rb +313 -0
  823. data/lib/cosmos/gui/dialogs/pry_dialog.rb +169 -0
  824. data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +51 -0
  825. data/lib/cosmos/gui/dialogs/select_dialog.rb +59 -0
  826. data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +156 -0
  827. data/lib/cosmos/gui/dialogs/splash.rb +145 -0
  828. data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +201 -0
  829. data/lib/cosmos/gui/dialogs/tlm_edit_dialog.rb +79 -0
  830. data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +114 -0
  831. data/lib/cosmos/gui/line_graph/line_graph.rb +482 -0
  832. data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +36 -0
  833. data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +521 -0
  834. data/lib/cosmos/gui/line_graph/line_graph_popups.rb +112 -0
  835. data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +452 -0
  836. data/lib/cosmos/gui/line_graph/line_graph_script.rb +81 -0
  837. data/lib/cosmos/gui/line_graph/lines.rb +304 -0
  838. data/lib/cosmos/gui/line_graph/overview_graph.rb +474 -0
  839. data/lib/cosmos/gui/opengl/earth_model.rb +25 -0
  840. data/lib/cosmos/gui/opengl/gl_bounds.rb +55 -0
  841. data/lib/cosmos/gui/opengl/gl_light.rb +38 -0
  842. data/lib/cosmos/gui/opengl/gl_material.rb +28 -0
  843. data/lib/cosmos/gui/opengl/gl_scene.rb +78 -0
  844. data/lib/cosmos/gui/opengl/gl_shape.rb +150 -0
  845. data/lib/cosmos/gui/opengl/gl_viewer.rb +712 -0
  846. data/lib/cosmos/gui/opengl/gl_viewport.rb +34 -0
  847. data/lib/cosmos/gui/opengl/moon_model.rb +25 -0
  848. data/lib/cosmos/gui/opengl/opengl.rb +8 -0
  849. data/lib/cosmos/gui/opengl/stl_reader.rb +210 -0
  850. data/lib/cosmos/gui/opengl/stl_shape.rb +127 -0
  851. data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +202 -0
  852. data/lib/cosmos/gui/qt.rb +841 -0
  853. data/lib/cosmos/gui/qt_tool.rb +489 -0
  854. data/lib/cosmos/gui/text/completion.rb +402 -0
  855. data/lib/cosmos/gui/text/completion_line_edit.rb +30 -0
  856. data/lib/cosmos/gui/text/completion_text_edit.rb +194 -0
  857. data/lib/cosmos/gui/text/ruby_editor.rb +463 -0
  858. data/lib/cosmos/gui/utilities/analyze_log.rb +153 -0
  859. data/lib/cosmos/gui/utilities/screenshot.rb +33 -0
  860. data/lib/cosmos/gui/utilities/script_module_gui.rb +364 -0
  861. data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +171 -0
  862. data/lib/cosmos/gui/widgets/packet_log_frame.rb +344 -0
  863. data/lib/cosmos/gui/widgets/realtime_button_bar.rb +98 -0
  864. data/lib/cosmos/interfaces.rb +21 -0
  865. data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +134 -0
  866. data/lib/cosmos/interfaces/interface.rb +449 -0
  867. data/lib/cosmos/interfaces/linc_interface.rb +459 -0
  868. data/lib/cosmos/interfaces/protocols/burst_protocol.rb +173 -0
  869. data/lib/cosmos/interfaces/protocols/crc_protocol.rb +141 -0
  870. data/lib/cosmos/interfaces/protocols/fixed_protocol.rb +114 -0
  871. data/lib/cosmos/interfaces/protocols/length_protocol.rb +147 -0
  872. data/lib/cosmos/interfaces/protocols/override_protocol.rb +52 -0
  873. data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +141 -0
  874. data/lib/cosmos/interfaces/protocols/protocol.rb +60 -0
  875. data/lib/cosmos/interfaces/protocols/template_protocol.rb +209 -0
  876. data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +81 -0
  877. data/lib/cosmos/interfaces/serial_interface.rb +81 -0
  878. data/lib/cosmos/interfaces/simulated_target_interface.rb +140 -0
  879. data/lib/cosmos/interfaces/stream_interface.rb +64 -0
  880. data/lib/cosmos/interfaces/tcpip_client_interface.rb +60 -0
  881. data/lib/cosmos/interfaces/tcpip_server_interface.rb +625 -0
  882. data/lib/cosmos/interfaces/udp_interface.rb +141 -0
  883. data/lib/cosmos/io/buffered_file.rb +101 -0
  884. data/lib/cosmos/io/cosmos_snmp.rb +50 -0
  885. data/lib/cosmos/io/io_multiplexer.rb +71 -0
  886. data/lib/cosmos/io/json_drb.rb +386 -0
  887. data/lib/cosmos/io/json_drb_object.rb +201 -0
  888. data/lib/cosmos/io/json_rpc.rb +365 -0
  889. data/lib/cosmos/io/posix_serial_driver.rb +147 -0
  890. data/lib/cosmos/io/raw_logger.rb +170 -0
  891. data/lib/cosmos/io/raw_logger_pair.rb +71 -0
  892. data/lib/cosmos/io/serial_driver.rb +94 -0
  893. data/lib/cosmos/io/stderr.rb +36 -0
  894. data/lib/cosmos/io/stdout.rb +36 -0
  895. data/lib/cosmos/io/udp_sockets.rb +152 -0
  896. data/lib/cosmos/io/win32_serial_driver.rb +165 -0
  897. data/lib/cosmos/packet_logs.rb +6 -0
  898. data/lib/cosmos/packet_logs/ccsds_log_reader.rb +104 -0
  899. data/lib/cosmos/packet_logs/packet_log_reader.rb +461 -0
  900. data/lib/cosmos/packet_logs/packet_log_writer.rb +341 -0
  901. data/lib/cosmos/packet_logs/packet_log_writer_pair.rb +30 -0
  902. data/lib/cosmos/packets/binary_accessor.rb +1201 -0
  903. data/lib/cosmos/packets/commands.rb +313 -0
  904. data/lib/cosmos/packets/limits.rb +264 -0
  905. data/lib/cosmos/packets/limits_response.rb +42 -0
  906. data/lib/cosmos/packets/packet.rb +971 -0
  907. data/lib/cosmos/packets/packet_config.rb +1392 -0
  908. data/lib/cosmos/packets/packet_item.rb +576 -0
  909. data/lib/cosmos/packets/packet_item_limits.rb +140 -0
  910. data/lib/cosmos/packets/parsers/format_string_parser.rb +58 -0
  911. data/lib/cosmos/packets/parsers/limits_parser.rb +146 -0
  912. data/lib/cosmos/packets/parsers/limits_response_parser.rb +52 -0
  913. data/lib/cosmos/packets/parsers/macro_parser.rb +118 -0
  914. data/lib/cosmos/packets/parsers/packet_item_parser.rb +234 -0
  915. data/lib/cosmos/packets/parsers/packet_parser.rb +131 -0
  916. data/lib/cosmos/packets/parsers/processor_parser.rb +63 -0
  917. data/lib/cosmos/packets/parsers/state_parser.rb +116 -0
  918. data/lib/cosmos/packets/structure.rb +508 -0
  919. data/lib/cosmos/packets/structure_item.rb +292 -0
  920. data/lib/cosmos/packets/telemetry.rb +444 -0
  921. data/lib/cosmos/processors.rb +6 -0
  922. data/lib/cosmos/processors/new_packet_log_processor.rb +39 -0
  923. data/lib/cosmos/processors/processor.rb +76 -0
  924. data/lib/cosmos/processors/statistics_processor.rb +70 -0
  925. data/lib/cosmos/processors/watermark_processor.rb +49 -0
  926. data/lib/cosmos/script.rb +9 -0
  927. data/lib/cosmos/script/api_shared.rb +1000 -0
  928. data/lib/cosmos/script/cmd_tlm_server.rb +138 -0
  929. data/lib/cosmos/script/commands.rb +189 -0
  930. data/lib/cosmos/script/extract.rb +139 -0
  931. data/lib/cosmos/script/limits.rb +116 -0
  932. data/lib/cosmos/script/script.rb +76 -0
  933. data/lib/cosmos/script/scripting.rb +146 -0
  934. data/lib/cosmos/script/telemetry.rb +200 -0
  935. data/lib/cosmos/script/tools.rb +97 -0
  936. data/lib/cosmos/streams/serial_stream.rb +150 -0
  937. data/lib/cosmos/streams/stream.rb +54 -0
  938. data/lib/cosmos/streams/tcpip_client_stream.rb +113 -0
  939. data/lib/cosmos/streams/tcpip_socket_stream.rb +186 -0
  940. data/lib/cosmos/system.rb +4 -0
  941. data/lib/cosmos/system/system.rb +780 -0
  942. data/lib/cosmos/system/target.rb +228 -0
  943. data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +268 -0
  944. data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +78 -0
  945. data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +773 -0
  946. data/lib/cosmos/tools/cmd_sender/cmd_sender_text_edit.rb +70 -0
  947. data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +652 -0
  948. data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +510 -0
  949. data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +194 -0
  950. data/lib/cosmos/tools/cmd_tlm_server/api.rb +1314 -0
  951. data/lib/cosmos/tools/cmd_tlm_server/background_task.rb +54 -0
  952. data/lib/cosmos/tools/cmd_tlm_server/background_tasks.rb +77 -0
  953. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +537 -0
  954. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +274 -0
  955. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +480 -0
  956. data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +121 -0
  957. data/lib/cosmos/tools/cmd_tlm_server/connections.rb +175 -0
  958. data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +213 -0
  959. data/lib/cosmos/tools/cmd_tlm_server/gui/logging_tab.rb +176 -0
  960. data/lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb +157 -0
  961. data/lib/cosmos/tools/cmd_tlm_server/gui/status_tab.rb +255 -0
  962. data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +85 -0
  963. data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +274 -0
  964. data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +153 -0
  965. data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +121 -0
  966. data/lib/cosmos/tools/cmd_tlm_server/packet_logging.rb +161 -0
  967. data/lib/cosmos/tools/cmd_tlm_server/router_thread.rb +66 -0
  968. data/lib/cosmos/tools/cmd_tlm_server/routers.rb +134 -0
  969. data/lib/cosmos/tools/config_editor/config_editor.rb +720 -0
  970. data/lib/cosmos/tools/config_editor/config_editor_frame.rb +675 -0
  971. data/lib/cosmos/tools/data_viewer/data_viewer.rb +633 -0
  972. data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +120 -0
  973. data/lib/cosmos/tools/data_viewer/dump_component.rb +40 -0
  974. data/lib/cosmos/tools/handbook_creator/handbook_creator.rb +156 -0
  975. data/lib/cosmos/tools/handbook_creator/handbook_creator_config.rb +382 -0
  976. data/lib/cosmos/tools/launcher/launcher.rb +194 -0
  977. data/lib/cosmos/tools/launcher/launcher_config.rb +256 -0
  978. data/lib/cosmos/tools/launcher/launcher_multitool.rb +40 -0
  979. data/lib/cosmos/tools/launcher/launcher_tool.rb +116 -0
  980. data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +972 -0
  981. data/lib/cosmos/tools/opengl_builder/opengl_builder.rb +416 -0
  982. data/lib/cosmos/tools/opengl_builder/scene_config.rb +118 -0
  983. data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +616 -0
  984. data/lib/cosmos/tools/replay/replay.rb +517 -0
  985. data/lib/cosmos/tools/replay/replay_server.rb +91 -0
  986. data/lib/cosmos/tools/script_runner/script_audit.rb +147 -0
  987. data/lib/cosmos/tools/script_runner/script_runner.rb +979 -0
  988. data/lib/cosmos/tools/script_runner/script_runner_config.rb +40 -0
  989. data/lib/cosmos/tools/script_runner/script_runner_frame.rb +1838 -0
  990. data/lib/cosmos/tools/table_manager/table.rb +61 -0
  991. data/lib/cosmos/tools/table_manager/table_config.rb +189 -0
  992. data/lib/cosmos/tools/table_manager/table_item.rb +58 -0
  993. data/lib/cosmos/tools/table_manager/table_item_parser.rb +46 -0
  994. data/lib/cosmos/tools/table_manager/table_manager.rb +1152 -0
  995. data/lib/cosmos/tools/table_manager/table_manager_core.rb +321 -0
  996. data/lib/cosmos/tools/table_manager/table_parser.rb +75 -0
  997. data/lib/cosmos/tools/test_runner/results_writer.rb +283 -0
  998. data/lib/cosmos/tools/test_runner/test.rb +539 -0
  999. data/lib/cosmos/tools/test_runner/test_runner.rb +1271 -0
  1000. data/lib/cosmos/tools/test_runner/test_runner_chooser.rb +341 -0
  1001. data/lib/cosmos/tools/tlm_extractor/text_item_chooser.rb +60 -0
  1002. data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +1152 -0
  1003. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +441 -0
  1004. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +60 -0
  1005. data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +92 -0
  1006. data/lib/cosmos/tools/tlm_grapher/data_object_adders/singlexy_data_object_adder.rb +44 -0
  1007. data/lib/cosmos/tools/tlm_grapher/data_object_adders/xy_data_object_adder.rb +95 -0
  1008. data/lib/cosmos/tools/tlm_grapher/data_object_editors/data_object_editor.rb +61 -0
  1009. data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +222 -0
  1010. data/lib/cosmos/tools/tlm_grapher/data_object_editors/linegraph_data_object_editor.rb +141 -0
  1011. data/lib/cosmos/tools/tlm_grapher/data_object_editors/singlexy_data_object_editor.rb +30 -0
  1012. data/lib/cosmos/tools/tlm_grapher/data_object_editors/xy_data_object_editor.rb +174 -0
  1013. data/lib/cosmos/tools/tlm_grapher/data_objects/data_object.rb +193 -0
  1014. data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +422 -0
  1015. data/lib/cosmos/tools/tlm_grapher/data_objects/linegraph_data_object.rb +176 -0
  1016. data/lib/cosmos/tools/tlm_grapher/data_objects/singlexy_data_object.rb +25 -0
  1017. data/lib/cosmos/tools/tlm_grapher/data_objects/xy_data_object.rb +325 -0
  1018. data/lib/cosmos/tools/tlm_grapher/plot_editors/linegraph_plot_editor.rb +191 -0
  1019. data/lib/cosmos/tools/tlm_grapher/plot_editors/plot_editor.rb +28 -0
  1020. data/lib/cosmos/tools/tlm_grapher/plot_editors/singlexy_plot_editor.rb +30 -0
  1021. data/lib/cosmos/tools/tlm_grapher/plot_editors/xy_plot_editor.rb +59 -0
  1022. data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/linegraph_plot_gui_object.rb +173 -0
  1023. data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/singlexy_plot_gui_object.rb +27 -0
  1024. data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/xy_plot_gui_object.rb +74 -0
  1025. data/lib/cosmos/tools/tlm_grapher/plots/linegraph_plot.rb +209 -0
  1026. data/lib/cosmos/tools/tlm_grapher/plots/plot.rb +69 -0
  1027. data/lib/cosmos/tools/tlm_grapher/plots/singlexy_plot.rb +20 -0
  1028. data/lib/cosmos/tools/tlm_grapher/plots/xy_plot.rb +61 -0
  1029. data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +1291 -0
  1030. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +451 -0
  1031. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_data_object_editor.rb +107 -0
  1032. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_logfile_thread.rb +114 -0
  1033. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +101 -0
  1034. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +78 -0
  1035. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tab.rb +57 -0
  1036. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tool.rb +1004 -0
  1037. data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +103 -0
  1038. data/lib/cosmos/tools/tlm_viewer/screen.rb +502 -0
  1039. data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +571 -0
  1040. data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +293 -0
  1041. data/lib/cosmos/tools/tlm_viewer/widgets.rb +61 -0
  1042. data/lib/cosmos/tools/tlm_viewer/widgets/aging_widget.rb +110 -0
  1043. data/lib/cosmos/tools/tlm_viewer/widgets/array_widget.rb +66 -0
  1044. data/lib/cosmos/tools/tlm_viewer/widgets/block_widget.rb +57 -0
  1045. data/lib/cosmos/tools/tlm_viewer/widgets/button_widget.rb +39 -0
  1046. data/lib/cosmos/tools/tlm_viewer/widgets/canvas_widget.rb +62 -0
  1047. data/lib/cosmos/tools/tlm_viewer/widgets/canvasdot_widget.rb +79 -0
  1048. data/lib/cosmos/tools/tlm_viewer/widgets/canvasimage_widget.rb +41 -0
  1049. data/lib/cosmos/tools/tlm_viewer/widgets/canvasimagevalue_widget.rb +57 -0
  1050. data/lib/cosmos/tools/tlm_viewer/widgets/canvaslabel_widget.rb +37 -0
  1051. data/lib/cosmos/tools/tlm_viewer/widgets/canvaslabelvalue_widget.rb +56 -0
  1052. data/lib/cosmos/tools/tlm_viewer/widgets/canvasline_widget.rb +55 -0
  1053. data/lib/cosmos/tools/tlm_viewer/widgets/canvaslinevalue_widget.rb +66 -0
  1054. data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +125 -0
  1055. data/lib/cosmos/tools/tlm_viewer/widgets/checkbutton_widget.rb +38 -0
  1056. data/lib/cosmos/tools/tlm_viewer/widgets/combobox_widget.rb +30 -0
  1057. data/lib/cosmos/tools/tlm_viewer/widgets/formatfontvalue_widget.rb +36 -0
  1058. data/lib/cosmos/tools/tlm_viewer/widgets/formatvalue_widget.rb +35 -0
  1059. data/lib/cosmos/tools/tlm_viewer/widgets/horizontal_widget.rb +27 -0
  1060. data/lib/cosmos/tools/tlm_viewer/widgets/horizontalbox_widget.rb +31 -0
  1061. data/lib/cosmos/tools/tlm_viewer/widgets/horizontalline_widget.rb +26 -0
  1062. data/lib/cosmos/tools/tlm_viewer/widgets/label_widget.rb +29 -0
  1063. data/lib/cosmos/tools/tlm_viewer/widgets/labelformatvalue_widget.rb +39 -0
  1064. data/lib/cosmos/tools/tlm_viewer/widgets/labelprogressbar_widget.rb +38 -0
  1065. data/lib/cosmos/tools/tlm_viewer/widgets/labeltrendlimitsbar_widget.rb +38 -0
  1066. data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +57 -0
  1067. data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluedesc_widget.rb +42 -0
  1068. data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluelimitsbar_widget.rb +37 -0
  1069. data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluelimitscolumn_widget.rb +38 -0
  1070. data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluerangebar_widget.rb +37 -0
  1071. data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluerangecolumn_widget.rb +39 -0
  1072. data/lib/cosmos/tools/tlm_viewer/widgets/layout_widget.rb +34 -0
  1073. data/lib/cosmos/tools/tlm_viewer/widgets/limits_widget.rb +113 -0
  1074. data/lib/cosmos/tools/tlm_viewer/widgets/limitsbar_widget.rb +116 -0
  1075. data/lib/cosmos/tools/tlm_viewer/widgets/limitscolor_widget.rb +102 -0
  1076. data/lib/cosmos/tools/tlm_viewer/widgets/limitscolumn_widget.rb +116 -0
  1077. data/lib/cosmos/tools/tlm_viewer/widgets/linegraph_widget.rb +63 -0
  1078. data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +56 -0
  1079. data/lib/cosmos/tools/tlm_viewer/widgets/multi_widget.rb +116 -0
  1080. data/lib/cosmos/tools/tlm_viewer/widgets/progressbar_widget.rb +34 -0
  1081. data/lib/cosmos/tools/tlm_viewer/widgets/radiobutton_widget.rb +38 -0
  1082. data/lib/cosmos/tools/tlm_viewer/widgets/rangebar_widget.rb +65 -0
  1083. data/lib/cosmos/tools/tlm_viewer/widgets/rangecolumn_widget.rb +65 -0
  1084. data/lib/cosmos/tools/tlm_viewer/widgets/screenshotbutton_widget.rb +34 -0
  1085. data/lib/cosmos/tools/tlm_viewer/widgets/scrollwindow_widget.rb +35 -0
  1086. data/lib/cosmos/tools/tlm_viewer/widgets/sectionheader_widget.rb +33 -0
  1087. data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +55 -0
  1088. data/lib/cosmos/tools/tlm_viewer/widgets/tabbook_widget.rb +26 -0
  1089. data/lib/cosmos/tools/tlm_viewer/widgets/tabitem_widget.rb +28 -0
  1090. data/lib/cosmos/tools/tlm_viewer/widgets/textbox_widget.rb +47 -0
  1091. data/lib/cosmos/tools/tlm_viewer/widgets/textfield_widget.rb +26 -0
  1092. data/lib/cosmos/tools/tlm_viewer/widgets/timegraph_widget.rb +91 -0
  1093. data/lib/cosmos/tools/tlm_viewer/widgets/title_widget.rb +27 -0
  1094. data/lib/cosmos/tools/tlm_viewer/widgets/trendbar_widget.rb +130 -0
  1095. data/lib/cosmos/tools/tlm_viewer/widgets/trendlimitsbar_widget.rb +46 -0
  1096. data/lib/cosmos/tools/tlm_viewer/widgets/value_widget.rb +43 -0
  1097. data/lib/cosmos/tools/tlm_viewer/widgets/valuelimitsbar_widget.rb +37 -0
  1098. data/lib/cosmos/tools/tlm_viewer/widgets/valuelimitscolumn_widget.rb +37 -0
  1099. data/lib/cosmos/tools/tlm_viewer/widgets/valuerangebar_widget.rb +37 -0
  1100. data/lib/cosmos/tools/tlm_viewer/widgets/valuerangecolumn_widget.rb +37 -0
  1101. data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +36 -0
  1102. data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +38 -0
  1103. data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +257 -0
  1104. data/lib/cosmos/top_level.rb +778 -0
  1105. data/lib/cosmos/utilities.rb +11 -0
  1106. data/lib/cosmos/utilities/crc.rb +268 -0
  1107. data/lib/cosmos/utilities/csv.rb +137 -0
  1108. data/lib/cosmos/utilities/logger.rb +137 -0
  1109. data/lib/cosmos/utilities/low_fragmentation_array.rb +19 -0
  1110. data/lib/cosmos/utilities/message_log.rb +79 -0
  1111. data/lib/cosmos/utilities/quaternion.rb +258 -0
  1112. data/lib/cosmos/utilities/ruby_lex_utils.rb +313 -0
  1113. data/lib/cosmos/utilities/simulated_target.rb +100 -0
  1114. data/lib/cosmos/utilities/sleeper.rb +44 -0
  1115. data/lib/cosmos/version.rb +12 -0
  1116. data/lib/cosmos/win32/excel.rb +66 -0
  1117. data/lib/cosmos/win32/win32.rb +387 -0
  1118. data/lib/cosmos/win32/win32_main.rb +325 -0
  1119. data/roodi.yml +24 -0
  1120. data/run_gui_tests.bat +44 -0
  1121. data/spec/ccsds/ccsds_packet_spec.rb +67 -0
  1122. data/spec/ccsds/ccsds_parser_spec.rb +148 -0
  1123. data/spec/config/config_parser_spec.rb +353 -0
  1124. data/spec/conversions/conversion_spec.rb +31 -0
  1125. data/spec/conversions/generic_conversion_spec.rb +45 -0
  1126. data/spec/conversions/new_packet_log_conversion_spec.rb +39 -0
  1127. data/spec/conversions/polynomial_conversion_spec.rb +40 -0
  1128. data/spec/conversions/processor_conversion_spec.rb +45 -0
  1129. data/spec/conversions/received_count_conversion_spec.rb +43 -0
  1130. data/spec/conversions/received_time_formatted_conversion_spec.rb +49 -0
  1131. data/spec/conversions/received_time_seconds_conversion_spec.rb +50 -0
  1132. data/spec/conversions/segmented_polynomial_conversion_spec.rb +51 -0
  1133. data/spec/conversions/unix_time_formatted_conversion_spec.rb +74 -0
  1134. data/spec/conversions/unix_time_seconds_conversion_spec.rb +76 -0
  1135. data/spec/core_ext/array_spec.rb +247 -0
  1136. data/spec/core_ext/class_spec.rb +36 -0
  1137. data/spec/core_ext/cosmos_io_spec.rb +77 -0
  1138. data/spec/core_ext/exception_spec.rb +91 -0
  1139. data/spec/core_ext/file_spec.rb +72 -0
  1140. data/spec/core_ext/hash_spec.rb +24 -0
  1141. data/spec/core_ext/io_spec.rb +46 -0
  1142. data/spec/core_ext/kernel_spec.rb +54 -0
  1143. data/spec/core_ext/math_spec.rb +116 -0
  1144. data/spec/core_ext/matrix_spec.rb +127 -0
  1145. data/spec/core_ext/objectspace_spec.rb +32 -0
  1146. data/spec/core_ext/range_spec.rb +21 -0
  1147. data/spec/core_ext/socket_spec.rb +32 -0
  1148. data/spec/core_ext/string_spec.rb +239 -0
  1149. data/spec/core_ext/stringio_spec.rb +21 -0
  1150. data/spec/core_ext/time_spec.rb +220 -0
  1151. data/spec/gui/line_graph/line_clip_spec.rb +324 -0
  1152. data/spec/gui/qt_spec.rb +104 -0
  1153. data/spec/install/config/system/system.txt +27 -0
  1154. data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +30 -0
  1155. data/spec/install/config/targets/INST/cmd_tlm/inst_cmds.txt +111 -0
  1156. data/spec/install/config/targets/INST/cmd_tlm/inst_tlm.txt +236 -0
  1157. data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +25 -0
  1158. data/spec/install/config/targets/INST/cmd_tlm_server.txt +5 -0
  1159. data/spec/install/config/targets/INST/lib/sim_inst.rb +305 -0
  1160. data/spec/install/config/targets/INST/target.txt +10 -0
  1161. data/spec/install/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -0
  1162. data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  1163. data/spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +41 -0
  1164. data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  1165. data/spec/install/config/targets/SYSTEM/cmd_tlm_server.txt +6 -0
  1166. data/spec/install/config/targets/SYSTEM/screens/status.txt +12 -0
  1167. data/spec/install/config/targets/SYSTEM/target.txt +12 -0
  1168. data/spec/install/lib/README.txt +1 -0
  1169. data/spec/interfaces/cmd_tlm_server_interface_spec.rb +146 -0
  1170. data/spec/interfaces/interface_spec.rb +514 -0
  1171. data/spec/interfaces/linc_interface_spec.rb +248 -0
  1172. data/spec/interfaces/protocols/burst_protocol_spec.rb +300 -0
  1173. data/spec/interfaces/protocols/crc_protocol_spec.rb +709 -0
  1174. data/spec/interfaces/protocols/fixed_protocol_spec.rb +119 -0
  1175. data/spec/interfaces/protocols/length_protocol_spec.rb +499 -0
  1176. data/spec/interfaces/protocols/override_protocol_spec.rb +158 -0
  1177. data/spec/interfaces/protocols/preidentified_protocol_spec.rb +149 -0
  1178. data/spec/interfaces/protocols/template_protocol_spec.rb +218 -0
  1179. data/spec/interfaces/protocols/terminated_protocol_spec.rb +174 -0
  1180. data/spec/interfaces/serial_interface_spec.rb +57 -0
  1181. data/spec/interfaces/simulated_target_interface_spec.rb +128 -0
  1182. data/spec/interfaces/tcpip_client_interface_spec.rb +60 -0
  1183. data/spec/interfaces/tcpip_server_interface_spec.rb +157 -0
  1184. data/spec/interfaces/udp_interface_spec.rb +240 -0
  1185. data/spec/io/buffered_file_spec.rb +113 -0
  1186. data/spec/io/io_multiplexer_spec.rb +102 -0
  1187. data/spec/io/json_drb_object_spec.rb +119 -0
  1188. data/spec/io/json_drb_spec.rb +297 -0
  1189. data/spec/io/json_rpc_spec.rb +264 -0
  1190. data/spec/io/raw_logger_pair_spec.rb +76 -0
  1191. data/spec/io/raw_logger_spec.rb +137 -0
  1192. data/spec/io/serial_driver_spec.rb +62 -0
  1193. data/spec/io/stderr_spec.rb +32 -0
  1194. data/spec/io/stdout_spec.rb +32 -0
  1195. data/spec/io/udp_sockets_spec.rb +99 -0
  1196. data/spec/io/win32_serial_driver_spec.rb +91 -0
  1197. data/spec/packet_logs/packet_log_reader_spec.rb +553 -0
  1198. data/spec/packet_logs/packet_log_writer_pair_spec.rb +30 -0
  1199. data/spec/packet_logs/packet_log_writer_spec.rb +227 -0
  1200. data/spec/packets/binary_accessor_spec.rb +2326 -0
  1201. data/spec/packets/commands_spec.rb +369 -0
  1202. data/spec/packets/limits_response_spec.rb +25 -0
  1203. data/spec/packets/limits_spec.rb +344 -0
  1204. data/spec/packets/packet_config_spec.rb +949 -0
  1205. data/spec/packets/packet_item_limits_spec.rb +188 -0
  1206. data/spec/packets/packet_item_spec.rb +386 -0
  1207. data/spec/packets/packet_spec.rb +1394 -0
  1208. data/spec/packets/parsers/format_string_parser_spec.rb +122 -0
  1209. data/spec/packets/parsers/limits_parser_spec.rb +282 -0
  1210. data/spec/packets/parsers/limits_response_parser_spec.rb +149 -0
  1211. data/spec/packets/parsers/macro_parser_spec.rb +220 -0
  1212. data/spec/packets/parsers/packet_item_parser_spec.rb +366 -0
  1213. data/spec/packets/parsers/packet_parser_spec.rb +99 -0
  1214. data/spec/packets/parsers/processor_parser_spec.rb +114 -0
  1215. data/spec/packets/parsers/state_parser_spec.rb +156 -0
  1216. data/spec/packets/structure_item_spec.rb +213 -0
  1217. data/spec/packets/structure_spec.rb +565 -0
  1218. data/spec/packets/telemetry_spec.rb +578 -0
  1219. data/spec/processors/new_packet_log_processor_spec.rb +39 -0
  1220. data/spec/processors/processor_spec.rb +55 -0
  1221. data/spec/processors/statistics_processor_spec.rb +60 -0
  1222. data/spec/processors/watermark_processor_spec.rb +51 -0
  1223. data/spec/script/cmd_tlm_server_spec.rb +176 -0
  1224. data/spec/script/commands_disconnect_spec.rb +270 -0
  1225. data/spec/script/commands_spec.rb +303 -0
  1226. data/spec/script/extract_spec.rb +158 -0
  1227. data/spec/script/limits_spec.rb +153 -0
  1228. data/spec/script/script_spec.rb +90 -0
  1229. data/spec/script/scripting_spec.rb +745 -0
  1230. data/spec/script/telemetry_spec.rb +174 -0
  1231. data/spec/script/tools_spec.rb +134 -0
  1232. data/spec/spec_helper.rb +225 -0
  1233. data/spec/streams/serial_stream_spec.rb +122 -0
  1234. data/spec/streams/stream_spec.rb +30 -0
  1235. data/spec/streams/tcpip_client_stream_spec.rb +65 -0
  1236. data/spec/streams/tcpip_socket_stream_spec.rb +226 -0
  1237. data/spec/system/system_spec.rb +699 -0
  1238. data/spec/system/target_spec.rb +303 -0
  1239. data/spec/tools/cmd_tlm_server/api_spec.rb +1123 -0
  1240. data/spec/tools/cmd_tlm_server/background_task_spec.rb +44 -0
  1241. data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +227 -0
  1242. data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +610 -0
  1243. data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +431 -0
  1244. data/spec/tools/cmd_tlm_server/commanding_spec.rb +151 -0
  1245. data/spec/tools/cmd_tlm_server/connections_spec.rb +235 -0
  1246. data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +401 -0
  1247. data/spec/tools/cmd_tlm_server/interfaces_spec.rb +252 -0
  1248. data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +145 -0
  1249. data/spec/tools/cmd_tlm_server/packet_logging_spec.rb +143 -0
  1250. data/spec/tools/cmd_tlm_server/router_thread_spec.rb +191 -0
  1251. data/spec/tools/cmd_tlm_server/routers_spec.rb +223 -0
  1252. data/spec/tools/launcher/launcher_config_spec.rb +474 -0
  1253. data/spec/tools/table_manager/table_config_spec.rb +226 -0
  1254. data/spec/tools/table_manager/table_item_parser_spec.rb +61 -0
  1255. data/spec/tools/table_manager/table_item_spec.rb +57 -0
  1256. data/spec/tools/table_manager/table_parser_spec.rb +96 -0
  1257. data/spec/tools/table_manager/table_spec.rb +90 -0
  1258. data/spec/tools/table_manager/tablemanager_core_spec.rb +556 -0
  1259. data/spec/top_level/top_level_spec.rb +373 -0
  1260. data/spec/utilities/crc_spec.rb +45 -0
  1261. data/spec/utilities/csv_spec.rb +139 -0
  1262. data/spec/utilities/logger_spec.rb +102 -0
  1263. data/spec/utilities/message_log_spec.rb +89 -0
  1264. data/spec/utilities/quaternion_spec.rb +107 -0
  1265. data/spec/utilities/ruby_lex_utils_spec.rb +86 -0
  1266. data/tasks/gemfile_stats.rake +79 -0
  1267. data/tasks/manifest.rake +22 -0
  1268. data/tasks/spec.rake +23 -0
  1269. data/test/benchmarks/binary_accessor_benchmark.rb +14 -0
  1270. data/test/benchmarks/gsub_benchmark.rb +152 -0
  1271. data/test/benchmarks/is_a_benchmark.rb +34 -0
  1272. data/test/performance/PACKETS.bat +1 -0
  1273. data/test/performance/Rakefile +77 -0
  1274. data/test/performance/THREADS.bat +1 -0
  1275. data/test/performance/config/data/attitude.bin +0 -0
  1276. data/test/performance/config/data/crc.txt +196 -0
  1277. data/test/performance/config/data/diamond.STL +58 -0
  1278. data/test/performance/config/data/groundoff.gif +0 -0
  1279. data/test/performance/config/data/groundon.gif +0 -0
  1280. data/test/performance/config/data/hselectoff.gif +0 -0
  1281. data/test/performance/config/data/hselecton.gif +0 -0
  1282. data/test/performance/config/data/hswitchoff.gif +0 -0
  1283. data/test/performance/config/data/hswitchon.gif +0 -0
  1284. data/test/performance/config/data/meta_init.txt +4 -0
  1285. data/test/performance/config/data/position.bin +0 -0
  1286. data/test/performance/config/data/poweroff.gif +0 -0
  1287. data/test/performance/config/data/poweron.gif +0 -0
  1288. data/test/performance/config/data/satellite.gif +0 -0
  1289. data/test/performance/config/data/tada.wav +0 -0
  1290. data/test/performance/config/data/vswitchoff.gif +0 -0
  1291. data/test/performance/config/data/vswitchon.gif +0 -0
  1292. data/test/performance/config/system/system_packets.txt +38 -0
  1293. data/test/performance/config/system/system_threads.txt +58 -0
  1294. data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +46 -0
  1295. data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +15 -0
  1296. data/test/performance/config/targets/COSMOS/cmd_tlm_server.txt +6 -0
  1297. data/test/performance/config/targets/COSMOS/screens/limits_change.txt +20 -0
  1298. data/test/performance/config/targets/COSMOS/screens/version.txt +19 -0
  1299. data/test/performance/config/targets/COSMOS/target.txt +11 -0
  1300. data/test/performance/config/targets/PACKET/cmd_tlm/packet_cmds.txt +20 -0
  1301. data/test/performance/config/targets/PACKET/cmd_tlm/packet_tlm.txt +98 -0
  1302. data/test/performance/config/targets/PACKET/cmd_tlm_server.txt +6 -0
  1303. data/test/performance/config/targets/PACKET/lib/packet_interface.rb +22 -0
  1304. data/test/performance/config/targets/PACKET/lib/packet_limits_response.rb +24 -0
  1305. data/test/performance/config/targets/PACKET/screens/status.txt +25 -0
  1306. data/test/performance/config/targets/PACKET/target.txt +28 -0
  1307. data/test/performance/config/targets/SYSTEM/screens/status.txt +12 -0
  1308. data/test/performance/config/targets/THREAD/cmd_tlm/thread_cmds.txt +17 -0
  1309. data/test/performance/config/targets/THREAD/cmd_tlm/thread_tlm.txt +18 -0
  1310. data/test/performance/config/targets/THREAD/cmd_tlm_server.txt +6 -0
  1311. data/test/performance/config/targets/THREAD/lib/thread_interface.rb +22 -0
  1312. data/test/performance/config/targets/THREAD/screens/status.txt +25 -0
  1313. data/test/performance/config/targets/THREAD/target.txt +7 -0
  1314. data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_packets.txt +28 -0
  1315. data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_threads.txt +68 -0
  1316. data/test/performance/config/tools/data_viewer/data_viewer.txt +11 -0
  1317. data/test/performance/config/tools/handbook_creator/default_toc.xsl +59 -0
  1318. data/test/performance/config/tools/handbook_creator/handbook_creator.txt +66 -0
  1319. data/test/performance/config/tools/handbook_creator/templates/command_packets.html.erb +86 -0
  1320. data/test/performance/config/tools/handbook_creator/templates/command_toc.html.erb +38 -0
  1321. data/test/performance/config/tools/handbook_creator/templates/footer.html.erb +9 -0
  1322. data/test/performance/config/tools/handbook_creator/templates/header.html.erb +25 -0
  1323. data/test/performance/config/tools/handbook_creator/templates/limits_groups.html.erb +13 -0
  1324. data/test/performance/config/tools/handbook_creator/templates/nav.html.erb +27 -0
  1325. data/test/performance/config/tools/handbook_creator/templates/overview.html.erb +1 -0
  1326. data/test/performance/config/tools/handbook_creator/templates/pdf_cover.html.erb +23 -0
  1327. data/test/performance/config/tools/handbook_creator/templates/pdf_footer.html.erb +33 -0
  1328. data/test/performance/config/tools/handbook_creator/templates/pdf_header.html.erb +41 -0
  1329. data/test/performance/config/tools/handbook_creator/templates/telemetry_packets.html.erb +80 -0
  1330. data/test/performance/config/tools/handbook_creator/templates/telemetry_toc.html.erb +38 -0
  1331. data/test/performance/config/tools/handbook_creator/templates/title.html.erb +1 -0
  1332. data/test/performance/config/tools/launcher/launcher_packets.txt +34 -0
  1333. data/test/performance/config/tools/launcher/launcher_threads.txt +83 -0
  1334. data/test/performance/config/tools/limits_monitor/README.txt +1 -0
  1335. data/test/performance/config/tools/opengl_builder/README.txt +1 -0
  1336. data/test/performance/config/tools/script_runner/script_runner.txt +3 -0
  1337. data/test/performance/config/tools/table_manager/ConfigTables_def.txt +8 -0
  1338. data/test/performance/config/tools/table_manager/ExampleTableDefinition.txt +24 -0
  1339. data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +25 -0
  1340. data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +25 -0
  1341. data/test/performance/config/tools/table_manager/PPSSelectionTable_def.txt +8 -0
  1342. data/test/performance/config/tools/table_manager/TLMMonitoringTable_def.txt +248 -0
  1343. data/test/performance/config/tools/test_runner/test_runner.txt +17 -0
  1344. data/test/performance/config/tools/tlm_extractor/tlm_extractor.txt +13 -0
  1345. data/test/performance/config/tools/tlm_extractor/tlm_extractor2.txt +2 -0
  1346. data/test/performance/config/tools/tlm_extractor/tlm_extractor3.txt +2 -0
  1347. data/test/performance/config/tools/tlm_extractor/tlm_extractor4.txt +2 -0
  1348. data/test/performance/config/tools/tlm_grapher/README.txt +1 -0
  1349. data/test/performance/config/tools/tlm_grapher/tlm_grapher.txt +204 -0
  1350. data/test/performance/config/tools/tlm_viewer/tlm_viewer.txt +13 -0
  1351. data/test/performance/lib/packet_target.rb +126 -0
  1352. data/test/performance/lib/thread_target.rb +120 -0
  1353. data/test/performance/lib/user_version.rb +3 -0
  1354. data/test/performance/outputs/handbooks/README.txt +1 -0
  1355. data/test/performance/outputs/logs/README.txt +1 -0
  1356. data/test/performance/outputs/saved_config/README.txt +1 -0
  1357. data/test/performance/outputs/tables/README.txt +1 -0
  1358. data/test/performance/outputs/tmp/README.txt +1 -0
  1359. data/test/performance/procedures/checks.rb +11 -0
  1360. data/test/performance/procedures/clear_util.rb +7 -0
  1361. data/test/performance/procedures/collect.rb +18 -0
  1362. data/test/performance/procedures/collect_util.rb +14 -0
  1363. data/test/performance/procedures/cosmos_api_test.rb +293 -0
  1364. data/test/performance/procedures/disconnect.rb +29 -0
  1365. data/test/performance/procedures/example_test.rb +182 -0
  1366. data/test/performance/procedures/plot_test.rb +8 -0
  1367. data/test/performance/procedures/procedure.rb +3 -0
  1368. data/test/performance/procedures/run_example_test.rb +3 -0
  1369. data/test/performance/procedures/test.rb +51 -0
  1370. data/test/performance/tools/CmdExtractor +14 -0
  1371. data/test/performance/tools/CmdExtractor.bat +59 -0
  1372. data/test/performance/tools/CmdSender +14 -0
  1373. data/test/performance/tools/CmdSender.bat +59 -0
  1374. data/test/performance/tools/CmdTlmServer +16 -0
  1375. data/test/performance/tools/CmdTlmServer.bat +59 -0
  1376. data/test/performance/tools/CmdTlmServerMemProf +20 -0
  1377. data/test/performance/tools/CmdTlmServerMemProf.bat +59 -0
  1378. data/test/performance/tools/DataViewer +14 -0
  1379. data/test/performance/tools/DataViewer.bat +59 -0
  1380. data/test/performance/tools/HandbookCreator +14 -0
  1381. data/test/performance/tools/HandbookCreator.bat +61 -0
  1382. data/test/performance/tools/Launcher +14 -0
  1383. data/test/performance/tools/Launcher.bat +59 -0
  1384. data/test/performance/tools/LimitsMonitor +14 -0
  1385. data/test/performance/tools/LimitsMonitor.bat +59 -0
  1386. data/test/performance/tools/OpenGLBuilder +14 -0
  1387. data/test/performance/tools/OpenGLBuilder.bat +59 -0
  1388. data/test/performance/tools/PacketTarget +14 -0
  1389. data/test/performance/tools/PacketTarget.bat +59 -0
  1390. data/test/performance/tools/PacketViewer +14 -0
  1391. data/test/performance/tools/PacketViewer.bat +59 -0
  1392. data/test/performance/tools/Replay +14 -0
  1393. data/test/performance/tools/Replay.bat +59 -0
  1394. data/test/performance/tools/ScpiTarget +14 -0
  1395. data/test/performance/tools/ScpiTarget.bat +59 -0
  1396. data/test/performance/tools/ScriptRunner +14 -0
  1397. data/test/performance/tools/ScriptRunner.bat +59 -0
  1398. data/test/performance/tools/TableManager +14 -0
  1399. data/test/performance/tools/TableManager.bat +59 -0
  1400. data/test/performance/tools/TestRunner +14 -0
  1401. data/test/performance/tools/TestRunner.bat +59 -0
  1402. data/test/performance/tools/ThreadTarget +14 -0
  1403. data/test/performance/tools/ThreadTarget.bat +59 -0
  1404. data/test/performance/tools/TlmExtractor +14 -0
  1405. data/test/performance/tools/TlmExtractor.bat +59 -0
  1406. data/test/performance/tools/TlmGrapher +14 -0
  1407. data/test/performance/tools/TlmGrapher.bat +59 -0
  1408. data/test/performance/tools/TlmGrapherMemProf +19 -0
  1409. data/test/performance/tools/TlmGrapherMemProf.bat +59 -0
  1410. data/test/performance/tools/TlmViewer +14 -0
  1411. data/test/performance/tools/TlmViewer.bat +59 -0
  1412. data/test/performance/tools/TlmViewerMemProf +19 -0
  1413. data/test/performance/tools/TlmViewerMemProf.bat +59 -0
  1414. data/test/performance/tools/mac/CmdExtractor.app/Contents/Info.plist +38 -0
  1415. data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +15 -0
  1416. data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +6 -0
  1417. data/test/performance/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
  1418. data/test/performance/tools/mac/CmdSender.app/Contents/Info.plist +38 -0
  1419. data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +15 -0
  1420. data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/main.sh +6 -0
  1421. data/test/performance/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
  1422. data/test/performance/tools/mac/CmdTlmServer.app/Contents/Info.plist +38 -0
  1423. data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +15 -0
  1424. data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +6 -0
  1425. data/test/performance/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
  1426. data/test/performance/tools/mac/DataViewer.app/Contents/Info.plist +38 -0
  1427. data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +15 -0
  1428. data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/main.sh +6 -0
  1429. data/test/performance/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
  1430. data/test/performance/tools/mac/HandbookCreator.app/Contents/Info.plist +38 -0
  1431. data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +15 -0
  1432. data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +6 -0
  1433. data/test/performance/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
  1434. data/test/performance/tools/mac/Launcher.app/Contents/Info.plist +38 -0
  1435. data/test/performance/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +15 -0
  1436. data/test/performance/tools/mac/Launcher.app/Contents/MacOS/main.sh +6 -0
  1437. data/test/performance/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
  1438. data/test/performance/tools/mac/LimitsMonitor.app/Contents/Info.plist +38 -0
  1439. data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +15 -0
  1440. data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +6 -0
  1441. data/test/performance/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
  1442. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Info.plist +38 -0
  1443. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +15 -0
  1444. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +6 -0
  1445. data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
  1446. data/test/performance/tools/mac/PacketViewer.app/Contents/Info.plist +38 -0
  1447. data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +15 -0
  1448. data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +6 -0
  1449. data/test/performance/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
  1450. data/test/performance/tools/mac/Replay.app/Contents/Info.plist +38 -0
  1451. data/test/performance/tools/mac/Replay.app/Contents/MacOS/Replay.rb +15 -0
  1452. data/test/performance/tools/mac/Replay.app/Contents/MacOS/main.sh +6 -0
  1453. data/test/performance/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
  1454. data/test/performance/tools/mac/ScriptRunner.app/Contents/Info.plist +38 -0
  1455. data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +15 -0
  1456. data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +6 -0
  1457. data/test/performance/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
  1458. data/test/performance/tools/mac/TableManager.app/Contents/Info.plist +38 -0
  1459. data/test/performance/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +15 -0
  1460. data/test/performance/tools/mac/TableManager.app/Contents/MacOS/main.sh +6 -0
  1461. data/test/performance/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
  1462. data/test/performance/tools/mac/TestRunner.app/Contents/Info.plist +38 -0
  1463. data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +15 -0
  1464. data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/main.sh +6 -0
  1465. data/test/performance/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
  1466. data/test/performance/tools/mac/TlmExtractor.app/Contents/Info.plist +38 -0
  1467. data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +15 -0
  1468. data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +6 -0
  1469. data/test/performance/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
  1470. data/test/performance/tools/mac/TlmGrapher.app/Contents/Info.plist +38 -0
  1471. data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +15 -0
  1472. data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +6 -0
  1473. data/test/performance/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
  1474. data/test/performance/tools/mac/TlmViewer.app/Contents/Info.plist +38 -0
  1475. data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +15 -0
  1476. data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +6 -0
  1477. data/test/performance/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
  1478. metadata +1951 -0
@@ -0,0 +1,20 @@
1
+ ---
2
+ - name: Bit Size
3
+ required: true
4
+ description: Bit size of this telemetry item. Zero or Negative values may be used
5
+ to indicate that a string fills the packet up to the offset from the end of
6
+ the packet specified by this value. If Bit Offset is 0 and Bit Size is 0 then
7
+ this is a derived parameter and the Data Type must be set to 'DERIVED'.
8
+ values: \d+
9
+ - name: Data Type
10
+ required: true
11
+ description: Data Type of this telemetry item
12
+ values: <%= %w(INT UINT FLOAT STRING BLOCK DERVIED) %>
13
+ - name: Description
14
+ required: false
15
+ description: Description for this telemetry item which must be enclosed with quotes
16
+ values: "['\"].*['\"]"
17
+ - name: Endianness
18
+ required: false
19
+ description: Indicates if the item is to be interpreted in Big Endian or Little Endian format
20
+ values: <%= %w(BIG_ENDIAN LITTLE_ENDIAN) %>
@@ -0,0 +1,58 @@
1
+ ---
2
+ - name: Bit Size
3
+ required: true
4
+ description: Bit size of this parameter. Zero or Negative values may be used
5
+ to indicate that a string fills the packet up to the offset from the end of
6
+ the packet specified by this value. If Bit Offset is 0 and Bit Size is 0 then
7
+ this is a derived parameter and the Data Type must be set to 'DERIVED'.
8
+ values: \d+
9
+ - name: Data Type
10
+ required: true
11
+ description: Data Type of this parameter
12
+ values:
13
+ INT:
14
+ parameters: &params
15
+ - name: Minimum Value
16
+ required: true
17
+ description: Minimum allowed value for this parameter
18
+ values: .*
19
+ - name: Maximum Value
20
+ required: true
21
+ description: Maximum allowed value for this parameter
22
+ values: .*
23
+ - name: Default Value
24
+ required: true
25
+ description: Default value for this parameter. You must provide a default
26
+ but if you mark the parameter REQUIRED then scripts will be forced to specify a value.
27
+ values: .*
28
+ - name: Description
29
+ required: false
30
+ description: Description for this parameter which must be enclosed with quotes
31
+ values: "['\"].*['\"]"
32
+ - name: Endianness
33
+ required: false
34
+ description: Indicates if the data in this command is to be sent in Big Endian or Little Endian format
35
+ values: <%= %w(BIG_ENDIAN LITTLE_ENDIAN) %>
36
+ UINT:
37
+ parameters: *params
38
+ FLOAT:
39
+ parameters: *params
40
+ DERVIED:
41
+ parameters: *params
42
+ STRING:
43
+ parameters: &sparams
44
+ - name: Default Value
45
+ required: true
46
+ description: Default value for this parameter. You must provide a default
47
+ but if you mark the parameter REQUIRED then scripts will be forced to specify a value.
48
+ values: .*
49
+ - name: Description
50
+ required: false
51
+ description: Description for this parameter which must be enclosed with quotes
52
+ values: "['\"].*['\"]"
53
+ - name: Endianness
54
+ required: false
55
+ description: Indicates if the data in this command is to be sent in Big Endian or Little Endian format
56
+ values: <%= %w(BIG_ENDIAN LITTLE_ENDIAN) %>
57
+ BLOCK:
58
+ parameters: *sparams
@@ -0,0 +1,110 @@
1
+ ---
2
+ TITLE:
3
+ summary: Sets the Command and Telemetry Server window title
4
+ parameters:
5
+ - name: Text
6
+ required: true
7
+ description: Text to put in the title of the Command and Telemetry Server window
8
+ values: .+
9
+ PACKET_LOG_WRITER:
10
+ summary: Declare a packet log writer
11
+ description: Packet log writer is used to declare a packet log writer class and
12
+ give it a name which can be referenced by an interface. This is required if you
13
+ want interfaces to have their own dedicated log writers or want to combine
14
+ various interfaces into a single log file. By default, COSMOS logs all data
15
+ on all interfaces into a single command log and a single telemetry log.
16
+ This keyword can also be used if you want to declare a different log file class
17
+ to create log files.
18
+ warning: You should NOT override the default without consulting a COSMOS expert
19
+ as this may break the ability to successfully read and write log files.
20
+ parameters:
21
+ - name: Log Writer Name
22
+ required: true
23
+ description: The name of the log writer as reference by other cmd_tlm_server keywords.
24
+ This name also appears in the Logging tab on the Command and Telemetry Server.
25
+ values: .+
26
+ - name: Filename
27
+ required: true
28
+ description: Ruby file to use when instantiating a new log writer
29
+ values: '.+\.rb'
30
+ - name: Parameters
31
+ required: false
32
+ description: Optional parameters to pass to the log writer class when instantiating it.
33
+ AUTO_INTERFACE_TARGETS:
34
+ summary: Automatically use each target's cmd_tlm_server.txt file to define the interface
35
+ description: Look for a cmd_tlm_server.txt file at the top level
36
+ of each target directory and use this file to configure the interface for that target.
37
+ This is a good way of keeping the knowledge of how to interface to a target
38
+ within that target. However, if you use substitute target names (by using DECLARE_TARGET)
39
+ or use different IP addresses then this will not work and you'll have to use the
40
+ INTERFACE_TARGET or INTERFACE keyword.
41
+ INTERFACE_TARGET:
42
+ summary: Load the specified target's cmd_tlm_server.txt configuration file
43
+ parameters:
44
+ - name: Target Name
45
+ required: true
46
+ description: Name of the target
47
+ values: <%= System.targets.keys %>
48
+ - name: Configuration File
49
+ required: false
50
+ description: Configuration file name which contains the interface configuration.
51
+ Defaults to 'cmd_tlm_server.txt'.
52
+ values: .+
53
+ INTERFACE:
54
+ modifiers:
55
+ <%= MetaConfigParser.load('interface_modifiers.yaml').to_meta_config_yaml(4) %>
56
+ summary: Defines a connection to a physical target
57
+ description: Interfaces are what COSMOS uses to talk to a particular piece
58
+ of hardware. Interfaces require a Ruby file which implements all the interface
59
+ methods necessary to talk to the hardware. COSMOS defines many built in interfaces
60
+ or you can define your own as long as it implements the interface protocol.
61
+ parameters:
62
+ - name: Interface Name
63
+ required: true
64
+ description: Name of the interface. This name will appear in the
65
+ Interfaces tab of the Server and is also referenced by other keywords.
66
+ The COSMOS convention is to name interfaces after their targets with
67
+ '_INT' appended to the name, e.g. INST_INT for the INST target.
68
+ values: \D\S*
69
+ - name: Filename
70
+ required: true
71
+ description: Ruby file to use when instantiating the interface.
72
+ values:
73
+ <%= MetaConfigParser.load('_interfaces.yaml').to_meta_config_yaml(8) %>
74
+ ROUTER:
75
+ modifiers:
76
+ <%= MetaConfigParser.load('interface_modifiers.yaml').to_meta_config_yaml(4) %>
77
+ summary: Create an interface which reverses cmd/tlm data
78
+ description: Router creates an interface which receives command packets from
79
+ their remote targets and send them out their interfaces. They receive telemetry
80
+ packets from their interfaces and send them to their remote targets. This allows
81
+ routers to be intermediaries between an external client and an actual device.
82
+ parameters:
83
+ - name: Name
84
+ required: true
85
+ description: Name of the router
86
+ values: .+
87
+ - name: Filename
88
+ required: true
89
+ description: Ruby file to use when instantiating the interface.
90
+ values:
91
+ <%= MetaConfigParser.load('_interfaces.yaml').to_meta_config_yaml(8) %>
92
+ COLLECT_METADATA:
93
+ summary: Prompts the user for meta data when starting the Command and Telemetry Server
94
+ BACKGROUND_TASK:
95
+ summary: Create a background task in the Command and Telemetry Server
96
+ description: The Server instantiates the class which must inherit from BackgroundTask
97
+ and then calls the call() method which the class must implement. The call() method
98
+ is only called once so if your background task is supposed to live on while the
99
+ Server is running, you must implement your code in a loop with a sleep to not
100
+ use all the CPU.
101
+ parameters:
102
+ - name: Filename
103
+ required: true
104
+ description: Ruby file which contains the background task implementation.
105
+ Must inherit from BackgroundTask and implement the call method.
106
+ values: '.+\.rb'
107
+ - name: Optional Arguments
108
+ required: false
109
+ description: Optional arguments to the background task constructor
110
+ values: .+
@@ -0,0 +1,38 @@
1
+ ---
2
+ COMMAND:
3
+ modifiers:
4
+ <%= MetaConfigParser.load('command_modifiers.yaml').to_meta_config_yaml(4) %>
5
+ summary: Defines a new command packet
6
+ parameters:
7
+ - name: Target
8
+ required: true
9
+ description: Name of the target this command is associated with
10
+ values: <%= System.targets.keys %>
11
+ - name: Command
12
+ required: true
13
+ description: Name of this command. Also referred to as its mnemonic.
14
+ Must be unique to commands to this target. Ideally will be as short and clear as possible.
15
+ values: \D\S*
16
+ - name: Endianness
17
+ required: true
18
+ description: Indicates if the data in this command is to be sent in Big Endian or Little Endian format
19
+ values: ['BIG_ENDIAN', 'LITTLE_ENDIAN']
20
+ - name: Description
21
+ required: false
22
+ description: Description of this command which must be enclosed with quotes
23
+ values: "['\"].*['\"]"
24
+ SELECT_COMMAND:
25
+ modifiers:
26
+ <%= MetaConfigParser.load('command_modifiers.yaml').to_meta_config_yaml(4) %>
27
+ summary: Selects an existing command packet for editing
28
+ description: Typically used in a separate configuration file from where the original
29
+ command is defined to override or add to the existing command definition
30
+ parameters:
31
+ - name: Target Name
32
+ required: true
33
+ description: Name of the target this command is associated with
34
+ values: <%= System.targets.keys %>
35
+ - name: Command Name
36
+ required: true
37
+ description: Name of the command to select
38
+ values: .*
@@ -0,0 +1,127 @@
1
+ ---
2
+ PARAMETER:
3
+ modifiers:
4
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
5
+ summary: Defines a command parameter in the current command packet
6
+ parameters:
7
+ - name: Name
8
+ required: true
9
+ description: Name of the parameter. Must be unique within the command.
10
+ values: '\D\S*'
11
+ - name: Bit Offset
12
+ required: true
13
+ description: Bit offset into the command packet of the Most Significant Bit of this parameter.
14
+ May be negative to indicate on offset from the end of the packet.
15
+ Always use a bit offset of 0 for derived parameters.
16
+ values: '[-]?\d+'
17
+ <%= MetaConfigParser.load('_params.yaml').to_meta_config_yaml(4) %>
18
+ APPEND_PARAMETER:
19
+ modifiers:
20
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
21
+ summary: Defines a command parameter in the current command packet
22
+ parameters:
23
+ - name: Name
24
+ required: true
25
+ description: Name of the parameter. Must be unique within the command.
26
+ values: .+
27
+ <%= MetaConfigParser.load('_params.yaml').to_meta_config_yaml(4) %>
28
+ ID_PARAMETER:
29
+ modifiers:
30
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
31
+ summary: Defines an identification command parameter in the current command packet
32
+ description: ID parameters are used to identify the binary block of data as a
33
+ particular command. A command packet may have one or more ID_PARAMETERs and all
34
+ must match the binary data for the command to be identified.
35
+ parameters:
36
+ - name: Name
37
+ required: true
38
+ description: Name of the parameter. Must be unique within the command.
39
+ values: .+
40
+ - name: Bit Offset
41
+ required: true
42
+ description: Bit offset into the command packet of the Most Significant Bit of this parameter.
43
+ May be negative to indicate on offset from the end of the packet.
44
+ Always use a bit offset of 0 for derived parameters.
45
+ values: '[-]?\d+'
46
+ <%= MetaConfigParser.load('_id_params.yaml').to_meta_config_yaml(4) %>
47
+ APPEND_ID_PARAMETER:
48
+ modifiers:
49
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
50
+ summary: Defines an identification command parameter in the current command packet
51
+ description: ID parameters are used to identify the binary block of data as a
52
+ particular command. A command packet may have one or more ID_PARAMETERs and all
53
+ must match the binary data for the command to be identified.
54
+ parameters:
55
+ - name: Name
56
+ required: true
57
+ description: Name of the parameter. Must be unique within the command.
58
+ values: .+
59
+ <%= MetaConfigParser.load('_id_params.yaml').to_meta_config_yaml(4) %>
60
+ ARRAY_PARAMETER:
61
+ modifiers:
62
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
63
+ summary: Defines a command parameter in the current command packet that is an array
64
+ parameters:
65
+ - name: Name
66
+ required: true
67
+ description: Name of the parameter. Must be unique within the command.
68
+ values: \'
69
+ - name: Bit Offset
70
+ required: true
71
+ description: Bit offset into the command packet of the Most Significant Bit of this parameter.
72
+ May be negative to indicate on offset from the end of the packet.
73
+ Always use a bit offset of 0 for derived parameters.
74
+ values: '[-]?\d+'
75
+ <%= MetaConfigParser.load('_array_params.yaml').to_meta_config_yaml(4) %>
76
+ APPEND_ARRAY_PARAMETER:
77
+ modifiers:
78
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
79
+ summary: Defines a command parameter in the current command packet that is an array
80
+ parameters:
81
+ - name: Name
82
+ required: true
83
+ description: Name of the parameter. Must be unique within the command.
84
+ values: '\D\S*'
85
+ <%= MetaConfigParser.load('_array_params.yaml').to_meta_config_yaml(4) %>
86
+ SELECT_PARAMETER:
87
+ modifiers:
88
+ <%= MetaConfigParser.load('parameter_modifiers.yaml').to_meta_config_yaml(4) %>
89
+ summary: Selects an existing command parameter for editing
90
+ parameters:
91
+ - name: Parameter
92
+ required: true
93
+ description: Name of the parameter to select for modification
94
+ values: .+
95
+ HIDDEN:
96
+ summary: Hides this command from all COSMOS tools such as Command Sender and Handbook Creator
97
+ description: Hidden commands do not appear in the Script Runner popup helper when writing scripts.
98
+ The command still exists in the system and can be sent by scripts.
99
+ DISABLED:
100
+ summary: Disables this command from being sent
101
+ description: Hides the command and also disables it from being sent by scripts.
102
+ Attempts to send DISABLED commands result in an error message.
103
+ DISABLE_MESSAGES:
104
+ summary: Disable the Server from printing cmd(...) messages. Commands are still logged.
105
+ META:
106
+ summary: Stores metadata for the current command
107
+ description: Meta data is user specific data that can be used by custom tools
108
+ for various purposes. One example is to store additional information needed
109
+ to generate source code header files.
110
+ parameters:
111
+ - name: Meta Name
112
+ required: true
113
+ description: Name of the metadata to store
114
+ values: .*
115
+ - name: Meta Values
116
+ required: false
117
+ description: One or more values to be stored for this Meta Name
118
+ values: .*
119
+ HAZARDOUS:
120
+ summary: Designates the current command as hazardous
121
+ description: Sending a hazardous command causes a dialog asking for confirmation
122
+ before sending the command
123
+ parameters:
124
+ - name: Description
125
+ required: false
126
+ description: Description for why the command is hazardous which must be enclosed with quotes
127
+ values: "['\"].*['\"]"
@@ -0,0 +1,3 @@
1
+ ---
2
+ <%= MetaConfigParser.load('command.yaml').to_meta_config_yaml(0) %>
3
+ <%= MetaConfigParser.load('telemetry.yaml').to_meta_config_yaml(0) %>
@@ -0,0 +1,43 @@
1
+ ---
2
+ AUTO_START:
3
+ summary: Automatically start Data Viewer and connect to the Server
4
+ AUTO_TARGET_COMPONENTS:
5
+ summary: Automatically load all data_viewer.txt configuration files in each target
6
+ TARGET_COMPONENT:
7
+ summary: Load a Data Viewer configuration file in the specified target
8
+ parameters:
9
+ - name: Target
10
+ required: true
11
+ description: Name of the target
12
+ values: <%= System.targets.keys %>
13
+ - name: Filename
14
+ required: false
15
+ description: The Data Viewer configuration file name. Defaults to data_viewer.txt.
16
+ values: '(.+\.txt)?'
17
+ COMPONENT:
18
+ summary: Declare a Data Viewer component
19
+ parameters:
20
+ - name: Tab Name
21
+ required: true
22
+ description: Name of the component which shows up in the GUI tab
23
+ values: .+
24
+ - name: Filename
25
+ required: true
26
+ description: Name of the Ruby file which contains the component class
27
+ values: '.+\.rb'
28
+ - name: Options
29
+ required: false
30
+ description: Optional parameters that are sent to the component constructor
31
+ values: .*
32
+ modifiers:
33
+ PACKET:
34
+ summary: Declare a packet to process by the component
35
+ parameters:
36
+ - name: Target
37
+ required: true
38
+ description: Name of the target
39
+ values: <%= System.targets.keys %>
40
+ - name: Packet
41
+ required: true
42
+ description: Name of the packet
43
+ values: .+
@@ -0,0 +1,23 @@
1
+ ---
2
+ PAGE:
3
+ modifiers:
4
+ <%= MetaConfigParser.load('page_modifiers.yaml').to_meta_config_yaml(4) %>
5
+ summary: Create a new top level webpage
6
+ parameters:
7
+ - name: Filename
8
+ required: true
9
+ description: Name of the HTML file
10
+ values: '.*\.html'
11
+ TARGET_PAGES:
12
+ modifiers:
13
+ <%= MetaConfigParser.load('page_modifiers.yaml').to_meta_config_yaml(4) %>
14
+ summary: Create a new webpage for each of the defined TARGETS
15
+ description: The page will be generated for each target. A top level "Targets"
16
+ drop down will be created with links to all the generated target pages.
17
+ parameters:
18
+ - name: Filename Postfix
19
+ required: true
20
+ description: The postfix will be applied to each generated target file.
21
+ For example, a target named INST with a postfix of '_cmd_tlm.html' will
22
+ result in a file named 'inst_cmd_tlm.html'.
23
+ values: '.*\.html'
@@ -0,0 +1,71 @@
1
+ ---
2
+ # Require housekeeping_data_object for the ANALYSIS_TYPES
3
+ <% require 'cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb' %>
4
+ ITEM:
5
+ summary: Graph the specified item
6
+ parameters:
7
+ - name: Target Name
8
+ description: The target name
9
+ required: true
10
+ values: <%= System.targets.keys %>
11
+ - name: Packet Name
12
+ description: The packet name
13
+ required: true
14
+ values: .+
15
+ - name: Item Name
16
+ description: The item name
17
+ required: true
18
+ values: .+
19
+ ITEM_ARRAY_INDEX:
20
+ summary: If the ITEM is an ARRAY, this keyword specifies which array item to graph
21
+ parameters:
22
+ - name: Index
23
+ required: true
24
+ description: 0 based array Index
25
+ values: \d+
26
+ TIME_ITEM:
27
+ summary: Specify the item in the packet representing the time value
28
+ parameters:
29
+ - name: Time Item Name
30
+ description: The time item is typically RECEIVED_TIMESECONDS
31
+ required: true
32
+ values: .+
33
+ FORMATTED_TIME_ITEM:
34
+ summary: Specify the item in the packet representing the formatted time value
35
+ parameters:
36
+ - name: Time Item Name
37
+ description: The time item is typically RECEIVED_TIMEFORMATTED
38
+ required: true
39
+ values: .+
40
+ VALUE_TYPE:
41
+ summary: How the value should be displayed
42
+ parameters:
43
+ - name: Item Value Type
44
+ description: Should the value be used raw or converted
45
+ required: true
46
+ values: ['RAW','CONVERTED']
47
+ ANALYSIS:
48
+ summary: Apply an analysis to the given value
49
+ parameters:
50
+ - name: Analysis Type
51
+ description: The type of analysis to perform on the value before graphing
52
+ required: true
53
+ values: <%= HousekeepingDataObject::ANALYSIS_TYPES.collect {|type| type.to_s } %>
54
+ ANALYSIS_SAMPLES:
55
+ summary: The number of samples to use when performing analysis. Only valid with the
56
+ ANALYSIS keyword.
57
+ parameters:
58
+ - name: Samples
59
+ description: Number of samples
60
+ required: true
61
+ values: \d+
62
+ SHOW_LIMITS_LINES:
63
+ summary: Whether to show the limits line on the graph
64
+ description: The limits lines are horizontal lines which intercept the Y value at the
65
+ defined limits values. The red, yellow, and green limits are drawn with lines with the
66
+ respective colors.
67
+ parameters:
68
+ - name: Display
69
+ description: Whether to display the limits lines
70
+ required: true
71
+ values: ['TRUE','FALSE']