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.
- checksums.yaml +4 -4
- data/.rubocop.yml +23 -0
- data/.travis.yml +1 -0
- data/.yardopts +3 -0
- data/Gemfile +1 -1
- data/Manifest.txt +137 -52
- data/Rakefile +50 -44
- data/autohotkey/config/system/system.txt +0 -5
- data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +6 -1
- data/autohotkey/config/targets/INST/screens/extra.txt +19 -0
- data/autohotkey/config/targets/INST/sequences/run_sequence.txt +1 -0
- data/autohotkey/config/targets/META/screens/data.txt +12 -0
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/autohotkey/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +14 -0
- data/autohotkey/config/targets/SYSTEM/screens/meta.txt +14 -0
- data/autohotkey/config/targets/SYSTEM/target.txt +12 -0
- data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
- data/autohotkey/config/tools/test_runner/test_runner2.txt +1 -1
- data/autohotkey/tools/CmdSequence +14 -0
- data/autohotkey/tools/CmdSequenceAHK +23 -0
- data/autohotkey/tools/CmdSequenceAHK2 +16 -0
- data/autohotkey/tools/cmd_extractor.ahk +2 -2
- data/autohotkey/tools/cmd_sender.ahk +4 -6
- data/autohotkey/tools/cmd_sequence.ahk +215 -0
- data/autohotkey/tools/cmd_sequence2.ahk +23 -0
- data/autohotkey/tools/data_viewer.ahk +2 -3
- data/autohotkey/tools/limits_monitor.ahk +9 -11
- data/autohotkey/tools/open_gl_builder.ahk +1 -2
- data/autohotkey/tools/packet_viewer.ahk +51 -35
- data/autohotkey/tools/replay.ahk +1 -2
- data/autohotkey/tools/script_runner.ahk +1 -2
- data/autohotkey/tools/script_runner2.ahk +1 -2
- data/autohotkey/tools/test_runner2.ahk +1 -5
- data/autohotkey/tools/test_runner3.ahk +1 -3
- data/autohotkey/tools/tlm_grapher.ahk +1 -3
- data/autohotkey/tools/tlm_grapher3.ahk +1 -2
- data/autohotkey/tools/tlm_viewer.ahk +8 -3
- data/autohotkey/tools/tlm_viewer2.ahk +2 -3
- data/autohotkey/tools/tlm_viewer5.ahk +1 -2
- data/cosmos.gemspec +26 -20
- data/data/cmd_sequence.png +0 -0
- data/data/config/_array_params.yaml +23 -0
- data/data/config/_id_items.yaml +24 -0
- data/data/config/_id_params.yaml +58 -0
- data/data/config/_interfaces.yaml +206 -0
- data/data/config/_items.yaml +20 -0
- data/data/config/_params.yaml +58 -0
- data/data/config/cmd_tlm_server.yaml +110 -0
- data/data/config/command.yaml +38 -0
- data/data/config/command_modifiers.yaml +127 -0
- data/data/config/command_telemetry.yaml +3 -0
- data/data/config/data_viewer.yaml +43 -0
- data/data/config/handbook_creator.yaml +23 -0
- data/data/config/housekeeping_params.yaml +71 -0
- data/data/config/interface_modifiers.yaml +44 -0
- data/data/config/item_modifiers.yaml +172 -0
- data/data/config/launcher.yaml +117 -0
- data/data/config/limits_monitor.yaml +53 -0
- data/data/config/linegraph_params.yaml +30 -0
- data/data/config/linegraph_plot.yaml +106 -0
- data/data/config/page_modifiers.yaml +128 -0
- data/data/config/param_item_modifiers.yaml +41 -0
- data/data/config/parameter_modifiers.yaml +144 -0
- data/data/config/protocols.yaml +257 -0
- data/data/config/screen.yaml +151 -0
- data/data/config/script_runner.yaml +15 -0
- data/data/config/system.yaml +153 -0
- data/data/config/table_manager.yaml +76 -0
- data/data/config/table_parameter_modifiers.yaml +9 -0
- data/data/config/target.yaml +71 -0
- data/data/config/telemetry.yaml +73 -0
- data/data/config/telemetry_modifiers.yaml +129 -0
- data/data/config/test_runner.yaml +118 -0
- data/data/config/tlm_extractor.yaml +109 -0
- data/data/config/tlm_grapher.yaml +78 -0
- data/data/config/tlm_viewer.yaml +107 -0
- data/data/config/unknown.yaml +3 -0
- data/data/config/widgets.yaml +1339 -0
- data/data/config/xy_params.yaml +50 -0
- data/data/config/xy_plot.yaml +12 -0
- data/data/config_editor.png +0 -0
- data/data/crc.txt +172 -161
- data/data/delete.png +0 -0
- data/demo/config/data/crc.txt +56 -36
- data/demo/config/data/meta_init.txt +1 -4
- data/demo/config/system/system.txt +15 -3
- data/demo/config/system/system2.txt +13 -3
- data/demo/config/targets/EXAMPLE/lib/example_interface.rb +2 -6
- data/demo/config/targets/EXAMPLE/target.txt +3 -1
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +1 -0
- data/demo/config/targets/INST/lib/inst_dump_component.rb +34 -0
- data/demo/config/targets/INST/screens/adcs.txt +39 -15
- data/demo/config/targets/INST/screens/commanding.txt +26 -19
- data/demo/config/targets/INST/screens/spacing_box.txt +44 -0
- data/demo/config/targets/INST/screens/spacing_grid.txt +78 -0
- data/demo/config/targets/INST/screens/tabs.txt +0 -2
- data/demo/config/targets/INST/sequences/sequence.tsv +3 -0
- data/demo/config/targets/INST/tables/EventAction.csv +9 -0
- data/demo/config/targets/INST/tables/EventAction.dat +0 -0
- data/demo/config/targets/INST/tables/McConfigTable.csv +20 -0
- data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
- data/demo/config/targets/INST/target.txt +4 -0
- data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +2 -0
- data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +2 -0
- data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +6 -0
- data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +38 -0
- data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -3
- data/demo/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/demo/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/demo/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
- data/demo/config/targets/SYSTEM/lib/limits_groups.rb +39 -0
- data/demo/config/targets/SYSTEM/screens/status.txt +1 -1
- data/demo/config/targets/SYSTEM/target.txt +12 -0
- data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +1 -1
- data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +8 -5
- data/demo/config/targets/TEMPLATED/target.txt +2 -0
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +15 -6
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +13 -5
- data/demo/config/tools/data_viewer/data_viewer.txt +9 -0
- data/demo/config/tools/launcher/launcher.txt +9 -6
- data/demo/config/tools/launcher/launcher2.txt +16 -13
- data/demo/config/tools/launcher/launcher_mini.txt +45 -0
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +12 -11
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +12 -11
- data/demo/config/tools/test_runner/test_runner.txt +1 -1
- data/demo/config/tools/tlm_viewer/tlm_viewer.txt +5 -5
- data/demo/lib/example_background_task.rb +9 -5
- data/demo/lib/example_target.rb +5 -15
- data/demo/lib/scpi_target.rb +4 -10
- data/demo/procedures/cosmos_api_test.rb +17 -0
- data/demo/tools/CmdSequence +16 -0
- data/demo/tools/CmdSequence.bat +9 -0
- data/demo/tools/ConfigEditor +16 -0
- data/demo/tools/ConfigEditor.bat +9 -0
- data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
- data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/ext/cosmos/ext/packet/packet.c +5 -5
- data/install/config/data/crc.txt +12 -8
- data/install/config/system/system.txt +13 -3
- data/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +14 -0
- data/install/config/targets/SYSTEM/target.txt +12 -0
- data/install/tools/CmdSequence +16 -0
- data/install/tools/CmdSequence.bat +9 -0
- data/install/tools/ConfigEditor +16 -0
- data/install/tools/ConfigEditor.bat +9 -0
- data/install/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
- data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/lib/cosmos.rb +1 -1
- data/lib/cosmos/config/config_parser.rb +147 -59
- data/lib/cosmos/config/meta_config_parser.rb +57 -0
- data/lib/cosmos/conversions/polynomial_conversion.rb +20 -4
- data/lib/cosmos/conversions/unix_time_conversion.rb +4 -4
- data/lib/cosmos/core_ext/array.rb +45 -5
- data/lib/cosmos/core_ext/cosmos_io.rb +31 -15
- data/lib/cosmos/core_ext/file.rb +2 -2
- data/lib/cosmos/core_ext/kernel.rb +1 -6
- data/lib/cosmos/core_ext/objectspace.rb +0 -2
- data/lib/cosmos/core_ext/string.rb +27 -4
- data/lib/cosmos/core_ext/time.rb +39 -10
- data/lib/cosmos/gui/choosers/combobox_chooser.rb +37 -26
- data/lib/cosmos/gui/choosers/file_chooser.rb +23 -6
- data/lib/cosmos/gui/choosers/float_chooser.rb +13 -11
- data/lib/cosmos/gui/choosers/integer_chooser.rb +13 -11
- data/lib/cosmos/gui/choosers/string_chooser.rb +18 -36
- data/lib/cosmos/gui/choosers/telemetry_chooser.rb +64 -64
- data/lib/cosmos/gui/choosers/value_chooser.rb +15 -15
- data/lib/cosmos/gui/dialogs/about_dialog.rb +18 -13
- data/lib/cosmos/gui/dialogs/calendar_dialog.rb +11 -3
- data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/details_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/exception_dialog.rb +7 -7
- data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +20 -15
- data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +143 -0
- data/lib/cosmos/gui/dialogs/legal_dialog.rb +6 -5
- data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +5 -2
- data/lib/cosmos/gui/dialogs/progress_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/pry_dialog.rb +4 -4
- data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +3 -0
- data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +7 -6
- data/lib/cosmos/gui/dialogs/splash.rb +1 -1
- data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +1 -1
- data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +114 -0
- data/lib/cosmos/gui/line_graph/line_graph.rb +9 -10
- data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +7 -5
- data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +3 -7
- data/lib/cosmos/gui/line_graph/line_graph_popups.rb +3 -8
- data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +2 -7
- data/lib/cosmos/gui/line_graph/overview_graph.rb +6 -1
- data/lib/cosmos/gui/opengl/earth_model.rb +6 -3
- data/lib/cosmos/gui/opengl/gl_bounds.rb +11 -23
- data/lib/cosmos/gui/opengl/gl_light.rb +3 -4
- data/lib/cosmos/gui/opengl/gl_material.rb +3 -4
- data/lib/cosmos/gui/opengl/gl_scene.rb +10 -4
- data/lib/cosmos/gui/opengl/gl_shape.rb +6 -2
- data/lib/cosmos/gui/opengl/gl_viewer.rb +5 -5
- data/lib/cosmos/gui/opengl/gl_viewport.rb +11 -12
- data/lib/cosmos/gui/opengl/moon_model.rb +6 -3
- data/lib/cosmos/gui/opengl/stl_reader.rb +8 -9
- data/lib/cosmos/gui/opengl/stl_shape.rb +4 -5
- data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +7 -7
- data/lib/cosmos/gui/qt.rb +1 -1
- data/lib/cosmos/gui/qt_tool.rb +21 -10
- data/lib/cosmos/gui/text/completion.rb +23 -2
- data/lib/cosmos/gui/text/completion_text_edit.rb +38 -23
- data/lib/cosmos/gui/utilities/analyze_log.rb +1 -1
- data/lib/cosmos/gui/utilities/screenshot.rb +2 -2
- data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +11 -1
- data/lib/cosmos/gui/widgets/packet_log_frame.rb +19 -6
- data/lib/cosmos/interfaces.rb +10 -0
- data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +28 -47
- data/lib/cosmos/interfaces/interface.rb +240 -22
- data/lib/cosmos/interfaces/linc_interface.rb +3 -5
- data/lib/cosmos/interfaces/protocols/burst_protocol.rb +173 -0
- data/lib/cosmos/interfaces/protocols/crc_protocol.rb +141 -0
- data/lib/cosmos/{streams/fixed_stream_protocol.rb → interfaces/protocols/fixed_protocol.rb} +40 -37
- data/lib/cosmos/{streams/length_stream_protocol.rb → interfaces/protocols/length_protocol.rb} +55 -48
- data/lib/cosmos/interfaces/protocols/override_protocol.rb +52 -0
- data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +141 -0
- data/lib/cosmos/interfaces/protocols/protocol.rb +60 -0
- data/lib/cosmos/interfaces/protocols/template_protocol.rb +209 -0
- data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +81 -0
- data/lib/cosmos/interfaces/serial_interface.rb +28 -23
- data/lib/cosmos/interfaces/simulated_target_interface.rb +27 -16
- data/lib/cosmos/interfaces/stream_interface.rb +36 -108
- data/lib/cosmos/interfaces/tcpip_client_interface.rb +21 -21
- data/lib/cosmos/interfaces/tcpip_server_interface.rb +555 -94
- data/lib/cosmos/interfaces/udp_interface.rb +51 -83
- data/lib/cosmos/io/buffered_file.rb +92 -2
- data/lib/cosmos/io/json_drb.rb +2 -2
- data/lib/cosmos/io/posix_serial_driver.rb +3 -1
- data/lib/cosmos/io/raw_logger.rb +3 -3
- data/lib/cosmos/io/serial_driver.rb +14 -5
- data/lib/cosmos/io/win32_serial_driver.rb +16 -4
- data/lib/cosmos/packet_logs.rb +0 -1
- data/lib/cosmos/packet_logs/packet_log_reader.rb +11 -1
- data/lib/cosmos/packet_logs/packet_log_writer.rb +31 -13
- data/lib/cosmos/packets/binary_accessor.rb +599 -32
- data/lib/cosmos/packets/commands.rb +48 -24
- data/lib/cosmos/packets/packet.rb +140 -54
- data/lib/cosmos/packets/packet_config.rb +0 -2
- data/lib/cosmos/packets/parsers/packet_item_parser.rb +10 -2
- data/lib/cosmos/packets/structure.rb +81 -33
- data/lib/cosmos/packets/structure_item.rb +45 -5
- data/lib/cosmos/packets/telemetry.rb +149 -55
- data/lib/cosmos/script/api_shared.rb +1000 -0
- data/lib/cosmos/script/commands.rb +2 -2
- data/lib/cosmos/script/extract.rb +19 -4
- data/lib/cosmos/script/limits.rb +2 -0
- data/lib/cosmos/script/script.rb +1 -1
- data/lib/cosmos/script/scripting.rb +4 -784
- data/lib/cosmos/script/telemetry.rb +44 -23
- data/lib/cosmos/script/tools.rb +15 -69
- data/lib/cosmos/streams/serial_stream.rb +12 -19
- data/lib/cosmos/streams/stream.rb +2 -11
- data/lib/cosmos/streams/tcpip_socket_stream.rb +3 -13
- data/lib/cosmos/system/system.rb +187 -31
- data/lib/cosmos/system/target.rb +11 -2
- data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +12 -11
- data/lib/cosmos/tools/cmd_sender/{cmd_sender_item_delegate.rb → cmd_param_table_item_delegate.rb} +11 -10
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +209 -164
- data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +652 -0
- data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +510 -0
- data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +194 -0
- data/lib/cosmos/tools/cmd_tlm_server/api.rb +179 -5
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +31 -14
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +23 -16
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +92 -20
- data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +1 -1
- data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +17 -4
- data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +0 -5
- data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +1 -2
- data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +4 -4
- data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +121 -0
- data/lib/cosmos/tools/cmd_tlm_server/routers.rb +8 -4
- data/lib/cosmos/tools/config_editor/config_editor.rb +720 -0
- data/lib/cosmos/tools/config_editor/config_editor_frame.rb +675 -0
- data/lib/cosmos/tools/data_viewer/data_viewer.rb +44 -27
- data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +8 -22
- data/lib/cosmos/tools/launcher/launcher.rb +29 -12
- data/lib/cosmos/tools/launcher/launcher_config.rb +1 -1
- data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +153 -42
- data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +44 -6
- data/lib/cosmos/tools/replay/replay.rb +36 -20
- data/lib/cosmos/tools/replay/replay_server.rb +1 -1
- data/lib/cosmos/tools/script_runner/script_runner_config.rb +1 -1
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +31 -21
- data/lib/cosmos/tools/table_manager/table_config.rb +9 -3
- data/lib/cosmos/tools/table_manager/table_manager.rb +27 -7
- data/lib/cosmos/tools/test_runner/results_writer.rb +6 -6
- data/lib/cosmos/tools/test_runner/test_runner.rb +4 -6
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +4 -5
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +1 -1
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +23 -6
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +44 -3
- data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +20 -7
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +11 -4
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +2 -2
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +1 -1
- data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +16 -0
- data/lib/cosmos/tools/tlm_viewer/screen.rb +36 -32
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +59 -50
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +2 -2
- data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +1 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +22 -4
- data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +9 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +55 -0
- data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +3 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +3 -2
- data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +12 -12
- data/lib/cosmos/top_level.rb +34 -24
- data/lib/cosmos/utilities/crc.rb +108 -6
- data/lib/cosmos/utilities/csv.rb +68 -14
- data/lib/cosmos/utilities/logger.rb +2 -2
- data/lib/cosmos/utilities/low_fragmentation_array.rb +9 -1
- data/lib/cosmos/version.rb +6 -6
- data/lib/cosmos/win32/win32_main.rb +50 -46
- data/run_gui_tests.bat +3 -1
- data/spec/conversions/unix_time_formatted_conversion_spec.rb +2 -2
- data/spec/conversions/unix_time_seconds_conversion_spec.rb +2 -2
- data/spec/core_ext/file_spec.rb +1 -1
- data/spec/core_ext/objectspace_spec.rb +12 -9
- data/spec/core_ext/string_spec.rb +6 -0
- data/spec/core_ext/time_spec.rb +10 -0
- data/spec/gui/line_graph/line_clip_spec.rb +226 -224
- data/spec/gui/qt_spec.rb +81 -79
- data/spec/install/config/system/system.txt +0 -6
- data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +5 -5
- data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +8 -8
- data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
- data/{install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt → spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
- data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
- data/spec/install/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
- data/spec/install/config/targets/SYSTEM/screens/status.txt +12 -0
- data/spec/install/config/targets/SYSTEM/target.txt +12 -0
- data/spec/interfaces/cmd_tlm_server_interface_spec.rb +9 -13
- data/spec/interfaces/interface_spec.rb +402 -18
- data/spec/interfaces/linc_interface_spec.rb +37 -39
- data/spec/interfaces/protocols/burst_protocol_spec.rb +300 -0
- data/spec/interfaces/protocols/crc_protocol_spec.rb +709 -0
- data/spec/interfaces/protocols/fixed_protocol_spec.rb +119 -0
- data/spec/interfaces/protocols/length_protocol_spec.rb +499 -0
- data/spec/interfaces/protocols/override_protocol_spec.rb +158 -0
- data/spec/interfaces/protocols/preidentified_protocol_spec.rb +149 -0
- data/spec/interfaces/protocols/template_protocol_spec.rb +218 -0
- data/spec/interfaces/protocols/terminated_protocol_spec.rb +174 -0
- data/spec/interfaces/serial_interface_spec.rb +35 -34
- data/spec/interfaces/simulated_target_interface_spec.rb +13 -13
- data/spec/interfaces/tcpip_client_interface_spec.rb +21 -16
- data/spec/interfaces/tcpip_server_interface_spec.rb +66 -69
- data/spec/interfaces/udp_interface_spec.rb +120 -55
- data/spec/io/serial_driver_spec.rb +41 -39
- data/spec/io/udp_sockets_spec.rb +13 -8
- data/spec/io/win32_serial_driver_spec.rb +62 -59
- data/spec/packet_logs/packet_log_reader_spec.rb +68 -47
- data/spec/packet_logs/packet_log_writer_spec.rb +7 -5
- data/spec/packets/commands_spec.rb +5 -5
- data/spec/packets/packet_spec.rb +2 -14
- data/spec/script/extract_spec.rb +21 -7
- data/spec/script/scripting_spec.rb +261 -6
- data/spec/script/telemetry_spec.rb +17 -9
- data/spec/spec_helper.rb +26 -10
- data/spec/streams/serial_stream_spec.rb +87 -82
- data/spec/streams/tcpip_client_stream_spec.rb +12 -4
- data/spec/streams/tcpip_socket_stream_spec.rb +5 -0
- data/spec/system/system_spec.rb +66 -50
- data/spec/system/target_spec.rb +33 -11
- data/spec/tools/cmd_tlm_server/api_spec.rb +5 -5
- data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +75 -15
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +125 -5
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +244 -232
- data/spec/tools/cmd_tlm_server/commanding_spec.rb +18 -18
- data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +124 -29
- data/spec/tools/cmd_tlm_server/interfaces_spec.rb +2 -2
- data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +145 -0
- data/spec/tools/cmd_tlm_server/router_thread_spec.rb +50 -10
- data/spec/tools/table_manager/tablemanager_core_spec.rb +0 -1
- data/spec/top_level/top_level_spec.rb +39 -11
- data/spec/utilities/csv_spec.rb +62 -20
- data/tasks/gemfile_stats.rake +6 -3
- data/test/performance/config/system/system_packets.txt +0 -1
- data/test/performance/config/system/system_threads.txt +0 -1
- metadata +177 -92
- data/autohotkey/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/autohotkey/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
- data/autohotkey/config/targets/COSMOS/target.txt +0 -5
- data/autohotkey/userpath.txt +0 -1
- data/demo/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/demo/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/demo/config/targets/COSMOS/screens/version.txt +0 -19
- data/demo/config/targets/COSMOS/target.txt +0 -11
- data/demo/config/targets/META/cmd_tlm/meta_cmd.txt +0 -10
- data/demo/config/targets/META/cmd_tlm/meta_tlm.txt +0 -13
- data/demo/userpath.txt +0 -1
- data/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/install/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
- data/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/install/config/targets/COSMOS/screens/version.txt +0 -19
- data/install/config/targets/COSMOS/target.txt +0 -9
- data/install/config/targets/SYSTEM/README.txt +0 -1
- data/install/userpath.txt +0 -1
- data/lib/cosmos/io/tcpip_server.rb +0 -571
- data/lib/cosmos/packet_logs/meta_packet_log_writer.rb +0 -107
- data/lib/cosmos/streams/burst_stream_protocol.rb +0 -25
- data/lib/cosmos/streams/preidentified_stream_protocol.rb +0 -118
- data/lib/cosmos/streams/stream_protocol.rb +0 -373
- data/lib/cosmos/streams/template_stream_protocol.rb +0 -140
- data/lib/cosmos/streams/terminated_stream_protocol.rb +0 -85
- data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +0 -41
- data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/spec/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/spec/install/config/targets/COSMOS/screens/version.txt +0 -19
- data/spec/install/config/targets/COSMOS/target.txt +0 -5
- data/spec/install/config/targets/META/cmd_tlm/meta_cmd.txt +0 -4
- data/spec/install/config/targets/META/cmd_tlm/meta_tlm.txt +0 -4
- data/spec/install/userpath.txt +0 -1
- data/spec/interfaces/stream_interface_spec.rb +0 -157
- data/spec/io/tcpip_server_spec.rb +0 -338
- data/spec/packet_logs/meta_packet_log_writer_spec.rb +0 -170
- data/spec/streams/burst_stream_protocol_spec.rb +0 -32
- data/spec/streams/fixed_stream_protocol_spec.rb +0 -113
- data/spec/streams/length_stream_protocol_spec.rb +0 -300
- data/spec/streams/preidentified_stream_protocol_spec.rb +0 -121
- data/spec/streams/stream_protocol_spec.rb +0 -346
- data/spec/streams/template_stream_protocol_spec.rb +0 -156
- data/spec/streams/terminated_stream_protocol_spec.rb +0 -127
- data/test/performance/userpath.txt +0 -1
data/Rakefile
CHANGED
|
@@ -70,7 +70,7 @@ class RakeCrc32
|
|
|
70
70
|
|
|
71
71
|
end
|
|
72
72
|
|
|
73
|
-
require 'yard'
|
|
73
|
+
require 'yard' if RUBY_ENGINE == 'ruby'
|
|
74
74
|
|
|
75
75
|
# Import the rake tasks
|
|
76
76
|
import 'tasks/manifest.rake'
|
|
@@ -88,52 +88,56 @@ task :require_version do
|
|
|
88
88
|
end
|
|
89
89
|
|
|
90
90
|
task :devkit do
|
|
91
|
-
if
|
|
92
|
-
if
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
91
|
+
if RUBY_ENGINE == 'ruby'
|
|
92
|
+
if RUBY_PLATFORM[0..2] == 'x64'
|
|
93
|
+
if File.exist?("C:/Devkit64/bin")
|
|
94
|
+
ENV['PATH'] = 'C:\\Devkit64\\bin;C:\\Devkit64\\mingw\\bin;' + ENV['PATH']
|
|
95
|
+
end
|
|
96
|
+
else
|
|
97
|
+
if File.exist?("C:/Devkit/bin")
|
|
98
|
+
ENV['PATH'] = 'C:\\Devkit\\bin;C:\\Devkit\\mingw\\bin;' + ENV['PATH']
|
|
99
|
+
end
|
|
98
100
|
end
|
|
99
101
|
end
|
|
100
102
|
end
|
|
101
103
|
|
|
102
104
|
task :build => [:devkit] do
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
105
|
+
if RUBY_ENGINE == 'ruby'
|
|
106
|
+
_, platform, *_ = RUBY_PLATFORM.split("-")
|
|
107
|
+
saved = Dir.pwd
|
|
108
|
+
shared_extension = 'so'
|
|
109
|
+
shared_extension = 'bundle' if platform =~ /darwin/
|
|
110
|
+
|
|
111
|
+
extensions = [
|
|
112
|
+
'crc',
|
|
113
|
+
'low_fragmentation_array',
|
|
114
|
+
'polynomial_conversion',
|
|
115
|
+
'config_parser',
|
|
116
|
+
'string',
|
|
117
|
+
'array',
|
|
118
|
+
'cosmos_io',
|
|
119
|
+
'tabbed_plots_config',
|
|
120
|
+
'telemetry',
|
|
121
|
+
'line_graph',
|
|
122
|
+
'packet',
|
|
123
|
+
'platform',
|
|
124
|
+
'buffered_file']
|
|
125
|
+
|
|
126
|
+
extensions.each do |extension_name|
|
|
127
|
+
Dir.chdir "ext/cosmos/ext/#{extension_name}"
|
|
128
|
+
FileUtils.rm_f Dir.glob('*.o')
|
|
129
|
+
FileUtils.rm_f Dir.glob("*.#{shared_extension}")
|
|
130
|
+
FileUtils.rm_f Dir.glob('*.def')
|
|
131
|
+
FileUtils.rm_f 'Makefile'
|
|
132
|
+
system('ruby extconf.rb')
|
|
133
|
+
system('make')
|
|
134
|
+
FileUtils.copy("#{extension_name}.#{shared_extension}", '../../../../lib/cosmos/ext/.')
|
|
135
|
+
FileUtils.rm_f Dir.glob('*.o')
|
|
136
|
+
FileUtils.rm_f Dir.glob("*.#{shared_extension}")
|
|
137
|
+
FileUtils.rm_f Dir.glob('*.def')
|
|
138
|
+
FileUtils.rm_f 'Makefile'
|
|
139
|
+
Dir.chdir saved
|
|
140
|
+
end
|
|
137
141
|
end
|
|
138
142
|
end
|
|
139
143
|
|
|
@@ -250,8 +254,10 @@ task :stress do
|
|
|
250
254
|
end
|
|
251
255
|
end
|
|
252
256
|
|
|
253
|
-
|
|
254
|
-
|
|
257
|
+
if RUBY_ENGINE == 'ruby'
|
|
258
|
+
YARD::Rake::YardocTask.new do |t|
|
|
259
|
+
t.options = ['--protected'] # See all options by typing 'yardoc --help'
|
|
260
|
+
end
|
|
255
261
|
end
|
|
256
262
|
|
|
257
263
|
task :release => [:require_version, :git_checkout_master, :build, :spec, :manifest, :version, :install_crc, :gem]
|
|
@@ -4,7 +4,6 @@
|
|
|
4
4
|
# AUTO_DECLARE_TARGETS
|
|
5
5
|
DECLARE_TARGET INST
|
|
6
6
|
DECLARE_TARGET INST INST2
|
|
7
|
-
DECLARE_TARGET COSMOS
|
|
8
7
|
DECLARE_TARGET META
|
|
9
8
|
DECLARE_TARGET SYSTEM
|
|
10
9
|
|
|
@@ -25,10 +24,6 @@ PATH TABLES ./outputs/tables
|
|
|
25
24
|
PATH HANDBOOKS ./outputs/handbooks
|
|
26
25
|
PATH PROCEDURES ./procedures
|
|
27
26
|
|
|
28
|
-
# Command and Telemetry Database Version (Optional)
|
|
29
|
-
# CMD_TLM_VERSION version
|
|
30
|
-
CMD_TLM_VERSION "Demo Version"
|
|
31
|
-
|
|
32
27
|
# DISABLE_DNS
|
|
33
28
|
|
|
34
29
|
ALLOW_ACCESS ALL
|
|
@@ -23,7 +23,11 @@ COMMAND INST ABORT BIG_ENDIAN "Aborts a collect on the instrument"
|
|
|
23
23
|
PARAMETER CCSDSTYPE 3 1 UINT 1 1 1 "CCSDS primary header packet type"
|
|
24
24
|
PARAMETER CCSDSSHF 4 1 UINT 0 0 0 "CCSDS primary header secondary header flag"
|
|
25
25
|
ID_PARAMETER CCSDSAPID 5 11 UINT 0 2047 999 "CCSDS primary header application id"
|
|
26
|
-
PARAMETER CCSDSSEQFLAGS 16 2 UINT
|
|
26
|
+
PARAMETER CCSDSSEQFLAGS 16 2 UINT 0 3 3 "CCSDS primary header sequence flags"
|
|
27
|
+
STATE FIRST 1
|
|
28
|
+
STATE CONT 0
|
|
29
|
+
STATE LAST 2
|
|
30
|
+
STATE NOGROUP 3
|
|
27
31
|
PARAMETER CCSDSSEQCNT 18 14 UINT 0 16383 0 "CCSDS primary header sequence count"
|
|
28
32
|
OVERFLOW TRUNCATE
|
|
29
33
|
PARAMETER CCSDSLENGTH 32 16 UINT 0 65535 1 "CCSDS primary header packet length"
|
|
@@ -71,6 +75,7 @@ COMMAND INST ASCIICMD BIG_ENDIAN "Enumerated ASCII command"
|
|
|
71
75
|
STATE "NOOP" "NOOP"
|
|
72
76
|
STATE "ARM LASER" "ARM LASER" HAZARDOUS "Arming the laser poses an eye safety hazard."
|
|
73
77
|
STATE "FIRE LASER" "FIRE LASER" HAZARDOUS "WARNING Laser will be fired!"
|
|
78
|
+
APPEND_PARAMETER BINARY 32 STRING 0xDEADBEEF "Binary string"
|
|
74
79
|
|
|
75
80
|
COMMAND INST FLTCMD BIG_ENDIAN "Command with float parameters"
|
|
76
81
|
PARAMETER CCSDSVER 0 3 UINT 0 0 0 "CCSDS primary header version number"
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
|
2
|
+
|
|
3
|
+
VERTICALBOX
|
|
4
|
+
LABELVALUE INST EXTRA RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
|
5
|
+
LABELVALUE INST EXTRA RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
|
6
|
+
LABELVALUE INST EXTRA RECEIVED_COUNT # COSMOS packet received count
|
|
7
|
+
LABELVALUE INST EXTRA CCSDSVER # CCSDS packet version number (See CCSDS 133.0-B-1)
|
|
8
|
+
LABELVALUE INST EXTRA CCSDSTYPE # CCSDS packet type (command or telemetry)
|
|
9
|
+
LABELVALUE INST EXTRA CCSDSSHF # CCSDS secondary header flag
|
|
10
|
+
LABELVALUE INST EXTRA CCSDSAPID # CCSDS application process id
|
|
11
|
+
LABELVALUE INST EXTRA CCSDSSEQFLAGS # CCSDS sequence flags
|
|
12
|
+
LABELVALUE INST EXTRA CCSDSSEQCNT # CCSDS packet sequence count
|
|
13
|
+
LABELVALUE INST EXTRA CCSDSLENGTH # CCSDS packet data length
|
|
14
|
+
LABELVALUE INST EXTRA TIMESEC # Seconds since epoch (January 1st, 1970, midnight)
|
|
15
|
+
LABELVALUE INST EXTRA TIMEUS # Microseconds of second
|
|
16
|
+
LABELVALUE INST EXTRA PKTID # Packet id (The combination of CCSDS_APID and PACKET_ID identify the packet)
|
|
17
|
+
LABELVALUE INST EXTRA VALUE # Value
|
|
18
|
+
END
|
|
19
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
COMMAND "60" "INST ABORT"
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
|
2
|
+
|
|
3
|
+
VERTICALBOX
|
|
4
|
+
LABELVALUE META DATA RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
|
5
|
+
LABELVALUE META DATA RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
|
6
|
+
LABELVALUE META DATA RECEIVED_COUNT # COSMOS packet received count
|
|
7
|
+
LABELVALUE META DATA TEST_COUNT # Test Count
|
|
8
|
+
LABELVALUE META DATA TEST_ANGLE # Test Angle
|
|
9
|
+
LABELVALUE META DATA TEST_TYPE # Test Type
|
|
10
|
+
LABELVALUE META DATA VERSION # Version Metadata
|
|
11
|
+
END
|
|
12
|
+
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
TELEMETRY SYSTEM META BIG_ENDIAN "System Meta Data Telemetry Packet"
|
|
2
|
+
APPEND_ID_ITEM PKTID 8 UINT 1 "Packet Id"
|
|
3
|
+
APPEND_ITEM CONFIG 256 STRING "Configuration Name"
|
|
4
|
+
APPEND_ITEM COSMOS_VERSION 240 STRING "COSMOS Version"
|
|
5
|
+
APPEND_ITEM USER_VERSION 240 STRING "User Project Version"
|
|
6
|
+
APPEND_ITEM RUBY_VERSION 240 STRING "Ruby Version"
|
|
7
|
+
APPEND_ITEM OPERATOR_NAME 512 STRING "Operator Name"
|
|
8
|
+
|
|
9
|
+
COMMAND SYSTEM META BIG_ENDIAN "System Meta Data Command Packet"
|
|
10
|
+
DISABLED
|
|
11
|
+
APPEND_ID_PARAMETER PKTID 8 UINT 1 1 1 "Packet Id"
|
|
12
|
+
APPEND_PARAMETER CONFIG 256 STRING "" "Configuration Name"
|
|
13
|
+
APPEND_PARAMETER COSMOS_VERSION 240 STRING "" "COSMOS Version"
|
|
14
|
+
APPEND_PARAMETER USER_VERSION 240 STRING "" "User Project Version"
|
|
15
|
+
APPEND_PARAMETER RUBY_VERSION 240 STRING "" "Ruby Version"
|
|
16
|
+
APPEND_PARAMETER OPERATOR_NAME 512 STRING "" "Operator Name"
|
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
COMMAND
|
|
1
|
+
COMMAND SYSTEM STARTLOGGING BIG_ENDIAN "Starts logging both commands and telemetry for an interface"
|
|
2
2
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
3
3
|
APPEND_ID_PARAMETER OPCODE 32 UINT 2 2 2 "COSMOS Command Opcode"
|
|
4
4
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
5
5
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
|
6
6
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
|
7
|
-
|
|
8
|
-
COMMAND
|
|
7
|
+
|
|
8
|
+
COMMAND SYSTEM STARTCMDLOG BIG_ENDIAN "Starts logging commands for an interface"
|
|
9
9
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
10
10
|
APPEND_ID_PARAMETER OPCODE 32 UINT 3 3 3 "COSMOS Command Opcode"
|
|
11
11
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
12
12
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
|
13
13
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
|
14
14
|
|
|
15
|
-
COMMAND
|
|
15
|
+
COMMAND SYSTEM STARTTLMLOG BIG_ENDIAN "Starts logging telemetry for an interface"
|
|
16
16
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
17
17
|
APPEND_ID_PARAMETER OPCODE 32 UINT 4 4 4 "COSMOS Command Opcode"
|
|
18
18
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
19
19
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
|
|
20
20
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
|
21
|
-
|
|
22
|
-
COMMAND
|
|
21
|
+
|
|
22
|
+
COMMAND SYSTEM STOPLOGGING BIG_ENDIAN "Stops logging both commands and telemetry for an interface"
|
|
23
23
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
24
24
|
APPEND_ID_PARAMETER OPCODE 32 UINT 5 5 5 "COSMOS Command Opcode"
|
|
25
25
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
26
26
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
|
|
27
27
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
|
28
28
|
|
|
29
|
-
COMMAND
|
|
29
|
+
COMMAND SYSTEM STOPCMDLOG BIG_ENDIAN "Stops logging commands for an interface"
|
|
30
30
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
31
31
|
APPEND_ID_PARAMETER OPCODE 32 UINT 6 6 6 "COSMOS Command Opcode"
|
|
32
32
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
33
33
|
APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
|
|
34
34
|
APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
|
|
35
35
|
|
|
36
|
-
COMMAND
|
|
36
|
+
COMMAND SYSTEM STOPTLMLOG BIG_ENDIAN "Stops logging telemetry for an interface"
|
|
37
37
|
APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
|
|
38
38
|
APPEND_ID_PARAMETER OPCODE 32 UINT 7 7 7 "COSMOS Command Opcode"
|
|
39
39
|
APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
TELEMETRY SYSTEM LIMITS_CHANGE BIG_ENDIAN "COSMOS limits change"
|
|
2
|
+
APPEND_ID_ITEM PKT_ID 8 UINT 2 "Packet Id"
|
|
3
|
+
APPEND_ITEM TARGET 240 STRING "Target name"
|
|
4
|
+
APPEND_ITEM PACKET 240 STRING "Packet name"
|
|
5
|
+
APPEND_ITEM ITEM 240 STRING "Item that changed limits state"
|
|
6
|
+
APPEND_ITEM OLD_STATE 240 STRING "The old limit state"
|
|
7
|
+
APPEND_ITEM NEW_STATE 240 STRING "The new limit state"
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
|
2
|
+
|
|
3
|
+
VERTICALBOX
|
|
4
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
|
5
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
|
6
|
+
LABELVALUE SYSTEM LIMITS_CHANGE RECEIVED_COUNT # COSMOS packet received count
|
|
7
|
+
LABELVALUE SYSTEM LIMITS_CHANGE PKT_ID # Packet Id
|
|
8
|
+
LABELVALUE SYSTEM LIMITS_CHANGE TARGET # Target name
|
|
9
|
+
LABELVALUE SYSTEM LIMITS_CHANGE PACKET # Packet name
|
|
10
|
+
LABELVALUE SYSTEM LIMITS_CHANGE ITEM # Item that changed limits state
|
|
11
|
+
LABELVALUE SYSTEM LIMITS_CHANGE OLD_STATE # The old limit state
|
|
12
|
+
LABELVALUE SYSTEM LIMITS_CHANGE NEW_STATE # The new limit state
|
|
13
|
+
END
|
|
14
|
+
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
SCREEN AUTO AUTO 1.0
|
|
2
|
+
|
|
3
|
+
VERTICALBOX
|
|
4
|
+
LABELVALUE SYSTEM META RECEIVED_TIMESECONDS # COSMOS Received Time (UTC, Floating point, Unix epoch)
|
|
5
|
+
LABELVALUE SYSTEM META RECEIVED_TIMEFORMATTED # COSMOS Received Time (Local time zone, Formatted string)
|
|
6
|
+
LABELVALUE SYSTEM META RECEIVED_COUNT # COSMOS packet received count
|
|
7
|
+
LABELVALUE SYSTEM META PKTID # Packet Id
|
|
8
|
+
LABELVALUE SYSTEM META CONFIG # Configuration Name
|
|
9
|
+
LABELVALUE SYSTEM META COSMOS_VERSION # COSMOS Version
|
|
10
|
+
LABELVALUE SYSTEM META USER_VERSION # User Project Version
|
|
11
|
+
LABELVALUE SYSTEM META RUBY_VERSION # Ruby Version
|
|
12
|
+
LABELVALUE SYSTEM META OPERATOR_NAME # Operator Name
|
|
13
|
+
END
|
|
14
|
+
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Ignored Parameters
|
|
2
|
+
IGNORE_PARAMETER PKTID
|
|
3
|
+
IGNORE_PARAMETER CONFIG
|
|
4
|
+
IGNORE_PARAMETER COSMOS_VERSION
|
|
5
|
+
IGNORE_PARAMETER USER_VERSION
|
|
6
|
+
IGNORE_PARAMETER RUBY_VERSION
|
|
7
|
+
|
|
8
|
+
# Ignored Items
|
|
9
|
+
IGNORE_ITEM PKTID
|
|
10
|
+
IGNORE_ITEM RECEIVED_COUNT
|
|
11
|
+
IGNORE_ITEM RECEIVED_TIMESECONDS
|
|
12
|
+
IGNORE_ITEM RECEIVED_TIMEFORMATTED
|
|
@@ -11,8 +11,8 @@ INTERFACE INST2_INT simulated_target_interface.rb sim_inst.rb
|
|
|
11
11
|
TARGET INST2
|
|
12
12
|
DONT_LOG
|
|
13
13
|
|
|
14
|
-
INTERFACE
|
|
15
|
-
TARGET
|
|
14
|
+
INTERFACE SYSTM_INT cmd_tlm_server_interface.rb
|
|
15
|
+
TARGET SYSTEM
|
|
16
16
|
DISABLE_DISCONNECT
|
|
17
17
|
LOG COSMOSLOG
|
|
18
18
|
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# encoding: ascii-8bit
|
|
3
|
+
|
|
4
|
+
# Copyright 2015 Ball Aerospace & Technologies Corp.
|
|
5
|
+
# All Rights Reserved.
|
|
6
|
+
#
|
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
|
8
|
+
# under the terms of the GNU General Public License
|
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
|
11
|
+
|
|
12
|
+
require 'cosmos'
|
|
13
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
|
14
|
+
Cosmos::CmdSequence.run
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# encoding: ascii-8bit
|
|
3
|
+
|
|
4
|
+
# Copyright 2014 Ball Aerospace & Technologies Corp.
|
|
5
|
+
# All Rights Reserved.
|
|
6
|
+
#
|
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
|
8
|
+
# under the terms of the GNU General Public License
|
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
|
11
|
+
|
|
12
|
+
require_relative 'autohotkey.rb'
|
|
13
|
+
autohotkey('CmdSequence', 'cmd_sequence.ahk') do
|
|
14
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
|
15
|
+
require 'cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui'
|
|
16
|
+
Cosmos::CmdSequence.run
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
# Remove generated sequences
|
|
20
|
+
%w(sequence.txt test_sequence.txt).each do |filename|
|
|
21
|
+
path = File.join("autohotkey", "outputs", "sequences", filename)
|
|
22
|
+
File.delete path if File.exist? path
|
|
23
|
+
end
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
#!/usr/bin/env ruby
|
|
2
|
+
# encoding: ascii-8bit
|
|
3
|
+
|
|
4
|
+
# Copyright 2014 Ball Aerospace & Technologies Corp.
|
|
5
|
+
# All Rights Reserved.
|
|
6
|
+
#
|
|
7
|
+
# This program is free software; you can modify and/or redistribute it
|
|
8
|
+
# under the terms of the GNU General Public License
|
|
9
|
+
# as published by the Free Software Foundation; version 3 with
|
|
10
|
+
# attribution addendums as found in the LICENSE.txt
|
|
11
|
+
|
|
12
|
+
require_relative 'autohotkey.rb'
|
|
13
|
+
autohotkey('CmdSequence2', 'cmd_sequence2.ahk') do
|
|
14
|
+
require 'cosmos/tools/cmd_sequence/cmd_sequence'
|
|
15
|
+
Cosmos::CmdSequence.run
|
|
16
|
+
end
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
SetWinDelay 1000
|
|
2
2
|
WinWaitActive Command Sender
|
|
3
|
-
Sleep
|
|
3
|
+
Sleep 500
|
|
4
4
|
Run ruby.exe %A_ScriptDir%/CmdTlmServer
|
|
5
|
-
Sleep
|
|
5
|
+
Sleep 4000
|
|
6
6
|
WinActivate Command Sender
|
|
7
7
|
Sleep 500
|
|
8
8
|
Click 60 600 ; Click in the Command History
|
|
9
9
|
Sleep 500
|
|
10
10
|
Send cmd( ; Cause a popup completion
|
|
11
11
|
Sleep 500
|
|
12
|
-
Send {Down
|
|
12
|
+
Send {Down 1}{Enter} ; INST
|
|
13
13
|
Sleep 500
|
|
14
14
|
Send {Enter} ; ABORT
|
|
15
15
|
Sleep 500
|
|
@@ -34,8 +34,6 @@ WinWaitActive Command Sender
|
|
|
34
34
|
Sleep 500
|
|
35
35
|
Click 85 75 ; Target dropdown CMD-1
|
|
36
36
|
Sleep 500
|
|
37
|
-
Click 75 103 ; INST
|
|
38
|
-
Sleep 500
|
|
39
37
|
Click 610 75 ; Send CMD-2
|
|
40
38
|
Sleep 500
|
|
41
39
|
Click 365 75 ; Command dropdown CMD-1
|
|
@@ -141,7 +139,7 @@ WinWaitActive Command Sender
|
|
|
141
139
|
Sleep 500
|
|
142
140
|
Click 85 75 ; Target dropdown
|
|
143
141
|
Sleep 500
|
|
144
|
-
Click 75
|
|
142
|
+
Click 75 103 ; INST2
|
|
145
143
|
Sleep 500
|
|
146
144
|
Click 365 75 ; Command dropdown
|
|
147
145
|
Sleep 500
|
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
SetWinDelay 1000
|
|
2
|
+
WinWaitActive Command Sequence
|
|
3
|
+
Run ruby.exe %A_ScriptDir%/CmdTlmServer
|
|
4
|
+
Sleep 4000
|
|
5
|
+
WinActivate Command Sequence
|
|
6
|
+
|
|
7
|
+
Send ^o ; Open
|
|
8
|
+
WinWaitActive Select
|
|
9
|
+
Send bad_sequence.txt{Enter}
|
|
10
|
+
WinWaitActive Error
|
|
11
|
+
Send {Enter}
|
|
12
|
+
WinWaitActive Command Sequence
|
|
13
|
+
|
|
14
|
+
Send ^o ; Open
|
|
15
|
+
WinWaitActive Select
|
|
16
|
+
Send bad_sequence2.txt{Enter}
|
|
17
|
+
WinWaitActive Error
|
|
18
|
+
Send {Enter}
|
|
19
|
+
WinWaitActive Command Sequence
|
|
20
|
+
|
|
21
|
+
Send ^o ; Open
|
|
22
|
+
WinWaitActive Select
|
|
23
|
+
Send saved_sequence.txt{Enter}
|
|
24
|
+
WinWaitActive Command Sequence
|
|
25
|
+
|
|
26
|
+
Send !f ; File menu
|
|
27
|
+
Sleep 500
|
|
28
|
+
Send a ; Save As
|
|
29
|
+
WinWaitActive Save
|
|
30
|
+
Send test_sequence.txt{Enter}
|
|
31
|
+
WinWaitActive Command Sequence
|
|
32
|
+
|
|
33
|
+
Send !a ; Actions menu
|
|
34
|
+
Sleep 500
|
|
35
|
+
Send e ; Expand All
|
|
36
|
+
Sleep 1000
|
|
37
|
+
Send !a ; Actions menu
|
|
38
|
+
Sleep 500
|
|
39
|
+
Send d ; Display state values in hex
|
|
40
|
+
Sleep 1000
|
|
41
|
+
Send !a ; Actions menu
|
|
42
|
+
Sleep 500
|
|
43
|
+
Send s ; Show ignored items
|
|
44
|
+
Sleep 1000
|
|
45
|
+
Send !a ; Actions menu
|
|
46
|
+
Sleep 500
|
|
47
|
+
Send c ; Collapse all
|
|
48
|
+
Sleep 1000
|
|
49
|
+
Click 300 210 ; Click on sequence item to display it
|
|
50
|
+
Sleep 1000
|
|
51
|
+
Send !a ; Actions menu
|
|
52
|
+
Sleep 500
|
|
53
|
+
Send d ; Display state values in hex
|
|
54
|
+
Sleep 500
|
|
55
|
+
Send !a ; Actions menu
|
|
56
|
+
Sleep 500
|
|
57
|
+
Send s ; Show ignored items
|
|
58
|
+
Sleep 500
|
|
59
|
+
|
|
60
|
+
Click right 170 309 ; Right click collect type
|
|
61
|
+
Sleep 500
|
|
62
|
+
Send {Tab}{Enter}
|
|
63
|
+
WinWaitActive INST
|
|
64
|
+
Sleep 500
|
|
65
|
+
Send {Enter}
|
|
66
|
+
WinWaitActive Command Sequence
|
|
67
|
+
|
|
68
|
+
Click right 170 309 ; Right click collect type
|
|
69
|
+
Sleep 500
|
|
70
|
+
Send {Tab 2}{Enter} ; Insert filename
|
|
71
|
+
WinWaitActive Insert
|
|
72
|
+
Sleep 500
|
|
73
|
+
Send {Esc}
|
|
74
|
+
WinWaitActive Command Sequence
|
|
75
|
+
|
|
76
|
+
Click 260 311 2 ; Double click the collect type manual entry
|
|
77
|
+
Sleep 500
|
|
78
|
+
Send 9{Enter}
|
|
79
|
+
Sleep 500
|
|
80
|
+
|
|
81
|
+
Click 170 309 2 ; Double click the collect Type
|
|
82
|
+
Sleep 500
|
|
83
|
+
Click ; Click again to activate the drop down
|
|
84
|
+
Sleep 500
|
|
85
|
+
Send {Up}{Enter} ; Choose SPECIAL collect
|
|
86
|
+
Sleep 1000
|
|
87
|
+
|
|
88
|
+
Send ^t ; Disconnect mode
|
|
89
|
+
WinWaitActive Server
|
|
90
|
+
Send +{Tab}{Enter} ; Cancel
|
|
91
|
+
WinWaitActive Command Sequence
|
|
92
|
+
|
|
93
|
+
Send ^t ; Disconnect mode
|
|
94
|
+
WinWaitActive Server
|
|
95
|
+
Send {Tab}{Enter} ; Select
|
|
96
|
+
WinWaitActive Select
|
|
97
|
+
Send cmd_tlm_server.txt{Enter}
|
|
98
|
+
WinWaitActive Server
|
|
99
|
+
Send {Tab}{Enter} ; Confirm dialog
|
|
100
|
+
WinWaitActive Command Sequence
|
|
101
|
+
|
|
102
|
+
Click 450 70 ; Start
|
|
103
|
+
WinWaitActive Save
|
|
104
|
+
Send {Tab 2}{Enter} ; No
|
|
105
|
+
; Script should execute and complete
|
|
106
|
+
WinWaitActive Command Sequence
|
|
107
|
+
|
|
108
|
+
Send ^t ; Toggle off disconnect mode
|
|
109
|
+
Sleep 500
|
|
110
|
+
Send ^n ; New sequence
|
|
111
|
+
WinWaitActive Save
|
|
112
|
+
Send {Tab}{Enter} ; Yes
|
|
113
|
+
WinWaitActive Command Sequence
|
|
114
|
+
|
|
115
|
+
Click 100 100 ; Click the Target dropdown
|
|
116
|
+
Sleep 500
|
|
117
|
+
Send {Down}{Enter} ; Change the target
|
|
118
|
+
Sleep 500
|
|
119
|
+
Click 610 100 ; Add Abort command
|
|
120
|
+
Sleep 500
|
|
121
|
+
Click 633 155 ; Delete the command
|
|
122
|
+
Sleep 500
|
|
123
|
+
Click 610 100 ; Add Abort command
|
|
124
|
+
Sleep 500
|
|
125
|
+
Click 610 100 ; Add Abort command
|
|
126
|
+
Sleep 500
|
|
127
|
+
Click 450 100 ; Click the command dropdown
|
|
128
|
+
Sleep 500
|
|
129
|
+
Send {Down 2}{Enter} ; ASCIICMD
|
|
130
|
+
Sleep 500
|
|
131
|
+
Click 610 100 ; Add ASCIICMD
|
|
132
|
+
Sleep 500
|
|
133
|
+
Click 300 210 ; Click on the ASCIICMD to expand it
|
|
134
|
+
Sleep 500
|
|
135
|
+
|
|
136
|
+
Click 170 330 2 ; Click in the BINARY field
|
|
137
|
+
Send testtest{Enter}
|
|
138
|
+
WinWaitActive Error
|
|
139
|
+
Send {Enter}
|
|
140
|
+
WinWaitActive Command Sequence
|
|
141
|
+
|
|
142
|
+
Click 170 330 2 ; Double click in the BINARY field
|
|
143
|
+
Sleep 500
|
|
144
|
+
Send test{Enter}
|
|
145
|
+
Sleep 500
|
|
146
|
+
|
|
147
|
+
Click 170 330 2 ; Double click in the BINARY field
|
|
148
|
+
Sleep 500
|
|
149
|
+
Send 0xDEADBEEF{Enter}
|
|
150
|
+
Sleep 500
|
|
151
|
+
|
|
152
|
+
Click 450 70 ; Click Start
|
|
153
|
+
WinWaitActive Save
|
|
154
|
+
Send {Enter} ; Cancel
|
|
155
|
+
WinWaitActive Command Sequence
|
|
156
|
+
|
|
157
|
+
Click 450 70 ; Click Start
|
|
158
|
+
WinWaitActive Save
|
|
159
|
+
Send {Tab 2}{Enter} ; No
|
|
160
|
+
; Script should execute and complete
|
|
161
|
+
|
|
162
|
+
Click 80 155 ; First command Time field
|
|
163
|
+
Sleep 500
|
|
164
|
+
Send {Backspace 5}2.5{Enter} ; 2.5s delay
|
|
165
|
+
Click right 85 180
|
|
166
|
+
WinWaitActive Select
|
|
167
|
+
Send {Esc} ; Cancel absolute time select
|
|
168
|
+
WinWaitActive Command Sequence
|
|
169
|
+
Click right 80 180
|
|
170
|
+
WinWaitActive Select
|
|
171
|
+
Min := 1 + A_Min ; One minute in the future
|
|
172
|
+
Send {Tab 2}%Min%{Enter} ; Set the future time
|
|
173
|
+
WinWaitActive Command Sequence
|
|
174
|
+
Click right 80 210
|
|
175
|
+
WinWaitActive Select
|
|
176
|
+
Send {Tab 5}{Enter} ; Select time now
|
|
177
|
+
WinWaitActive Command Sequence
|
|
178
|
+
|
|
179
|
+
Send ^s ; Save
|
|
180
|
+
WinWaitActive Save
|
|
181
|
+
Send {Enter}
|
|
182
|
+
Sleep 500
|
|
183
|
+
; If the file already exists a dialog comes up
|
|
184
|
+
; so we tab enter to switch from default No to Yes
|
|
185
|
+
Send {Tab}{Enter}
|
|
186
|
+
WinWaitActive Command Sequence
|
|
187
|
+
|
|
188
|
+
Click 450 70 ; Click Start
|
|
189
|
+
Sleep 65000 ; Allow the minute to go by and the sequence to complete
|
|
190
|
+
|
|
191
|
+
Click 450 70 ; Click Start
|
|
192
|
+
Sleep 1000
|
|
193
|
+
Click 530 70 ; Click Pause
|
|
194
|
+
Sleep 2000
|
|
195
|
+
Click 450 70 ; Click Start
|
|
196
|
+
Sleep 2000
|
|
197
|
+
Click 450 70 ; Click Go and the sequence should complete
|
|
198
|
+
Sleep 1000
|
|
199
|
+
|
|
200
|
+
Click 450 70 ; Click Start
|
|
201
|
+
Sleep 1000
|
|
202
|
+
Click 610 70 ; Click Stop
|
|
203
|
+
Sleep 2000
|
|
204
|
+
|
|
205
|
+
; Shut down the CTS
|
|
206
|
+
WinActivate Command and Telemetry Server
|
|
207
|
+
WinWaitActive Command and Telemetry Server
|
|
208
|
+
Sleep 500
|
|
209
|
+
Send ^q
|
|
210
|
+
WinWaitActive Confirm Close
|
|
211
|
+
Sleep 500
|
|
212
|
+
Send {Enter}
|
|
213
|
+
|
|
214
|
+
WinActivate Command Sequence
|
|
215
|
+
Send ^q
|