cosmos 3.9.2 → 4.0.0

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 (438) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +23 -0
  3. data/.travis.yml +1 -0
  4. data/.yardopts +3 -0
  5. data/Gemfile +1 -1
  6. data/Manifest.txt +137 -52
  7. data/Rakefile +50 -44
  8. data/autohotkey/config/system/system.txt +0 -5
  9. data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +6 -1
  10. data/autohotkey/config/targets/INST/screens/extra.txt +19 -0
  11. data/autohotkey/config/targets/INST/sequences/run_sequence.txt +1 -0
  12. data/autohotkey/config/targets/META/screens/data.txt +12 -0
  13. data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  14. data/autohotkey/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  15. data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  16. data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +14 -0
  17. data/autohotkey/config/targets/SYSTEM/screens/meta.txt +14 -0
  18. data/autohotkey/config/targets/SYSTEM/target.txt +12 -0
  19. data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
  20. data/autohotkey/config/tools/test_runner/test_runner2.txt +1 -1
  21. data/autohotkey/tools/CmdSequence +14 -0
  22. data/autohotkey/tools/CmdSequenceAHK +23 -0
  23. data/autohotkey/tools/CmdSequenceAHK2 +16 -0
  24. data/autohotkey/tools/cmd_extractor.ahk +2 -2
  25. data/autohotkey/tools/cmd_sender.ahk +4 -6
  26. data/autohotkey/tools/cmd_sequence.ahk +215 -0
  27. data/autohotkey/tools/cmd_sequence2.ahk +23 -0
  28. data/autohotkey/tools/data_viewer.ahk +2 -3
  29. data/autohotkey/tools/limits_monitor.ahk +9 -11
  30. data/autohotkey/tools/open_gl_builder.ahk +1 -2
  31. data/autohotkey/tools/packet_viewer.ahk +51 -35
  32. data/autohotkey/tools/replay.ahk +1 -2
  33. data/autohotkey/tools/script_runner.ahk +1 -2
  34. data/autohotkey/tools/script_runner2.ahk +1 -2
  35. data/autohotkey/tools/test_runner2.ahk +1 -5
  36. data/autohotkey/tools/test_runner3.ahk +1 -3
  37. data/autohotkey/tools/tlm_grapher.ahk +1 -3
  38. data/autohotkey/tools/tlm_grapher3.ahk +1 -2
  39. data/autohotkey/tools/tlm_viewer.ahk +8 -3
  40. data/autohotkey/tools/tlm_viewer2.ahk +2 -3
  41. data/autohotkey/tools/tlm_viewer5.ahk +1 -2
  42. data/cosmos.gemspec +26 -20
  43. data/data/cmd_sequence.png +0 -0
  44. data/data/config/_array_params.yaml +23 -0
  45. data/data/config/_id_items.yaml +24 -0
  46. data/data/config/_id_params.yaml +58 -0
  47. data/data/config/_interfaces.yaml +206 -0
  48. data/data/config/_items.yaml +20 -0
  49. data/data/config/_params.yaml +58 -0
  50. data/data/config/cmd_tlm_server.yaml +110 -0
  51. data/data/config/command.yaml +38 -0
  52. data/data/config/command_modifiers.yaml +127 -0
  53. data/data/config/command_telemetry.yaml +3 -0
  54. data/data/config/data_viewer.yaml +43 -0
  55. data/data/config/handbook_creator.yaml +23 -0
  56. data/data/config/housekeeping_params.yaml +71 -0
  57. data/data/config/interface_modifiers.yaml +44 -0
  58. data/data/config/item_modifiers.yaml +172 -0
  59. data/data/config/launcher.yaml +117 -0
  60. data/data/config/limits_monitor.yaml +53 -0
  61. data/data/config/linegraph_params.yaml +30 -0
  62. data/data/config/linegraph_plot.yaml +106 -0
  63. data/data/config/page_modifiers.yaml +128 -0
  64. data/data/config/param_item_modifiers.yaml +41 -0
  65. data/data/config/parameter_modifiers.yaml +144 -0
  66. data/data/config/protocols.yaml +257 -0
  67. data/data/config/screen.yaml +151 -0
  68. data/data/config/script_runner.yaml +15 -0
  69. data/data/config/system.yaml +153 -0
  70. data/data/config/table_manager.yaml +76 -0
  71. data/data/config/table_parameter_modifiers.yaml +9 -0
  72. data/data/config/target.yaml +71 -0
  73. data/data/config/telemetry.yaml +73 -0
  74. data/data/config/telemetry_modifiers.yaml +129 -0
  75. data/data/config/test_runner.yaml +118 -0
  76. data/data/config/tlm_extractor.yaml +109 -0
  77. data/data/config/tlm_grapher.yaml +78 -0
  78. data/data/config/tlm_viewer.yaml +107 -0
  79. data/data/config/unknown.yaml +3 -0
  80. data/data/config/widgets.yaml +1339 -0
  81. data/data/config/xy_params.yaml +50 -0
  82. data/data/config/xy_plot.yaml +12 -0
  83. data/data/config_editor.png +0 -0
  84. data/data/crc.txt +172 -161
  85. data/data/delete.png +0 -0
  86. data/demo/config/data/crc.txt +56 -36
  87. data/demo/config/data/meta_init.txt +1 -4
  88. data/demo/config/system/system.txt +15 -3
  89. data/demo/config/system/system2.txt +13 -3
  90. data/demo/config/targets/EXAMPLE/lib/example_interface.rb +2 -6
  91. data/demo/config/targets/EXAMPLE/target.txt +3 -1
  92. data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +1 -0
  93. data/demo/config/targets/INST/lib/inst_dump_component.rb +34 -0
  94. data/demo/config/targets/INST/screens/adcs.txt +39 -15
  95. data/demo/config/targets/INST/screens/commanding.txt +26 -19
  96. data/demo/config/targets/INST/screens/spacing_box.txt +44 -0
  97. data/demo/config/targets/INST/screens/spacing_grid.txt +78 -0
  98. data/demo/config/targets/INST/screens/tabs.txt +0 -2
  99. data/demo/config/targets/INST/sequences/sequence.tsv +3 -0
  100. data/demo/config/targets/INST/tables/EventAction.csv +9 -0
  101. data/demo/config/targets/INST/tables/EventAction.dat +0 -0
  102. data/demo/config/targets/INST/tables/McConfigTable.csv +20 -0
  103. data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
  104. data/demo/config/targets/INST/target.txt +4 -0
  105. data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +2 -0
  106. data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +2 -0
  107. data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +6 -0
  108. data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +38 -0
  109. data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -3
  110. data/demo/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  111. data/demo/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  112. data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  113. data/demo/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
  114. data/demo/config/targets/SYSTEM/lib/limits_groups.rb +39 -0
  115. data/demo/config/targets/SYSTEM/screens/status.txt +1 -1
  116. data/demo/config/targets/SYSTEM/target.txt +12 -0
  117. data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +1 -1
  118. data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +8 -5
  119. data/demo/config/targets/TEMPLATED/target.txt +2 -0
  120. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +15 -6
  121. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +13 -5
  122. data/demo/config/tools/data_viewer/data_viewer.txt +9 -0
  123. data/demo/config/tools/launcher/launcher.txt +9 -6
  124. data/demo/config/tools/launcher/launcher2.txt +16 -13
  125. data/demo/config/tools/launcher/launcher_mini.txt +45 -0
  126. data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +12 -11
  127. data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +12 -11
  128. data/demo/config/tools/test_runner/test_runner.txt +1 -1
  129. data/demo/config/tools/tlm_viewer/tlm_viewer.txt +5 -5
  130. data/demo/lib/example_background_task.rb +9 -5
  131. data/demo/lib/example_target.rb +5 -15
  132. data/demo/lib/scpi_target.rb +4 -10
  133. data/demo/procedures/cosmos_api_test.rb +17 -0
  134. data/demo/tools/CmdSequence +16 -0
  135. data/demo/tools/CmdSequence.bat +9 -0
  136. data/demo/tools/ConfigEditor +16 -0
  137. data/demo/tools/ConfigEditor.bat +9 -0
  138. data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  139. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  140. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  141. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  142. data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  143. data/ext/cosmos/ext/packet/packet.c +5 -5
  144. data/install/config/data/crc.txt +12 -8
  145. data/install/config/system/system.txt +13 -3
  146. data/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +14 -0
  147. data/install/config/targets/SYSTEM/target.txt +12 -0
  148. data/install/tools/CmdSequence +16 -0
  149. data/install/tools/CmdSequence.bat +9 -0
  150. data/install/tools/ConfigEditor +16 -0
  151. data/install/tools/ConfigEditor.bat +9 -0
  152. data/install/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  153. data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  154. data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  155. data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  156. data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  157. data/lib/cosmos.rb +1 -1
  158. data/lib/cosmos/config/config_parser.rb +147 -59
  159. data/lib/cosmos/config/meta_config_parser.rb +57 -0
  160. data/lib/cosmos/conversions/polynomial_conversion.rb +20 -4
  161. data/lib/cosmos/conversions/unix_time_conversion.rb +4 -4
  162. data/lib/cosmos/core_ext/array.rb +45 -5
  163. data/lib/cosmos/core_ext/cosmos_io.rb +31 -15
  164. data/lib/cosmos/core_ext/file.rb +2 -2
  165. data/lib/cosmos/core_ext/kernel.rb +1 -6
  166. data/lib/cosmos/core_ext/objectspace.rb +0 -2
  167. data/lib/cosmos/core_ext/string.rb +27 -4
  168. data/lib/cosmos/core_ext/time.rb +39 -10
  169. data/lib/cosmos/gui/choosers/combobox_chooser.rb +37 -26
  170. data/lib/cosmos/gui/choosers/file_chooser.rb +23 -6
  171. data/lib/cosmos/gui/choosers/float_chooser.rb +13 -11
  172. data/lib/cosmos/gui/choosers/integer_chooser.rb +13 -11
  173. data/lib/cosmos/gui/choosers/string_chooser.rb +18 -36
  174. data/lib/cosmos/gui/choosers/telemetry_chooser.rb +64 -64
  175. data/lib/cosmos/gui/choosers/value_chooser.rb +15 -15
  176. data/lib/cosmos/gui/dialogs/about_dialog.rb +18 -13
  177. data/lib/cosmos/gui/dialogs/calendar_dialog.rb +11 -3
  178. data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +1 -1
  179. data/lib/cosmos/gui/dialogs/details_dialog.rb +1 -1
  180. data/lib/cosmos/gui/dialogs/exception_dialog.rb +7 -7
  181. data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +20 -15
  182. data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +143 -0
  183. data/lib/cosmos/gui/dialogs/legal_dialog.rb +6 -5
  184. data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +5 -2
  185. data/lib/cosmos/gui/dialogs/progress_dialog.rb +1 -1
  186. data/lib/cosmos/gui/dialogs/pry_dialog.rb +4 -4
  187. data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +3 -0
  188. data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +7 -6
  189. data/lib/cosmos/gui/dialogs/splash.rb +1 -1
  190. data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +1 -1
  191. data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +114 -0
  192. data/lib/cosmos/gui/line_graph/line_graph.rb +9 -10
  193. data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +7 -5
  194. data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +3 -7
  195. data/lib/cosmos/gui/line_graph/line_graph_popups.rb +3 -8
  196. data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +2 -7
  197. data/lib/cosmos/gui/line_graph/overview_graph.rb +6 -1
  198. data/lib/cosmos/gui/opengl/earth_model.rb +6 -3
  199. data/lib/cosmos/gui/opengl/gl_bounds.rb +11 -23
  200. data/lib/cosmos/gui/opengl/gl_light.rb +3 -4
  201. data/lib/cosmos/gui/opengl/gl_material.rb +3 -4
  202. data/lib/cosmos/gui/opengl/gl_scene.rb +10 -4
  203. data/lib/cosmos/gui/opengl/gl_shape.rb +6 -2
  204. data/lib/cosmos/gui/opengl/gl_viewer.rb +5 -5
  205. data/lib/cosmos/gui/opengl/gl_viewport.rb +11 -12
  206. data/lib/cosmos/gui/opengl/moon_model.rb +6 -3
  207. data/lib/cosmos/gui/opengl/stl_reader.rb +8 -9
  208. data/lib/cosmos/gui/opengl/stl_shape.rb +4 -5
  209. data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +7 -7
  210. data/lib/cosmos/gui/qt.rb +1 -1
  211. data/lib/cosmos/gui/qt_tool.rb +21 -10
  212. data/lib/cosmos/gui/text/completion.rb +23 -2
  213. data/lib/cosmos/gui/text/completion_text_edit.rb +38 -23
  214. data/lib/cosmos/gui/utilities/analyze_log.rb +1 -1
  215. data/lib/cosmos/gui/utilities/screenshot.rb +2 -2
  216. data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +11 -1
  217. data/lib/cosmos/gui/widgets/packet_log_frame.rb +19 -6
  218. data/lib/cosmos/interfaces.rb +10 -0
  219. data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +28 -47
  220. data/lib/cosmos/interfaces/interface.rb +240 -22
  221. data/lib/cosmos/interfaces/linc_interface.rb +3 -5
  222. data/lib/cosmos/interfaces/protocols/burst_protocol.rb +173 -0
  223. data/lib/cosmos/interfaces/protocols/crc_protocol.rb +141 -0
  224. data/lib/cosmos/{streams/fixed_stream_protocol.rb → interfaces/protocols/fixed_protocol.rb} +40 -37
  225. data/lib/cosmos/{streams/length_stream_protocol.rb → interfaces/protocols/length_protocol.rb} +55 -48
  226. data/lib/cosmos/interfaces/protocols/override_protocol.rb +52 -0
  227. data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +141 -0
  228. data/lib/cosmos/interfaces/protocols/protocol.rb +60 -0
  229. data/lib/cosmos/interfaces/protocols/template_protocol.rb +209 -0
  230. data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +81 -0
  231. data/lib/cosmos/interfaces/serial_interface.rb +28 -23
  232. data/lib/cosmos/interfaces/simulated_target_interface.rb +27 -16
  233. data/lib/cosmos/interfaces/stream_interface.rb +36 -108
  234. data/lib/cosmos/interfaces/tcpip_client_interface.rb +21 -21
  235. data/lib/cosmos/interfaces/tcpip_server_interface.rb +555 -94
  236. data/lib/cosmos/interfaces/udp_interface.rb +51 -83
  237. data/lib/cosmos/io/buffered_file.rb +92 -2
  238. data/lib/cosmos/io/json_drb.rb +2 -2
  239. data/lib/cosmos/io/posix_serial_driver.rb +3 -1
  240. data/lib/cosmos/io/raw_logger.rb +3 -3
  241. data/lib/cosmos/io/serial_driver.rb +14 -5
  242. data/lib/cosmos/io/win32_serial_driver.rb +16 -4
  243. data/lib/cosmos/packet_logs.rb +0 -1
  244. data/lib/cosmos/packet_logs/packet_log_reader.rb +11 -1
  245. data/lib/cosmos/packet_logs/packet_log_writer.rb +31 -13
  246. data/lib/cosmos/packets/binary_accessor.rb +599 -32
  247. data/lib/cosmos/packets/commands.rb +48 -24
  248. data/lib/cosmos/packets/packet.rb +140 -54
  249. data/lib/cosmos/packets/packet_config.rb +0 -2
  250. data/lib/cosmos/packets/parsers/packet_item_parser.rb +10 -2
  251. data/lib/cosmos/packets/structure.rb +81 -33
  252. data/lib/cosmos/packets/structure_item.rb +45 -5
  253. data/lib/cosmos/packets/telemetry.rb +149 -55
  254. data/lib/cosmos/script/api_shared.rb +1000 -0
  255. data/lib/cosmos/script/commands.rb +2 -2
  256. data/lib/cosmos/script/extract.rb +19 -4
  257. data/lib/cosmos/script/limits.rb +2 -0
  258. data/lib/cosmos/script/script.rb +1 -1
  259. data/lib/cosmos/script/scripting.rb +4 -784
  260. data/lib/cosmos/script/telemetry.rb +44 -23
  261. data/lib/cosmos/script/tools.rb +15 -69
  262. data/lib/cosmos/streams/serial_stream.rb +12 -19
  263. data/lib/cosmos/streams/stream.rb +2 -11
  264. data/lib/cosmos/streams/tcpip_socket_stream.rb +3 -13
  265. data/lib/cosmos/system/system.rb +187 -31
  266. data/lib/cosmos/system/target.rb +11 -2
  267. data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +12 -11
  268. data/lib/cosmos/tools/cmd_sender/{cmd_sender_item_delegate.rb → cmd_param_table_item_delegate.rb} +11 -10
  269. data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +209 -164
  270. data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +652 -0
  271. data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +510 -0
  272. data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +194 -0
  273. data/lib/cosmos/tools/cmd_tlm_server/api.rb +179 -5
  274. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +31 -14
  275. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +23 -16
  276. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +92 -20
  277. data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +1 -1
  278. data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +17 -4
  279. data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +0 -5
  280. data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +1 -2
  281. data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +4 -4
  282. data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +121 -0
  283. data/lib/cosmos/tools/cmd_tlm_server/routers.rb +8 -4
  284. data/lib/cosmos/tools/config_editor/config_editor.rb +720 -0
  285. data/lib/cosmos/tools/config_editor/config_editor_frame.rb +675 -0
  286. data/lib/cosmos/tools/data_viewer/data_viewer.rb +44 -27
  287. data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +8 -22
  288. data/lib/cosmos/tools/launcher/launcher.rb +29 -12
  289. data/lib/cosmos/tools/launcher/launcher_config.rb +1 -1
  290. data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +153 -42
  291. data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +44 -6
  292. data/lib/cosmos/tools/replay/replay.rb +36 -20
  293. data/lib/cosmos/tools/replay/replay_server.rb +1 -1
  294. data/lib/cosmos/tools/script_runner/script_runner_config.rb +1 -1
  295. data/lib/cosmos/tools/script_runner/script_runner_frame.rb +31 -21
  296. data/lib/cosmos/tools/table_manager/table_config.rb +9 -3
  297. data/lib/cosmos/tools/table_manager/table_manager.rb +27 -7
  298. data/lib/cosmos/tools/test_runner/results_writer.rb +6 -6
  299. data/lib/cosmos/tools/test_runner/test_runner.rb +4 -6
  300. data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +4 -5
  301. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +1 -1
  302. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +1 -1
  303. data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +23 -6
  304. data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +44 -3
  305. data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +20 -7
  306. data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +1 -1
  307. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +11 -4
  308. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +2 -2
  309. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +1 -1
  310. data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +16 -0
  311. data/lib/cosmos/tools/tlm_viewer/screen.rb +36 -32
  312. data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +59 -50
  313. data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +2 -2
  314. data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
  315. data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +1 -0
  316. data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +22 -4
  317. data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +9 -0
  318. data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +55 -0
  319. data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +3 -2
  320. data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +3 -2
  321. data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +12 -12
  322. data/lib/cosmos/top_level.rb +34 -24
  323. data/lib/cosmos/utilities/crc.rb +108 -6
  324. data/lib/cosmos/utilities/csv.rb +68 -14
  325. data/lib/cosmos/utilities/logger.rb +2 -2
  326. data/lib/cosmos/utilities/low_fragmentation_array.rb +9 -1
  327. data/lib/cosmos/version.rb +6 -6
  328. data/lib/cosmos/win32/win32_main.rb +50 -46
  329. data/run_gui_tests.bat +3 -1
  330. data/spec/conversions/unix_time_formatted_conversion_spec.rb +2 -2
  331. data/spec/conversions/unix_time_seconds_conversion_spec.rb +2 -2
  332. data/spec/core_ext/file_spec.rb +1 -1
  333. data/spec/core_ext/objectspace_spec.rb +12 -9
  334. data/spec/core_ext/string_spec.rb +6 -0
  335. data/spec/core_ext/time_spec.rb +10 -0
  336. data/spec/gui/line_graph/line_clip_spec.rb +226 -224
  337. data/spec/gui/qt_spec.rb +81 -79
  338. data/spec/install/config/system/system.txt +0 -6
  339. data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +5 -5
  340. data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +8 -8
  341. data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  342. data/{install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt → spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  343. data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  344. data/spec/install/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
  345. data/spec/install/config/targets/SYSTEM/screens/status.txt +12 -0
  346. data/spec/install/config/targets/SYSTEM/target.txt +12 -0
  347. data/spec/interfaces/cmd_tlm_server_interface_spec.rb +9 -13
  348. data/spec/interfaces/interface_spec.rb +402 -18
  349. data/spec/interfaces/linc_interface_spec.rb +37 -39
  350. data/spec/interfaces/protocols/burst_protocol_spec.rb +300 -0
  351. data/spec/interfaces/protocols/crc_protocol_spec.rb +709 -0
  352. data/spec/interfaces/protocols/fixed_protocol_spec.rb +119 -0
  353. data/spec/interfaces/protocols/length_protocol_spec.rb +499 -0
  354. data/spec/interfaces/protocols/override_protocol_spec.rb +158 -0
  355. data/spec/interfaces/protocols/preidentified_protocol_spec.rb +149 -0
  356. data/spec/interfaces/protocols/template_protocol_spec.rb +218 -0
  357. data/spec/interfaces/protocols/terminated_protocol_spec.rb +174 -0
  358. data/spec/interfaces/serial_interface_spec.rb +35 -34
  359. data/spec/interfaces/simulated_target_interface_spec.rb +13 -13
  360. data/spec/interfaces/tcpip_client_interface_spec.rb +21 -16
  361. data/spec/interfaces/tcpip_server_interface_spec.rb +66 -69
  362. data/spec/interfaces/udp_interface_spec.rb +120 -55
  363. data/spec/io/serial_driver_spec.rb +41 -39
  364. data/spec/io/udp_sockets_spec.rb +13 -8
  365. data/spec/io/win32_serial_driver_spec.rb +62 -59
  366. data/spec/packet_logs/packet_log_reader_spec.rb +68 -47
  367. data/spec/packet_logs/packet_log_writer_spec.rb +7 -5
  368. data/spec/packets/commands_spec.rb +5 -5
  369. data/spec/packets/packet_spec.rb +2 -14
  370. data/spec/script/extract_spec.rb +21 -7
  371. data/spec/script/scripting_spec.rb +261 -6
  372. data/spec/script/telemetry_spec.rb +17 -9
  373. data/spec/spec_helper.rb +26 -10
  374. data/spec/streams/serial_stream_spec.rb +87 -82
  375. data/spec/streams/tcpip_client_stream_spec.rb +12 -4
  376. data/spec/streams/tcpip_socket_stream_spec.rb +5 -0
  377. data/spec/system/system_spec.rb +66 -50
  378. data/spec/system/target_spec.rb +33 -11
  379. data/spec/tools/cmd_tlm_server/api_spec.rb +5 -5
  380. data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +75 -15
  381. data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +125 -5
  382. data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +244 -232
  383. data/spec/tools/cmd_tlm_server/commanding_spec.rb +18 -18
  384. data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +124 -29
  385. data/spec/tools/cmd_tlm_server/interfaces_spec.rb +2 -2
  386. data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +145 -0
  387. data/spec/tools/cmd_tlm_server/router_thread_spec.rb +50 -10
  388. data/spec/tools/table_manager/tablemanager_core_spec.rb +0 -1
  389. data/spec/top_level/top_level_spec.rb +39 -11
  390. data/spec/utilities/csv_spec.rb +62 -20
  391. data/tasks/gemfile_stats.rake +6 -3
  392. data/test/performance/config/system/system_packets.txt +0 -1
  393. data/test/performance/config/system/system_threads.txt +0 -1
  394. metadata +177 -92
  395. data/autohotkey/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  396. data/autohotkey/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
  397. data/autohotkey/config/targets/COSMOS/target.txt +0 -5
  398. data/autohotkey/userpath.txt +0 -1
  399. data/demo/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  400. data/demo/config/targets/COSMOS/screens/limits_change.txt +0 -20
  401. data/demo/config/targets/COSMOS/screens/version.txt +0 -19
  402. data/demo/config/targets/COSMOS/target.txt +0 -11
  403. data/demo/config/targets/META/cmd_tlm/meta_cmd.txt +0 -10
  404. data/demo/config/targets/META/cmd_tlm/meta_tlm.txt +0 -13
  405. data/demo/userpath.txt +0 -1
  406. data/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  407. data/install/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
  408. data/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
  409. data/install/config/targets/COSMOS/screens/version.txt +0 -19
  410. data/install/config/targets/COSMOS/target.txt +0 -9
  411. data/install/config/targets/SYSTEM/README.txt +0 -1
  412. data/install/userpath.txt +0 -1
  413. data/lib/cosmos/io/tcpip_server.rb +0 -571
  414. data/lib/cosmos/packet_logs/meta_packet_log_writer.rb +0 -107
  415. data/lib/cosmos/streams/burst_stream_protocol.rb +0 -25
  416. data/lib/cosmos/streams/preidentified_stream_protocol.rb +0 -118
  417. data/lib/cosmos/streams/stream_protocol.rb +0 -373
  418. data/lib/cosmos/streams/template_stream_protocol.rb +0 -140
  419. data/lib/cosmos/streams/terminated_stream_protocol.rb +0 -85
  420. data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +0 -41
  421. data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  422. data/spec/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
  423. data/spec/install/config/targets/COSMOS/screens/version.txt +0 -19
  424. data/spec/install/config/targets/COSMOS/target.txt +0 -5
  425. data/spec/install/config/targets/META/cmd_tlm/meta_cmd.txt +0 -4
  426. data/spec/install/config/targets/META/cmd_tlm/meta_tlm.txt +0 -4
  427. data/spec/install/userpath.txt +0 -1
  428. data/spec/interfaces/stream_interface_spec.rb +0 -157
  429. data/spec/io/tcpip_server_spec.rb +0 -338
  430. data/spec/packet_logs/meta_packet_log_writer_spec.rb +0 -170
  431. data/spec/streams/burst_stream_protocol_spec.rb +0 -32
  432. data/spec/streams/fixed_stream_protocol_spec.rb +0 -113
  433. data/spec/streams/length_stream_protocol_spec.rb +0 -300
  434. data/spec/streams/preidentified_stream_protocol_spec.rb +0 -121
  435. data/spec/streams/stream_protocol_spec.rb +0 -346
  436. data/spec/streams/template_stream_protocol_spec.rb +0 -156
  437. data/spec/streams/terminated_stream_protocol_spec.rb +0 -127
  438. data/test/performance/userpath.txt +0 -1
@@ -0,0 +1,23 @@
1
+ SetWinDelay 1000
2
+ WinWaitActive Command Sequence
3
+ Sleep 2000
4
+
5
+ Click 610 70 ; Click Stop
6
+ Sleep 2000
7
+ Click 80 155 ; Time field
8
+ Sleep 500
9
+ Send {Backspace 5}61{Enter}
10
+ Click 450 70 ; Click Start
11
+ WinWaitActive Save
12
+ Send {Tab 2}{Enter}
13
+ Sleep 1000
14
+
15
+ Send ^q ; Quit
16
+ WinWaitActive Warning ; Sequence is running
17
+ Send {Enter} ; No don't quit
18
+ WinWaitActive Command Sequence
19
+ Send ^q
20
+ WinWaitActive Warning
21
+ Send {Tab}{Enter} ; Yes quit
22
+ WinWaitActive Save
23
+ Send {Tab 2}{Enter} ; No don't save
@@ -1,7 +1,7 @@
1
1
  WinWaitActive, Data Viewer ahk_class QWidget
2
- Sleep 2000
2
+ Sleep 500
3
3
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
4
- Sleep 2000
4
+ Sleep 4000
5
5
  WinActivate Data Viewer
6
6
  Sleep 500
7
7
  Send ^r ; Reset
@@ -138,4 +138,3 @@ Sleep 500
138
138
  Send {Enter}
139
139
  Sleep 500
140
140
  Send ^q
141
-
@@ -1,8 +1,8 @@
1
- SetWinDelay 500
1
+ SetWinDelay 1000
2
2
  WinWaitActive Limits Monitor
3
- Sleep 2000
3
+ Sleep 500
4
4
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
5
- Sleep 2000
5
+ Sleep 4000
6
6
  WinActivate Limits Monitor
7
7
  Sleep 3000
8
8
  Send !fp ; Options
@@ -35,19 +35,19 @@ Send n
35
35
  ; Ignore limits items
36
36
  WinWaitActive Limits Monitor
37
37
  Sleep 500
38
- Click 400 130 ; Ignore LM-2
38
+ Click 500 130 ; Ignore item
39
39
  Sleep 500
40
- Click 400 130 ; Ignore
40
+ Click 500 130 ; Ignore item
41
41
  Sleep 500
42
- Click 400 130 ; Ignore
42
+ Click 590 130 ; Ignore stale
43
43
  Sleep 500
44
- Click 400 130 ; Ignore
44
+ Click 590 130 ; Ignore stale
45
45
  Sleep 500
46
- Click 400 130 ; Ignore
46
+ Click 590 130 ; Ignore packet
47
47
  Send ^r ; Reset
48
48
  Sleep 3000
49
49
  Sleep 500
50
- Click 400 130 ; Ignore
50
+ Click 500 130 ; Ignore item
51
51
  Sleep 500
52
52
  Send ^e ; Edit Ignored
53
53
  WinWaitActive Ignored
@@ -119,5 +119,3 @@ Send {Enter}
119
119
  WinActivate Limits Monitor
120
120
  Sleep 500
121
121
  Send ^q
122
-
123
-
@@ -6,7 +6,7 @@ Send ^o
6
6
  WinWaitActive Open
7
7
  Send error.txt{Enter}
8
8
  WinWaitActive Error
9
- Click 430 215
9
+ Click 450 250
10
10
  WinWaitActive OpenGL
11
11
 
12
12
  Send ^a ; Open shape
@@ -131,4 +131,3 @@ Sleep 500
131
131
  ; Quit OpenGL Builder
132
132
  Send ^q
133
133
  Sleep 500
134
-
@@ -1,10 +1,20 @@
1
1
  SetWinDelay 500
2
2
  SetTitleMatchMode 2 ; Contain the title anywhere to match
3
3
  WinWaitActive Packet Viewer
4
- Sleep 2000
4
+ Sleep 500
5
5
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
6
- Sleep 2000
6
+ Sleep 4000
7
7
  WinActivate Packet Viewer
8
+ WinWaitActive Packet Viewer
9
+ Sleep 500
10
+
11
+ ; Edit the packet definition
12
+ Send !f ; File
13
+ Sleep 500
14
+ Send e ; Edit
15
+ Sleep 5000
16
+ Send !f{x} ; Exit text editor
17
+ WinWaitActive Packet Viewer
8
18
  Sleep 500
9
19
 
10
20
  ; Setup some initial viewing/polling options for telemetry
@@ -13,21 +23,28 @@ Sleep 500
13
23
  Send p ; Options
14
24
  WinWaitActive Options
15
25
  Send 2.0{Enter} ; Set polling rate to 2.0 seconds PV-8
26
+ WinWaitActive Packet Viewer
16
27
  Sleep 500
17
28
 
18
29
  ; Inspect a few telemetry items
19
30
  Click right 500, 180 ; Inspect the first telemetry item PV-4
20
31
  Sleep 500
21
32
  Send {Tab}{Enter}
33
+ WinWaitActive Details
22
34
  Sleep 1000
23
35
  Send {Enter}
36
+ WinWaitActive Packet Viewer
24
37
  Sleep 500
38
+
25
39
  Click right 500, 205 ; Edit the next telemetry item PV-3, PV-5
26
40
  Sleep 500
27
41
  Send {Tab 2}{Enter}
28
- Sleep 500
42
+ WinWaitActive Edit
43
+ Sleep 1000
29
44
  Send {Enter}
45
+ WinWaitActive Packet Viewer
30
46
  Sleep 500
47
+
31
48
  Click right 500, 225 ; Graph the next telemetry item PV-6
32
49
  Sleep 500
33
50
  Send {Tab 3}{Enter}
@@ -37,26 +54,15 @@ Send ^q
37
54
  WinActivate Packet Viewer
38
55
  Sleep 500
39
56
 
40
- ; Scroll through a bunch of telemetry pages
41
- Click 450 95 ; Target: COSMOS/LIMITS_CHANGE
42
- Sleep 500
43
- Send {Down}{Enter} ; Target: COSMOS/VERSION
44
- Sleep 500
45
-
46
57
  ; Switch target, and options, scroll through a bunch of telemetry pages
47
58
  Send ^f ; Switch to formatted telemetry display
48
- Click 145 95
49
- Sleep 500
50
- Send {Down}{Enter} ; Target: INST/ADCS PV-1, PV-2
51
- Sleep 500
52
- Click 450 95
53
- Sleep 500
54
- Send {Down}{Enter} ; Target: INST/HEALTH_STATUS
55
59
  Sleep 500
56
60
  Send ^b ; Toggle colorblind mode PV-7, PV-9
61
+ Sleep 1000
62
+ Send !v ; Switch to normal converted telemetry display PV-10
57
63
  Sleep 500
58
- Send ^c ; Switch to normal converted telemetry display PV-10
59
- Sleep 500
64
+ Send c
65
+ Sleep 1000
60
66
  Send ^h ; Hide ignored items
61
67
  Sleep 2000
62
68
  Send ^h ; Show ignored items
@@ -65,25 +71,36 @@ Send ^d ; Show derived items last
65
71
  Sleep 2000
66
72
  Send ^d ; Show derived items first
67
73
  Sleep 1000
68
- Click 450 95
74
+ Send !p ; Select the Packet drop down
69
75
  Sleep 500
70
- Send {Down}{Enter} ; Target: INST/IMAGE
76
+ Send {Down}{Enter} ; Target: INST/ADCS
71
77
  Sleep 500
72
- Send ^a ; Switch to raw telemetry display PV-10
78
+ Send !v ; Switch to raw telemetry display PV-10
73
79
  Sleep 500
74
- Click 450 95
80
+ Send r
81
+ Sleep 1000
82
+
83
+ Send !p ; Select the Packet drop down
75
84
  Sleep 500
76
- Send {Down}{Enter} ; Target: INST/MECH
85
+ Send {Down}{Enter} ; Target: INST/PARAMS
77
86
  Sleep 500
78
- Send ^u ; Switch to formatted telemetry with units display PV-10
87
+ Send !v ; Switch to formatted telemetry with units display PV-10
79
88
  Sleep 500
80
- Click 450 95
89
+ Send u
90
+ Sleep 1000
91
+
92
+ Send !v ; Switch to formatted telemetry display PV-10
81
93
  Sleep 500
82
- Send {Down}{Enter} ; Target: INST/MECH
94
+ Send f
95
+ Sleep 1000
96
+
97
+ Send !p ; Select the Packet drop down
83
98
  Sleep 500
84
- Click 450 95
99
+ Send {Down}{Enter} ; Target: INST/IMAGE
85
100
  Sleep 500
86
- Send {Down}{Enter} ; Target: INST/PARAMS
101
+ Send !p ; Select the Packet drop down
102
+ Sleep 500
103
+ Send {Down}{Enter} ; Target: INST/MECH
87
104
  Sleep 500
88
105
 
89
106
  ; Reset to last of the options we haven't touched, and go through
@@ -98,23 +115,23 @@ Send 1.0{Enter}
98
115
  Sleep 500
99
116
 
100
117
  ; Go through the last page of telemetry screens
101
- Click 145 95
118
+ Send !t ; Select Target drop down
102
119
  Sleep 500
103
- Send {Down 2}{Enter} ; Target: INST2/HEALTH_STATUS
120
+ Send {Down}{Enter} ; Target: INST2/HEALTH_STATUS
104
121
  Sleep 500
105
- Click 450 95
122
+ Send !p ; Select the Packet drop down
106
123
  Sleep 500
107
124
  Send {Down}{Enter} ; Target: INST2/ADCS
108
125
  Sleep 500
109
- Click 450 95
126
+ Send !p ; Select the Packet drop down
110
127
  Sleep 500
111
128
  Send {Down}{Enter} ; Target: INST2/PARAMS
112
129
  Sleep 500
113
- Click 450 95
130
+ Send !p ; Select the Packet drop down
114
131
  Sleep 500
115
132
  Send {Down}{Enter} ; Target: INST2/IMAGE
116
133
  Sleep 500
117
- Click 450 95
134
+ Send !p ; Select the Packet drop down
118
135
  Sleep 500
119
136
  Send {Down}{Enter} ; Target: INST2/MECH
120
137
  Sleep 500
@@ -197,4 +214,3 @@ Send !h{Enter} ; Bring up Help page
197
214
  Sleep 1000
198
215
  Send {Enter}
199
216
  Send ^q ; Exit packet viewer GUI
200
-
@@ -89,7 +89,7 @@ MouseClickDrag, L, 800, 300, 15, 300, 60 ; Move the bar left
89
89
 
90
90
  ; Start CmdTlmServer RPY-3
91
91
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
92
- Sleep 2000
92
+ Sleep 4000
93
93
 
94
94
  ; Shut down the CTS
95
95
  WinActivate, Command and Telemetry Server
@@ -101,4 +101,3 @@ WinActivate, Replay
101
101
  Sleep 1000
102
102
  Send ^q
103
103
  Sleep 500
104
-
@@ -524,7 +524,7 @@ Sleep 500
524
524
 
525
525
  ; Start the CmdTlmServer
526
526
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
527
- Sleep 2000
527
+ Sleep 4000
528
528
  WinActivate Script Runner
529
529
  Sleep 1000
530
530
 
@@ -586,4 +586,3 @@ Click 135 95 ; Yes
586
586
  WinWaitActive Save
587
587
  Send n
588
588
  Sleep 500
589
-
@@ -1,4 +1,4 @@
1
- SetWinDelay 500
1
+ SetWinDelay 1000
2
2
  WinWaitActive Script Runner
3
3
  Sleep 1000
4
4
 
@@ -48,4 +48,3 @@ WinWaitActive Script Runner
48
48
  Sleep 2000
49
49
  Send ^q ; File Quit
50
50
  Sleep 500
51
-
@@ -1,8 +1,7 @@
1
1
  SetWinDelay 500
2
-
3
2
  ; Start the CmdTlmServer
4
3
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
5
- Sleep 2000
4
+ Sleep 4000
6
5
 
7
6
  WinActivate Test Runner
8
7
  WinWaitActive Test Runner
@@ -48,6 +47,3 @@ WinActivate Test Runner
48
47
  WinWaitActive Test Runner
49
48
  Sleep 1000
50
49
  Send ^q ; File Quit
51
-
52
-
53
-
@@ -5,9 +5,7 @@ if (ErrorLevel == 0) ; if we did not time out waiting
5
5
  {
6
6
  Send {Enter}{Esc} ; Close the window
7
7
  }
8
- WinWaitActive Error
9
8
  Sleep 1000
10
- Send {Tab}{Enter}
9
+ Send {Esc}
11
10
  Sleep 1000
12
11
  Send ^q
13
-
@@ -20,7 +20,7 @@ Sleep 500
20
20
 
21
21
  ; Connect to the CT server
22
22
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
23
- Sleep 2000
23
+ Sleep 4000
24
24
  WinActivate Telemetry Grapher
25
25
  Click 55 95 ; Start TG-3
26
26
  Sleep 500
@@ -656,5 +656,3 @@ Send {Enter}
656
656
  Sleep 500
657
657
  Send y
658
658
  Sleep 500
659
-
660
-
@@ -3,7 +3,7 @@ WinWaitActive Telemetry Grapher
3
3
 
4
4
  ; Connect to the CT server
5
5
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
6
- Sleep 2000
6
+ Sleep 4000
7
7
  WinActivate Telemetry Grapher
8
8
  Send {Enter}
9
9
 
@@ -21,4 +21,3 @@ Sleep 2000
21
21
  ; Quit Telemetry Grapher
22
22
  WinActivate Telemetry Grapher
23
23
  Send ^q
24
-
@@ -1,9 +1,9 @@
1
1
  SetWinDelay 500
2
2
  SetKeyDelay 10
3
3
 
4
- Sleep 2000
4
+ Sleep 500
5
5
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
6
- Sleep 2000
6
+ Sleep 4000
7
7
 
8
8
  WinActivate Telemetry Viewer
9
9
  Sleep 1000
@@ -16,6 +16,12 @@ Send {Enter}
16
16
  WinWaitActive Telemetry Viewer
17
17
  Sleep 1000
18
18
 
19
+ Click 260 95 ; Edit Screen
20
+ Sleep 2000
21
+ Send !f{x} ; Exit text editor
22
+ WinActivate Telemetry Viewer
23
+ WinWaitActive Telemetry Viewer
24
+
19
25
  Click 200 95 ; Show Screen TV-1, TV-2
20
26
  Sleep 2000
21
27
 
@@ -130,4 +136,3 @@ Send ^q
130
136
  WinWaitActive Confirm
131
137
  Send {Enter}
132
138
  Sleep 500
133
-
@@ -8,9 +8,9 @@ Send {Tab}
8
8
  Sleep 500
9
9
  Send {Enter}
10
10
 
11
- Sleep 2000
11
+ Sleep 500
12
12
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
13
- Sleep 2000
13
+ Sleep 4000
14
14
  Run ruby.exe %A_ScriptDir%/ScriptRunner -w 600 -t 600
15
15
 
16
16
  WinWaitActive Script
@@ -47,4 +47,3 @@ Sleep 500
47
47
  Send ^q
48
48
  Sleep 500
49
49
  Send y
50
-
@@ -1,7 +1,7 @@
1
1
  SetWinDelay 500
2
2
  SetKeyDelay 10
3
3
 
4
- Sleep 2000
4
+ Sleep 500
5
5
  Run ruby.exe %A_ScriptDir%/CmdTlmServer
6
6
  WinActivate "INST ADCS"
7
7
  Sleep 4000
@@ -17,4 +17,3 @@ WinActivate "INST ADCS"
17
17
  Sleep 2000
18
18
  Click 497 10 ; Close the window
19
19
  Sleep 500
20
-
@@ -1,6 +1,6 @@
1
1
  # encoding: ascii-8bit
2
2
 
3
- # Copyright 2014 Ball Aerospace & Technologies Corp.
3
+ # Copyright 2017 Ball Aerospace & Technologies Corp.
4
4
  # All Rights Reserved.
5
5
  #
6
6
  # This program is free software; you can modify and/or redistribute it
@@ -25,7 +25,11 @@ spec = Gem::Specification.new do |s|
25
25
  s.email = ['rmelton@ball.com', 'jmthomas@ball.com']
26
26
  s.homepage = 'https://github.com/BallAerospace/COSMOS'
27
27
 
28
- s.platform = Gem::Platform::RUBY
28
+ if RUBY_ENGINE == 'ruby'
29
+ s.platform = Gem::Platform::RUBY
30
+ else
31
+ s.platform = Gem::Platform::CURRENT
32
+ end
29
33
  if ENV['VERSION']
30
34
  s.version = ENV['VERSION'].dup
31
35
  else
@@ -39,21 +43,23 @@ spec = Gem::Specification.new do |s|
39
43
  s.executables << 'cstol_converter'
40
44
  s.executables << 'xtce_converter'
41
45
 
42
- # Ruby C Extensions
43
- s.extensions << 'ext/cosmos/ext/array/extconf.rb'
44
- s.extensions << 'ext/cosmos/ext/buffered_file/extconf.rb'
45
- s.extensions << 'ext/cosmos/ext/config_parser/extconf.rb'
46
- s.extensions << 'ext/cosmos/ext/cosmos_io/extconf.rb'
47
- s.extensions << 'ext/cosmos/ext/crc/extconf.rb'
48
- s.extensions << 'ext/cosmos/ext/line_graph/extconf.rb'
49
- s.extensions << 'ext/cosmos/ext/low_fragmentation_array/extconf.rb'
50
- s.extensions << 'ext/cosmos/ext/packet/extconf.rb'
51
- s.extensions << 'ext/cosmos/ext/platform/extconf.rb'
52
- s.extensions << 'ext/cosmos/ext/polynomial_conversion/extconf.rb'
53
- s.extensions << 'ext/cosmos/ext/string/extconf.rb'
54
- s.extensions << 'ext/cosmos/ext/tabbed_plots_config/extconf.rb'
55
- s.extensions << 'ext/cosmos/ext/telemetry/extconf.rb'
56
- s.extensions << 'ext/mkrf_conf.rb'
46
+ if RUBY_ENGINE == 'ruby'
47
+ # Ruby C Extensions - MRI Only
48
+ s.extensions << 'ext/cosmos/ext/array/extconf.rb'
49
+ s.extensions << 'ext/cosmos/ext/buffered_file/extconf.rb'
50
+ s.extensions << 'ext/cosmos/ext/config_parser/extconf.rb'
51
+ s.extensions << 'ext/cosmos/ext/cosmos_io/extconf.rb'
52
+ s.extensions << 'ext/cosmos/ext/crc/extconf.rb'
53
+ s.extensions << 'ext/cosmos/ext/line_graph/extconf.rb'
54
+ s.extensions << 'ext/cosmos/ext/low_fragmentation_array/extconf.rb'
55
+ s.extensions << 'ext/cosmos/ext/packet/extconf.rb'
56
+ s.extensions << 'ext/cosmos/ext/platform/extconf.rb'
57
+ s.extensions << 'ext/cosmos/ext/polynomial_conversion/extconf.rb'
58
+ s.extensions << 'ext/cosmos/ext/string/extconf.rb'
59
+ s.extensions << 'ext/cosmos/ext/tabbed_plots_config/extconf.rb'
60
+ s.extensions << 'ext/cosmos/ext/telemetry/extconf.rb'
61
+ s.extensions << 'ext/mkrf_conf.rb'
62
+ end
57
63
 
58
64
  # Files are defined in Manifest.txt
59
65
  s.files =
@@ -76,11 +82,11 @@ spec = Gem::Specification.new do |s|
76
82
  s.add_runtime_dependency 'pry-doc', '>= 0.5', '< 0.7'
77
83
  s.add_runtime_dependency 'yard', '>= 0.8', '< 0.10'
78
84
  s.add_runtime_dependency 'uuidtools', '~> 2.1.0'
79
- s.add_runtime_dependency 'opengl', '>= 0.7', '< 0.10'
80
85
  s.add_runtime_dependency 'snmp', '~> 1.0'
81
86
  s.add_runtime_dependency 'rubyzip', '~> 1.1.0'
82
- s.add_runtime_dependency 'qtbindings', '~> 4.8.6', '>= 4.8.6.2'
83
87
  s.add_runtime_dependency 'nokogiri', '~> 1.6'
88
+ s.add_runtime_dependency 'opengl', '>= 0.7', '< 0.10' if RUBY_ENGINE == 'ruby' # MRI Only
89
+ s.add_runtime_dependency 'qtbindings', '~> 4.8.6', '>= 4.8.6.2' if RUBY_ENGINE == 'ruby' # MRI Only
84
90
 
85
91
  # Development Dependencies
86
92
  s.add_development_dependency 'rspec', '~> 3.5.0'
@@ -93,9 +99,9 @@ spec = Gem::Specification.new do |s|
93
99
  s.add_development_dependency 'guard-bundler', '~> 2.0'
94
100
  s.add_development_dependency 'guard-rspec', '~> 4.0'
95
101
  s.add_development_dependency 'simplecov', '~> 0.11'
96
- s.add_development_dependency 'ruby-prof', '~> 0.15.0'
97
102
  s.add_development_dependency 'coveralls', '~> 0.8'
98
103
  s.add_development_dependency 'benchmark-ips', '~> 2.0'
104
+ s.add_development_dependency 'ruby-prof', '~> 0.15.0' if RUBY_ENGINE == 'ruby' # MRI Only
99
105
 
100
106
  s.post_install_message = "Thanks for installing Ball Aerospace COSMOS!\nStart your first project with: cosmos demo demo\n"
101
107
  end