cosmos 4.5.2 → 5.0.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/Gemfile +14 -7
- data/Guardfile +14 -6
- data/LICENSE.txt +79 -265
- data/README.md +37 -120
- data/Rakefile +29 -242
- data/bin/cosmos +309 -229
- data/bin/cstol_converter +202 -190
- data/bin/rubysloc +19 -10
- data/bin/xtce_converter +12 -3
- data/data/config/_params.yaml +6 -4
- data/data/config/cmd_tlm_server.yaml +4 -4
- data/data/config/command.yaml +11 -7
- data/data/config/command_modifiers.yaml +4 -4
- data/data/config/interface_modifiers.yaml +23 -16
- data/data/config/item_modifiers.yaml +3 -3
- data/data/config/microservice.yaml +78 -0
- data/data/config/parameter_modifiers.yaml +3 -3
- data/data/config/plugins.yaml +70 -0
- data/data/config/screen.yaml +4 -10
- data/data/config/table_manager.yaml +15 -9
- data/data/config/target.yaml +138 -88
- data/data/config/target_config.yaml +94 -0
- data/data/config/telemetry.yaml +16 -9
- data/data/config/tool.yaml +63 -0
- data/data/config/widgets.yaml +478 -475
- data/ext/cosmos/ext/array/array.c +16 -7
- data/ext/cosmos/ext/array/extconf.rb +1 -1
- data/ext/cosmos/ext/buffered_file/buffered_file.c +63 -34
- data/ext/cosmos/ext/buffered_file/extconf.rb +1 -1
- data/ext/cosmos/ext/config_parser/config_parser.c +77 -35
- data/ext/cosmos/ext/config_parser/extconf.rb +1 -1
- data/ext/cosmos/ext/cosmos_io/cosmos_io.c +75 -64
- data/ext/cosmos/ext/cosmos_io/extconf.rb +1 -1
- data/ext/cosmos/ext/crc/crc.c +117 -109
- data/ext/cosmos/ext/crc/extconf.rb +2 -2
- data/ext/cosmos/ext/packet/extconf.rb +1 -1
- data/ext/cosmos/ext/packet/packet.c +113 -70
- data/ext/cosmos/ext/platform/extconf.rb +1 -1
- data/ext/cosmos/ext/platform/platform.c +85 -88
- data/ext/cosmos/ext/polynomial_conversion/extconf.rb +1 -1
- data/ext/cosmos/ext/polynomial_conversion/polynomial_conversion.c +13 -5
- data/ext/cosmos/ext/string/extconf.rb +1 -1
- data/ext/cosmos/ext/string/string.c +20 -8
- data/ext/cosmos/ext/structure/structure.c +612 -388
- data/ext/cosmos/ext/tabbed_plots_config/extconf.rb +1 -1
- data/ext/cosmos/ext/tabbed_plots_config/tabbed_plots_config.c +13 -4
- data/ext/cosmos/ext/telemetry/extconf.rb +1 -1
- data/ext/cosmos/ext/telemetry/telemetry.c +75 -48
- data/ext/mkrf_conf.rb +13 -4
- data/lib/cosmos/api/api.rb +63 -0
- data/lib/cosmos/api/authorized_api.rb +30 -0
- data/lib/cosmos/api/cmd_api.rb +455 -0
- data/lib/cosmos/api/config_api.rb +52 -0
- data/lib/cosmos/api/interface_api.rb +117 -0
- data/lib/cosmos/api/limits_api.rb +375 -0
- data/lib/cosmos/api/router_api.rb +117 -0
- data/lib/cosmos/api/settings_api.rb +58 -0
- data/lib/cosmos/api/target_api.rb +78 -0
- data/lib/cosmos/api/tlm_api.rb +463 -0
- data/lib/cosmos/bridge/bridge.rb +54 -0
- data/lib/cosmos/bridge/bridge_config.rb +167 -0
- data/lib/cosmos/bridge/bridge_interface_thread.rb +42 -0
- data/lib/cosmos/bridge/bridge_router_thread.rb +42 -0
- data/lib/cosmos/ccsds/ccsds_packet.rb +11 -6
- data/lib/cosmos/ccsds/ccsds_parser.rb +11 -6
- data/lib/cosmos/config/config_parser.rb +60 -17
- data/lib/cosmos/config/meta_config_parser.rb +25 -8
- data/lib/cosmos/conversions/conversion.rb +15 -2
- data/lib/cosmos/conversions/generic_conversion.rb +17 -7
- data/lib/cosmos/conversions/packet_time_formatted_conversion.rb +11 -6
- data/lib/cosmos/conversions/packet_time_seconds_conversion.rb +11 -6
- data/lib/cosmos/conversions/polynomial_conversion.rb +19 -13
- data/lib/cosmos/conversions/processor_conversion.rb +14 -5
- data/lib/cosmos/conversions/received_count_conversion.rb +11 -6
- data/lib/cosmos/conversions/received_time_formatted_conversion.rb +11 -6
- data/lib/cosmos/conversions/received_time_seconds_conversion.rb +11 -6
- data/lib/cosmos/conversions/segmented_polynomial_conversion.rb +43 -13
- data/lib/cosmos/conversions/unix_time_conversion.rb +14 -5
- data/lib/cosmos/conversions/unix_time_formatted_conversion.rb +11 -6
- data/lib/cosmos/conversions/unix_time_seconds_conversion.rb +11 -6
- data/lib/cosmos/conversions.rb +32 -13
- data/lib/cosmos/core_ext/array.rb +33 -14
- data/lib/cosmos/core_ext/binding.rb +29 -0
- data/lib/cosmos/core_ext/class.rb +11 -2
- data/lib/cosmos/core_ext/cosmos_io.rb +14 -3
- data/lib/cosmos/core_ext/exception.rb +11 -2
- data/lib/cosmos/core_ext/file.rb +18 -11
- data/lib/cosmos/core_ext/hash.rb +11 -2
- data/lib/cosmos/core_ext/io.rb +26 -14
- data/lib/cosmos/core_ext/kernel.rb +12 -3
- data/lib/cosmos/core_ext/math.rb +11 -2
- data/lib/cosmos/core_ext/matrix.rb +29 -22
- data/lib/cosmos/core_ext/objectspace.rb +11 -2
- data/lib/cosmos/core_ext/range.rb +12 -3
- data/lib/cosmos/core_ext/socket.rb +14 -8
- data/lib/cosmos/core_ext/string.rb +49 -11
- data/lib/cosmos/core_ext/stringio.rb +11 -2
- data/lib/cosmos/core_ext/time.rb +34 -9
- data/lib/cosmos/core_ext.rb +18 -0
- data/lib/cosmos/interfaces/interface.rb +70 -28
- data/lib/cosmos/interfaces/linc_interface.rb +25 -9
- data/lib/cosmos/interfaces/protocols/burst_protocol.rb +17 -8
- data/lib/cosmos/interfaces/protocols/crc_protocol.rb +13 -3
- data/lib/cosmos/interfaces/protocols/fixed_protocol.rb +19 -8
- data/lib/cosmos/interfaces/protocols/ignore_packet_protocol.rb +12 -2
- data/lib/cosmos/interfaces/protocols/length_protocol.rb +14 -3
- data/lib/cosmos/interfaces/protocols/override_protocol.rb +11 -3
- data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +26 -7
- data/lib/cosmos/interfaces/protocols/protocol.rb +12 -3
- data/lib/cosmos/interfaces/protocols/template_protocol.rb +17 -9
- data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +12 -2
- data/lib/cosmos/interfaces/serial_interface.rb +12 -9
- data/lib/cosmos/interfaces/simulated_target_interface.rb +20 -5
- data/lib/cosmos/interfaces/stream_interface.rb +21 -5
- data/lib/cosmos/interfaces/tcpip_client_interface.rb +13 -4
- data/lib/cosmos/interfaces/tcpip_server_interface.rb +108 -103
- data/lib/cosmos/interfaces/udp_interface.rb +21 -6
- data/lib/cosmos/interfaces.rb +40 -20
- data/lib/cosmos/io/buffered_file.rb +12 -3
- data/lib/cosmos/io/cosmos_snmp.rb +17 -9
- data/lib/cosmos/io/io_multiplexer.rb +11 -6
- data/lib/cosmos/io/json_api_object.rb +210 -0
- data/lib/cosmos/io/json_drb.rb +97 -69
- data/lib/cosmos/io/json_drb_object.rb +62 -119
- data/lib/cosmos/io/json_drb_rack.rb +31 -46
- data/lib/cosmos/io/json_rpc.rb +53 -27
- data/lib/cosmos/io/posix_serial_driver.rb +34 -65
- data/lib/cosmos/io/raw_logger.rb +23 -26
- data/lib/cosmos/io/raw_logger_pair.rb +20 -14
- data/lib/cosmos/io/serial_driver.rb +19 -15
- data/lib/cosmos/io/stderr.rb +11 -4
- data/lib/cosmos/io/stdout.rb +11 -4
- data/lib/cosmos/io/udp_sockets.rb +28 -30
- data/lib/cosmos/io/win32_serial_driver.rb +23 -14
- data/lib/cosmos/logs/log_writer.rb +253 -0
- data/lib/cosmos/logs/packet_log_constants.rb +62 -0
- data/lib/cosmos/logs/packet_log_reader.rb +345 -0
- data/lib/cosmos/logs/packet_log_writer.rb +299 -0
- data/lib/cosmos/logs/text_log_writer.rb +68 -0
- data/lib/cosmos/logs.rb +25 -0
- data/lib/cosmos/microservices/cleanup_microservice.rb +68 -0
- data/lib/cosmos/microservices/decom_microservice.rb +135 -0
- data/lib/cosmos/microservices/interface_microservice.rb +547 -0
- data/lib/cosmos/microservices/log_microservice.rb +108 -0
- data/lib/cosmos/microservices/microservice.rb +204 -0
- data/lib/cosmos/microservices/plugin_microservice.rb +43 -0
- data/lib/cosmos/microservices/reaction_microservice.rb +541 -0
- data/lib/cosmos/microservices/reducer_microservice.rb +311 -0
- data/lib/cosmos/microservices/router_microservice.rb +44 -0
- data/lib/cosmos/microservices/text_log_microservice.rb +84 -0
- data/lib/cosmos/microservices/timeline_microservice.rb +363 -0
- data/lib/cosmos/microservices/trigger_group_microservice.rb +638 -0
- data/lib/cosmos/models/activity_model.rb +319 -0
- data/lib/cosmos/models/auth_model.rb +65 -0
- data/lib/cosmos/models/cvt_model.rb +185 -0
- data/lib/cosmos/models/environment_model.rb +58 -0
- data/lib/cosmos/models/gem_model.rb +131 -0
- data/lib/cosmos/models/info_model.rb +31 -0
- data/lib/cosmos/models/interface_model.rb +272 -0
- data/lib/cosmos/models/interface_status_model.rb +117 -0
- data/lib/cosmos/models/metadata_model.rb +289 -0
- data/lib/cosmos/models/metric_model.rb +59 -0
- data/lib/cosmos/models/microservice_model.rb +203 -0
- data/lib/cosmos/models/microservice_status_model.rb +74 -0
- data/lib/cosmos/models/model.rb +189 -0
- data/lib/cosmos/models/narrative_model.rb +280 -0
- data/lib/cosmos/models/notification_model.rb +40 -0
- data/lib/cosmos/models/ping_model.rb +34 -0
- data/lib/cosmos/models/plugin_model.rb +224 -0
- data/lib/cosmos/models/process_status_model.rb +76 -0
- data/lib/cosmos/models/reaction_model.rb +322 -0
- data/lib/cosmos/models/reducer_model.rb +65 -0
- data/lib/cosmos/models/router_model.rb +35 -0
- data/lib/cosmos/models/router_status_model.rb +27 -0
- data/lib/cosmos/models/scope_model.rb +148 -0
- data/lib/cosmos/models/target_model.rb +739 -0
- data/lib/cosmos/models/timeline_model.rb +154 -0
- data/lib/cosmos/models/tool_model.rb +262 -0
- data/lib/cosmos/models/trigger_group_model.rb +186 -0
- data/lib/cosmos/models/trigger_model.rb +330 -0
- data/lib/cosmos/models/widget_model.rb +138 -0
- data/lib/cosmos/operators/microservice_operator.rb +127 -0
- data/lib/cosmos/operators/operator.rb +278 -0
- data/lib/cosmos/packets/binary_accessor.rb +36 -30
- data/lib/cosmos/packets/commands.rb +24 -12
- data/lib/cosmos/packets/json_packet.rb +134 -0
- data/lib/cosmos/packets/limits.rb +22 -15
- data/lib/cosmos/packets/limits_response.rb +15 -4
- data/lib/cosmos/packets/packet.rb +126 -33
- data/lib/cosmos/packets/packet_config.rb +42 -31
- data/lib/cosmos/packets/packet_item.rb +150 -6
- data/lib/cosmos/packets/packet_item_limits.rb +41 -7
- data/lib/cosmos/packets/parsers/format_string_parser.rb +11 -4
- data/lib/cosmos/packets/parsers/limits_parser.rb +18 -6
- data/lib/cosmos/packets/parsers/limits_response_parser.rb +13 -4
- data/lib/cosmos/packets/parsers/packet_item_parser.rb +36 -16
- data/lib/cosmos/packets/parsers/packet_parser.rb +15 -5
- data/lib/cosmos/packets/parsers/processor_parser.rb +14 -4
- data/lib/cosmos/packets/parsers/state_parser.rb +13 -4
- data/lib/cosmos/packets/parsers/xtce_converter.rb +20 -6
- data/lib/cosmos/packets/parsers/xtce_parser.rb +42 -14
- data/lib/cosmos/packets/structure.rb +33 -25
- data/lib/cosmos/packets/structure_item.rb +48 -9
- data/lib/cosmos/packets/telemetry.rb +27 -10
- data/lib/cosmos/processors/processor.rb +15 -5
- data/lib/cosmos/processors/statistics_processor.rb +15 -5
- data/lib/cosmos/processors/watermark_processor.rb +14 -5
- data/lib/cosmos/processors.rb +22 -4
- data/lib/cosmos/script/api_shared.rb +328 -524
- data/lib/cosmos/script/calendar.rb +62 -0
- data/lib/cosmos/script/commands.rb +93 -55
- data/lib/cosmos/script/exceptions.rb +29 -0
- data/lib/cosmos/script/extract.rb +37 -17
- data/lib/cosmos/script/limits.rb +21 -82
- data/lib/cosmos/script/script.rb +192 -103
- data/lib/cosmos/script/storage.rb +146 -0
- data/lib/cosmos/script/suite.rb +542 -0
- data/lib/cosmos/script/suite_results.rb +196 -0
- data/lib/cosmos/script/suite_runner.rb +217 -0
- data/lib/cosmos/script.rb +16 -4
- data/lib/cosmos/streams/serial_stream.rb +20 -13
- data/lib/cosmos/streams/stream.rb +11 -2
- data/lib/cosmos/streams/tcpip_client_stream.rb +28 -25
- data/lib/cosmos/streams/tcpip_socket_stream.rb +14 -5
- data/lib/cosmos/system/system.rb +80 -983
- data/lib/cosmos/system/system_config.rb +411 -0
- data/lib/cosmos/system/target.rb +73 -66
- data/lib/cosmos/system.rb +22 -2
- data/lib/cosmos/tools/cmd_tlm_server/api.rb +12 -1686
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +240 -214
- data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +43 -41
- data/lib/cosmos/tools/table_manager/table.rb +30 -14
- data/lib/cosmos/tools/table_manager/table_config.rb +110 -43
- data/lib/cosmos/tools/table_manager/table_item.rb +40 -8
- data/lib/cosmos/tools/table_manager/table_item_parser.rb +27 -9
- data/lib/cosmos/tools/table_manager/table_manager_core.rb +159 -50
- data/lib/cosmos/tools/table_manager/table_parser.rb +28 -10
- data/lib/cosmos/tools/test_runner/test.rb +57 -530
- data/lib/cosmos/top_level.rb +212 -474
- data/lib/cosmos/topics/autonomic_topic.rb +52 -0
- data/lib/cosmos/topics/calendar_topic.rb +44 -0
- data/lib/cosmos/topics/command_decom_topic.rb +46 -0
- data/lib/cosmos/topics/command_topic.rb +81 -0
- data/lib/cosmos/topics/interface_topic.rb +73 -0
- data/lib/cosmos/topics/limits_event_topic.rb +105 -0
- data/lib/cosmos/topics/notifications_topic.rb +28 -0
- data/lib/cosmos/topics/router_topic.rb +85 -0
- data/lib/cosmos/topics/telemetry_decom_topic.rb +51 -0
- data/lib/cosmos/topics/telemetry_topic.rb +36 -0
- data/lib/cosmos/topics/timeline_topic.rb +45 -0
- data/lib/cosmos/topics/topic.rb +48 -0
- data/lib/cosmos/utilities/authentication.rb +141 -0
- data/lib/cosmos/utilities/authorization.rb +51 -0
- data/lib/cosmos/utilities/crc.rb +24 -17
- data/lib/cosmos/utilities/csv.rb +22 -59
- data/lib/cosmos/utilities/logger.rb +102 -52
- data/lib/cosmos/utilities/message_log.rb +31 -20
- data/lib/cosmos/utilities/metric.rb +135 -0
- data/lib/cosmos/utilities/process_manager.rb +139 -0
- data/lib/cosmos/utilities/quaternion.rb +34 -35
- data/lib/cosmos/utilities/ruby_lex_utils.rb +493 -237
- data/lib/cosmos/utilities/s3.rb +202 -0
- data/lib/cosmos/utilities/s3_autoload.rb +9 -0
- data/lib/cosmos/utilities/s3_file_cache.rb +268 -0
- data/lib/cosmos/utilities/simulated_target.rb +12 -3
- data/lib/cosmos/utilities/sleeper.rb +11 -4
- data/lib/cosmos/utilities/store.rb +22 -0
- data/lib/cosmos/utilities/store_autoload.rb +336 -0
- data/lib/cosmos/utilities/zip.rb +21 -0
- data/lib/cosmos/utilities.rb +33 -9
- data/lib/cosmos/version.rb +8 -6
- data/lib/cosmos/win32/excel.rb +11 -2
- data/lib/cosmos/win32/win32.rb +47 -26
- data/lib/cosmos/win32/win32_main.rb +26 -18
- data/lib/cosmos.rb +19 -33
- data/lib/cosmosc2.rb +20 -0
- data/tasks/gemfile_stats.rake +19 -9
- data/tasks/spec.rake +12 -5
- data/templates/plugin-template/README.md +15 -0
- data/templates/plugin-template/Rakefile +12 -0
- data/templates/plugin-template/plugin.gemspec +23 -0
- data/templates/plugin-template/plugin.txt +9 -0
- data/templates/plugin-template/targets/TARGET/cmd_tlm/cmd.txt +8 -0
- data/templates/plugin-template/targets/TARGET/cmd_tlm/tlm.txt +8 -0
- data/templates/plugin-template/targets/TARGET/lib/target.rb +10 -0
- data/templates/plugin-template/targets/TARGET/procedures/procedure.rb +3 -0
- data/templates/plugin-template/targets/TARGET/screens/status.txt +9 -0
- data/templates/plugin-template/targets/TARGET/target.txt +5 -0
- metadata +262 -1739
- data/.dockerignore +0 -2
- data/.gitattributes +0 -3
- data/.github/ISSUE_TEMPLATE/bug_report.md +0 -30
- data/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
- data/.github/ISSUE_TEMPLATE/help---usage---general-question.md +0 -12
- data/.github/workflows/build_v4.yml +0 -33
- data/.gitignore +0 -50
- data/.rubocop.yml +0 -23
- data/.yardopts +0 -4
- data/CONTRIBUTING.txt +0 -50
- data/Dockerfile +0 -71
- data/Manifest.txt +0 -1790
- data/appveyor.yml +0 -32
- data/autohotkey/config/data/attitude.bin +0 -0
- data/autohotkey/config/data/diamond.STL +0 -58
- data/autohotkey/config/data/groundoff.gif +0 -0
- data/autohotkey/config/data/groundon.gif +0 -0
- data/autohotkey/config/data/position.bin +0 -0
- data/autohotkey/config/data/satellite.gif +0 -0
- data/autohotkey/config/data/tada.wav +0 -0
- data/autohotkey/config/system/system.txt +0 -29
- data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +0 -126
- data/autohotkey/config/targets/INST/cmd_tlm/inst_tlm.txt +0 -270
- data/autohotkey/config/targets/INST/cmd_tlm_server.txt +0 -5
- data/autohotkey/config/targets/INST/doc/README.txt +0 -1
- data/autohotkey/config/targets/INST/lib/example_limits_response.rb +0 -30
- data/autohotkey/config/targets/INST/lib/sim_inst.rb +0 -307
- data/autohotkey/config/targets/INST/screens/_footer.txt +0 -4
- data/autohotkey/config/targets/INST/screens/adcs.txt +0 -46
- data/autohotkey/config/targets/INST/screens/array.txt +0 -7
- data/autohotkey/config/targets/INST/screens/block.txt +0 -8
- data/autohotkey/config/targets/INST/screens/commanding.txt +0 -30
- data/autohotkey/config/targets/INST/screens/extra.txt +0 -19
- data/autohotkey/config/targets/INST/screens/graphs.txt +0 -14
- data/autohotkey/config/targets/INST/screens/ground.txt +0 -25
- data/autohotkey/config/targets/INST/screens/health_status.txt +0 -33
- data/autohotkey/config/targets/INST/screens/hs.txt +0 -46
- data/autohotkey/config/targets/INST/screens/image.txt +0 -21
- data/autohotkey/config/targets/INST/screens/latest.txt +0 -23
- data/autohotkey/config/targets/INST/screens/mech.txt +0 -25
- data/autohotkey/config/targets/INST/screens/other.txt +0 -25
- data/autohotkey/config/targets/INST/screens/params.txt +0 -25
- data/autohotkey/config/targets/INST/screens/tabs.txt +0 -68
- data/autohotkey/config/targets/INST/sequences/run_sequence.txt +0 -1
- data/autohotkey/config/targets/INST/target.txt +0 -27
- data/autohotkey/config/targets/META/cmd_tlm/meta_cmd.txt +0 -10
- data/autohotkey/config/targets/META/cmd_tlm/meta_tlm.txt +0 -9
- data/autohotkey/config/targets/META/screens/data.txt +0 -12
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +0 -7
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +0 -16
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +0 -41
- data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +0 -7
- data/autohotkey/config/targets/SYSTEM/screens/error.txt +0 -11
- data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +0 -14
- data/autohotkey/config/targets/SYSTEM/screens/meta.txt +0 -14
- data/autohotkey/config/targets/SYSTEM/target.txt +0 -12
- data/autohotkey/config/tools/cmd_sender/cmd_sender.txt +0 -1
- data/autohotkey/config/tools/cmd_sequence/cmd_sequence.txt +0 -2
- data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +0 -22
- data/autohotkey/config/tools/data_viewer/data_viewer.txt +0 -11
- data/autohotkey/config/tools/handbook_creator/assets/css/bootstrap-theme.css +0 -397
- data/autohotkey/config/tools/handbook_creator/assets/css/bootstrap-theme.min.css +0 -7
- data/autohotkey/config/tools/handbook_creator/assets/css/bootstrap.css +0 -7118
- data/autohotkey/config/tools/handbook_creator/assets/css/bootstrap.min.css +0 -7
- data/autohotkey/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/autohotkey/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.svg +0 -229
- data/autohotkey/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/autohotkey/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/autohotkey/config/tools/handbook_creator/assets/js/bootstrap.js +0 -2006
- data/autohotkey/config/tools/handbook_creator/assets/js/bootstrap.min.js +0 -7
- data/autohotkey/config/tools/handbook_creator/default_toc.xsl +0 -59
- data/autohotkey/config/tools/handbook_creator/handbook_creator.txt +0 -49
- data/autohotkey/config/tools/handbook_creator/templates/command_packets.html.erb +0 -86
- data/autohotkey/config/tools/handbook_creator/templates/command_toc.html.erb +0 -38
- data/autohotkey/config/tools/handbook_creator/templates/footer.html.erb +0 -9
- data/autohotkey/config/tools/handbook_creator/templates/header.html.erb +0 -25
- data/autohotkey/config/tools/handbook_creator/templates/limits_groups.html.erb +0 -13
- data/autohotkey/config/tools/handbook_creator/templates/nav.html.erb +0 -27
- data/autohotkey/config/tools/handbook_creator/templates/overview.html.erb +0 -1
- data/autohotkey/config/tools/handbook_creator/templates/pdf_cover.html.erb +0 -23
- data/autohotkey/config/tools/handbook_creator/templates/pdf_footer.html.erb +0 -33
- data/autohotkey/config/tools/handbook_creator/templates/pdf_header.html.erb +0 -41
- data/autohotkey/config/tools/handbook_creator/templates/telemetry_packets.html.erb +0 -80
- data/autohotkey/config/tools/handbook_creator/templates/telemetry_toc.html.erb +0 -38
- data/autohotkey/config/tools/handbook_creator/templates/title.html.erb +0 -1
- data/autohotkey/config/tools/launcher/launcher.txt +0 -38
- data/autohotkey/config/tools/limits_monitor/README.txt +0 -1
- data/autohotkey/config/tools/opengl_builder/error.txt +0 -1
- data/autohotkey/config/tools/script_runner/script_runner.txt +0 -3
- data/autohotkey/config/tools/table_manager/ConfigTables_def.txt +0 -6
- data/autohotkey/config/tools/table_manager/OldOneDimensionalTable_def.txt +0 -19
- data/autohotkey/config/tools/table_manager/OldTwoDimensionalTable_def.txt +0 -248
- data/autohotkey/config/tools/table_manager/OneDimensionalTable_def.txt +0 -31
- data/autohotkey/config/tools/table_manager/SubTables/OneDimensionalSubTable_def.txt +0 -31
- data/autohotkey/config/tools/table_manager/SubTables/TwoDimensionalSubTable_def.txt +0 -28
- data/autohotkey/config/tools/table_manager/TwoDimensionalTable_def.txt +0 -28
- data/autohotkey/config/tools/test_runner/test_runner.txt +0 -8
- data/autohotkey/config/tools/test_runner/test_runner2.txt +0 -11
- data/autohotkey/config/tools/test_runner/test_runner3.txt +0 -7
- data/autohotkey/config/tools/test_runner/test_runner4.txt +0 -1
- data/autohotkey/config/tools/tlm_extractor/tlm_extractor.txt +0 -14
- data/autohotkey/config/tools/tlm_extractor/tlm_extractor2.txt +0 -9
- data/autohotkey/config/tools/tlm_grapher/README.txt +0 -1
- data/autohotkey/config/tools/tlm_grapher/bad.txt +0 -50
- data/autohotkey/config/tools/tlm_grapher/temp1-4.txt +0 -51
- data/autohotkey/config/tools/tlm_grapher/test2.txt +0 -111
- data/autohotkey/config/tools/tlm_viewer/tlm_viewer.txt +0 -24
- data/autohotkey/config/tools/tlm_viewer/tlm_viewer2.txt +0 -4
- data/autohotkey/config/tools/tlm_viewer/tlm_viewer3.txt +0 -3
- data/autohotkey/lib/cmd_sequence_exporter.rb +0 -52
- data/autohotkey/lib/example_background_task.rb +0 -42
- data/autohotkey/lib/user_version.rb +0 -3
- data/autohotkey/outputs/handbooks/README.txt +0 -1
- data/autohotkey/outputs/logs/bigtlm.bin +0 -0
- data/autohotkey/outputs/logs/cmd.bin +0 -0
- data/autohotkey/outputs/logs/tlm.bin +0 -0
- data/autohotkey/outputs/saved_config/README.txt +0 -1
- data/autohotkey/outputs/sequences/bad_sequence.txt +0 -1
- data/autohotkey/outputs/sequences/bad_sequence2.txt +0 -1
- data/autohotkey/outputs/sequences/saved_sequence.txt +0 -3
- data/autohotkey/outputs/tables/README.txt +0 -1
- data/autohotkey/outputs/tmp/README.txt +0 -1
- data/autohotkey/procedures/clear_util.rb +0 -7
- data/autohotkey/procedures/collect.rb +0 -18
- data/autohotkey/procedures/collect_util.rb +0 -14
- data/autohotkey/procedures/example_test.rb +0 -71
- data/autohotkey/procedures/example_test2.rb +0 -74
- data/autohotkey/procedures/script_test.rb +0 -21
- data/autohotkey/procedures/syntax_error.rb +0 -18
- data/autohotkey/tools/CmdExtractorAHK +0 -16
- data/autohotkey/tools/CmdSender +0 -14
- data/autohotkey/tools/CmdSenderAHK +0 -18
- data/autohotkey/tools/CmdSenderAHK2 +0 -18
- data/autohotkey/tools/CmdSequence +0 -14
- data/autohotkey/tools/CmdSequenceAHK +0 -23
- data/autohotkey/tools/CmdSequenceAHK2 +0 -16
- data/autohotkey/tools/CmdTlmServer +0 -14
- data/autohotkey/tools/CmdTlmServerAHK +0 -28
- data/autohotkey/tools/CmdTlmServerAHK2 +0 -17
- data/autohotkey/tools/ConfigEditor +0 -16
- data/autohotkey/tools/ConfigEditorAHK +0 -19
- data/autohotkey/tools/DataViewer +0 -14
- data/autohotkey/tools/DataViewerAHK +0 -17
- data/autohotkey/tools/HandbookCreatorAHK +0 -20
- data/autohotkey/tools/LauncherAHK +0 -17
- data/autohotkey/tools/LimitsMonitorAHK +0 -20
- data/autohotkey/tools/OpenGLBuilderAHK +0 -24
- data/autohotkey/tools/PacketViewer +0 -14
- data/autohotkey/tools/PacketViewerAHK +0 -18
- data/autohotkey/tools/PacketViewerAHK2 +0 -17
- data/autohotkey/tools/Replay +0 -14
- data/autohotkey/tools/ReplayAHK +0 -17
- data/autohotkey/tools/ScriptRunner +0 -14
- data/autohotkey/tools/ScriptRunnerAHK +0 -20
- data/autohotkey/tools/ScriptRunnerAHK2 +0 -17
- data/autohotkey/tools/TableManager +0 -14
- data/autohotkey/tools/TableManagerAHK +0 -25
- data/autohotkey/tools/TableManagerAHK2 +0 -18
- data/autohotkey/tools/TableManagerAHK3 +0 -18
- data/autohotkey/tools/TableManagerAHK4 +0 -24
- data/autohotkey/tools/TestRunner +0 -15
- data/autohotkey/tools/TestRunnerAHK +0 -17
- data/autohotkey/tools/TestRunnerAHK2 +0 -17
- data/autohotkey/tools/TestRunnerAHK3 +0 -17
- data/autohotkey/tools/TestRunnerAHK4 +0 -17
- data/autohotkey/tools/TestRunnerAHK5 +0 -17
- data/autohotkey/tools/TestRunnerAHK6 +0 -17
- data/autohotkey/tools/TlmExtractor +0 -15
- data/autohotkey/tools/TlmExtractorAHK +0 -19
- data/autohotkey/tools/TlmExtractorAHK2 +0 -16
- data/autohotkey/tools/TlmExtractorAHK3 +0 -16
- data/autohotkey/tools/TlmGrapher +0 -14
- data/autohotkey/tools/TlmGrapherAHK +0 -19
- data/autohotkey/tools/TlmGrapherAHK2 +0 -23
- data/autohotkey/tools/TlmGrapherAHK3 +0 -17
- data/autohotkey/tools/TlmGrapherAHK4 +0 -17
- data/autohotkey/tools/TlmViewer +0 -14
- data/autohotkey/tools/TlmViewerAHK +0 -28
- data/autohotkey/tools/TlmViewerAHK2 +0 -22
- data/autohotkey/tools/TlmViewerAHK3 +0 -23
- data/autohotkey/tools/TlmViewerAHK4 +0 -22
- data/autohotkey/tools/TlmViewerAHK5 +0 -18
- data/autohotkey/tools/autohotkey.rb +0 -38
- data/autohotkey/tools/cmd_extractor.ahk +0 -52
- data/autohotkey/tools/cmd_sender.ahk +0 -208
- data/autohotkey/tools/cmd_sender2.ahk +0 -4
- data/autohotkey/tools/cmd_sequence.ahk +0 -233
- data/autohotkey/tools/cmd_sequence2.ahk +0 -23
- data/autohotkey/tools/cmd_tlm_server.ahk +0 -90
- data/autohotkey/tools/cmd_tlm_server2.ahk +0 -45
- data/autohotkey/tools/config_editor.ahk +0 -197
- data/autohotkey/tools/data_viewer.ahk +0 -140
- data/autohotkey/tools/handbook_creator.ahk +0 -32
- data/autohotkey/tools/launcher.ahk +0 -42
- data/autohotkey/tools/limits_monitor.ahk +0 -121
- data/autohotkey/tools/open_gl_builder.ahk +0 -133
- data/autohotkey/tools/packet_viewer.ahk +0 -224
- data/autohotkey/tools/packet_viewer2.ahk +0 -9
- data/autohotkey/tools/replay.ahk +0 -103
- data/autohotkey/tools/script_runner.ahk +0 -602
- data/autohotkey/tools/script_runner2.ahk +0 -50
- data/autohotkey/tools/table_manager.ahk +0 -291
- data/autohotkey/tools/test_runner.ahk +0 -262
- data/autohotkey/tools/test_runner2.ahk +0 -49
- data/autohotkey/tools/test_runner3.ahk +0 -11
- data/autohotkey/tools/test_runner5.ahk +0 -8
- data/autohotkey/tools/test_runner6.ahk +0 -5
- data/autohotkey/tools/tlm_extractor.ahk +0 -356
- data/autohotkey/tools/tlm_grapher.ahk +0 -670
- data/autohotkey/tools/tlm_grapher2.ahk +0 -115
- data/autohotkey/tools/tlm_grapher3.ahk +0 -23
- data/autohotkey/tools/tlm_viewer.ahk +0 -140
- data/autohotkey/tools/tlm_viewer2.ahk +0 -49
- data/autohotkey/tools/tlm_viewer4.ahk +0 -4
- data/autohotkey/tools/tlm_viewer5.ahk +0 -19
- data/autohotkey/tools/tool_launch.rb +0 -38
- data/bin/dart_import +0 -4
- data/bin/dart_util +0 -4
- data/bin/exchndl20-x64.dll +0 -0
- data/bin/exchndl20.dll +0 -0
- data/bin/exchndl21-x64.dll +0 -0
- data/bin/exchndl21.dll +0 -0
- data/bin/exchndl22-x64.dll +0 -0
- data/bin/exchndl22.dll +0 -0
- data/bin/mgwhelp-x64.dll +0 -0
- data/bin/mgwhelp.dll +0 -0
- data/cosmos.gemspec +0 -114
- data/data/COSMOS_64x64.bmp +0 -0
- data/data/COSMOS_64x64.ico +0 -0
- data/data/COSMOS_64x64.png +0 -0
- data/data/COSMOS_Architecture.png +0 -0
- data/data/CheckBoxCheck.gif +0 -0
- data/data/CheckBoxEmpty.gif +0 -0
- data/data/Earthmap1024x512.gif +0 -0
- data/data/about.txt +0 -4
- data/data/add_database.png +0 -0
- data/data/add_plot.png +0 -0
- data/data/add_tab.png +0 -0
- data/data/blank.png +0 -0
- data/data/bug.png +0 -0
- data/data/checkmark.png +0 -0
- data/data/close.png +0 -0
- data/data/cmd_extractor.png +0 -0
- data/data/cmd_sender.png +0 -0
- data/data/cmd_sequence.png +0 -0
- data/data/config/cmd_sequence.yaml +0 -14
- data/data/config/data_viewer.yaml +0 -43
- data/data/config/handbook_creator.yaml +0 -23
- data/data/config/housekeeping_params.yaml +0 -85
- data/data/config/launcher.yaml +0 -127
- data/data/config/limits_monitor.yaml +0 -53
- data/data/config/linegraph_params.yaml +0 -30
- data/data/config/linegraph_plot.yaml +0 -106
- data/data/config/page_modifiers.yaml +0 -128
- data/data/config/script_runner.yaml +0 -24
- data/data/config/system.yaml +0 -371
- data/data/config/test_runner.yaml +0 -119
- data/data/config/tlm_extractor.yaml +0 -109
- data/data/config/tlm_grapher.yaml +0 -78
- data/data/config/tlm_viewer.yaml +0 -112
- data/data/config/xy_params.yaml +0 -50
- data/data/config/xy_plot.yaml +0 -12
- data/data/config_editor.png +0 -0
- data/data/copy.png +0 -0
- data/data/cosmos.xcf +0 -0
- data/data/cosmos_word.gif +0 -0
- data/data/crc.txt +0 -470
- data/data/critical.wav +0 -0
- data/data/cts.png +0 -0
- data/data/cut.png +0 -0
- data/data/dart.png +0 -0
- data/data/data_viewer.png +0 -0
- data/data/delete.png +0 -0
- data/data/delete_database.png +0 -0
- data/data/delete_plot.png +0 -0
- data/data/delete_tab.png +0 -0
- data/data/diamond.STL +0 -58
- data/data/disconnected.png +0 -0
- data/data/edit.png +0 -0
- data/data/edit_database.png +0 -0
- data/data/edit_plot.png +0 -0
- data/data/edit_tab.png +0 -0
- data/data/end-26.png +0 -0
- data/data/fast_forward-26.png +0 -0
- data/data/file.png +0 -0
- data/data/handbook_creator.png +0 -0
- data/data/help.png +0 -0
- data/data/html-32.png +0 -0
- data/data/information.wav +0 -0
- data/data/input.wav +0 -0
- data/data/launcher.png +0 -0
- data/data/legal.gif +0 -0
- data/data/legal.txt +0 -8
- data/data/limits_monitor.png +0 -0
- data/data/message.wav +0 -0
- data/data/moonmap1k.gif +0 -0
- data/data/multi.png +0 -0
- data/data/open.png +0 -0
- data/data/open_in_browser-32.png +0 -0
- data/data/opengl_builder.png +0 -0
- data/data/packet_viewer.png +0 -0
- data/data/pdf-32.png +0 -0
- data/data/play-26.png +0 -0
- data/data/question.wav +0 -0
- data/data/redo.png +0 -0
- data/data/replay.png +0 -0
- data/data/reverse-play-26.png +0 -0
- data/data/rewind-26.png +0 -0
- data/data/running.png +0 -0
- data/data/save.png +0 -0
- data/data/save_as.png +0 -0
- data/data/screenshot.png +0 -0
- data/data/script_runner.png +0 -0
- data/data/search-14.png +0 -0
- data/data/search.png +0 -0
- data/data/send_file.png +0 -0
- data/data/skip_to_start-26.png +0 -0
- data/data/spinner.gif +0 -0
- data/data/splash.gif +0 -0
- data/data/stop-26.png +0 -0
- data/data/table_manager.png +0 -0
- data/data/test_runner.png +0 -0
- data/data/tlm_extractor.png +0 -0
- data/data/tlm_grapher.png +0 -0
- data/data/tlm_viewer.png +0 -0
- data/data/undo.png +0 -0
- data/data/warning.wav +0 -0
- data/demo/Gemfile +0 -13
- data/demo/Launcher +0 -16
- data/demo/Launcher.bat +0 -1
- data/demo/Launcher2.bat +0 -1
- data/demo/LauncherMini.bat +0 -1
- data/demo/Rakefile +0 -83
- data/demo/config/dart/Gemfile +0 -49
- data/demo/config/data/attitude.bin +0 -0
- data/demo/config/data/crc.txt +0 -294
- data/demo/config/data/diamond.STL +0 -58
- data/demo/config/data/hselectoff.gif +0 -0
- data/demo/config/data/hselecton.gif +0 -0
- data/demo/config/data/hswitchoff.gif +0 -0
- data/demo/config/data/hswitchon.gif +0 -0
- data/demo/config/data/meta_init.txt +0 -1
- data/demo/config/data/position.bin +0 -0
- data/demo/config/data/poweroff.gif +0 -0
- data/demo/config/data/poweron.gif +0 -0
- data/demo/config/data/satellite.gif +0 -0
- data/demo/config/data/tada.wav +0 -0
- data/demo/config/data/vswitchoff.gif +0 -0
- data/demo/config/data/vswitchon.gif +0 -0
- data/demo/config/system/system.txt +0 -90
- data/demo/config/system/system2.txt +0 -75
- data/demo/config/system/system_alt_ports.txt +0 -80
- data/demo/config/targets/DART/cmd_tlm/dart_cmds.txt +0 -2
- data/demo/config/targets/DART/cmd_tlm/dart_tlm.txt +0 -40
- data/demo/config/targets/DART/cmd_tlm_server.txt +0 -6
- data/demo/config/targets/DART/screens/status.txt +0 -54
- data/demo/config/targets/DART/target.txt +0 -7
- data/demo/config/targets/EXAMPLE/cmd_tlm/example_cmds.txt +0 -2
- data/demo/config/targets/EXAMPLE/cmd_tlm/example_tlm.txt +0 -5
- data/demo/config/targets/EXAMPLE/cmd_tlm_server.txt +0 -7
- data/demo/config/targets/EXAMPLE/lib/example_interface.rb +0 -18
- data/demo/config/targets/EXAMPLE/target.txt +0 -9
- data/demo/config/targets/INST/cmd_tlm/_ccsds_cmd.txt +0 -9
- data/demo/config/targets/INST/cmd_tlm/_ccsds_tlm.txt +0 -19
- data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +0 -58
- data/demo/config/targets/INST/cmd_tlm/inst_tlm.txt +0 -169
- data/demo/config/targets/INST/cmd_tlm/inst_tlm_override.txt +0 -12
- data/demo/config/targets/INST/cmd_tlm_server.txt +0 -8
- data/demo/config/targets/INST/cmd_tlm_server2.txt +0 -7
- data/demo/config/targets/INST/doc/README.txt +0 -1
- data/demo/config/targets/INST/lib/example_limits_response.rb +0 -30
- data/demo/config/targets/INST/lib/inst_dump_component.rb +0 -34
- data/demo/config/targets/INST/lib/sim_inst.rb +0 -333
- data/demo/config/targets/INST/procedures/checks.rb +0 -11
- data/demo/config/targets/INST/procedures/collect.rb +0 -18
- data/demo/config/targets/INST/procedures/disconnect.rb +0 -29
- data/demo/config/targets/INST/procedures/utilities/clear.rb +0 -7
- data/demo/config/targets/INST/procedures/utilities/collect.rb +0 -14
- data/demo/config/targets/INST/screens/_footer.txt +0 -4
- data/demo/config/targets/INST/screens/adcs.txt +0 -71
- data/demo/config/targets/INST/screens/array.txt +0 -15
- data/demo/config/targets/INST/screens/block.txt +0 -8
- data/demo/config/targets/INST/screens/commanding.txt +0 -42
- data/demo/config/targets/INST/screens/graphs.txt +0 -14
- data/demo/config/targets/INST/screens/ground.txt +0 -47
- data/demo/config/targets/INST/screens/ground_error.gif +0 -0
- data/demo/config/targets/INST/screens/ground_off.gif +0 -0
- data/demo/config/targets/INST/screens/ground_on.gif +0 -0
- data/demo/config/targets/INST/screens/hs.txt +0 -43
- data/demo/config/targets/INST/screens/latest.txt +0 -23
- data/demo/config/targets/INST/screens/limits.txt +0 -81
- data/demo/config/targets/INST/screens/other.txt +0 -34
- data/demo/config/targets/INST/screens/params.txt +0 -54
- data/demo/config/targets/INST/screens/satellite.gif +0 -0
- data/demo/config/targets/INST/screens/spacing_box.txt +0 -44
- data/demo/config/targets/INST/screens/spacing_grid.txt +0 -78
- data/demo/config/targets/INST/screens/tabs.txt +0 -68
- data/demo/config/targets/INST/sequences/sequence.tsv +0 -3
- data/demo/config/targets/INST/tables/EventAction.csv +0 -9
- data/demo/config/targets/INST/tables/EventAction.dat +0 -0
- data/demo/config/targets/INST/tables/McConfigTable.csv +0 -20
- data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
- data/demo/config/targets/INST/target.txt +0 -38
- data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +0 -2
- data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +0 -2
- data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +0 -6
- data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +0 -38
- data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +0 -6
- data/demo/config/targets/SYSTEM/cmd_tlm/meta_tlm.txt +0 -10
- data/demo/config/targets/SYSTEM/cmd_tlm/override.txt +0 -29
- data/demo/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +0 -41
- data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +0 -7
- data/demo/config/targets/SYSTEM/cmd_tlm_server.txt +0 -6
- data/demo/config/targets/SYSTEM/lib/limits_groups.rb +0 -55
- data/demo/config/targets/SYSTEM/screens/status.txt +0 -12
- data/demo/config/targets/SYSTEM/target.txt +0 -12
- data/demo/config/targets/TEMPLATED/cmd_tlm/templated_cmds.txt +0 -13
- data/demo/config/targets/TEMPLATED/cmd_tlm/templated_tlm.txt +0 -3
- data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +0 -6
- data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +0 -59
- data/demo/config/targets/TEMPLATED/target.txt +0 -8
- data/demo/config/tools/cmd_sequence/cmd_sequence.txt +0 -2
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +0 -45
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +0 -42
- data/demo/config/tools/cmd_tlm_server/cmd_tlm_server_chain.txt +0 -18
- data/demo/config/tools/data_viewer/data_viewer.txt +0 -23
- data/demo/config/tools/example_application.css +0 -58
- data/demo/config/tools/handbook_creator/assets/css/bootstrap-theme.css +0 -397
- data/demo/config/tools/handbook_creator/assets/css/bootstrap-theme.min.css +0 -7
- data/demo/config/tools/handbook_creator/assets/css/bootstrap.css +0 -7118
- data/demo/config/tools/handbook_creator/assets/css/bootstrap.min.css +0 -7
- data/demo/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/demo/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.svg +0 -229
- data/demo/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/demo/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/demo/config/tools/handbook_creator/assets/img/ball_logo.bmp +0 -0
- data/demo/config/tools/handbook_creator/assets/img/ball_logo.gif +0 -0
- data/demo/config/tools/handbook_creator/assets/img/ball_logo.jpg +0 -0
- data/demo/config/tools/handbook_creator/assets/js/bootstrap.js +0 -2006
- data/demo/config/tools/handbook_creator/assets/js/bootstrap.min.js +0 -7
- data/demo/config/tools/handbook_creator/assets/js/html5shiv.js +0 -8
- data/demo/config/tools/handbook_creator/assets/js/jquery-1.10.2.min.js +0 -6
- data/demo/config/tools/handbook_creator/assets/js/respond.min.js +0 -6
- data/demo/config/tools/handbook_creator/default_toc.xsl +0 -59
- data/demo/config/tools/handbook_creator/handbook_creator.txt +0 -66
- data/demo/config/tools/handbook_creator/templates/command_packets.html.erb +0 -88
- data/demo/config/tools/handbook_creator/templates/command_toc.html.erb +0 -38
- data/demo/config/tools/handbook_creator/templates/footer.html.erb +0 -9
- data/demo/config/tools/handbook_creator/templates/header.html.erb +0 -25
- data/demo/config/tools/handbook_creator/templates/limits_groups.html.erb +0 -13
- data/demo/config/tools/handbook_creator/templates/nav.html.erb +0 -27
- data/demo/config/tools/handbook_creator/templates/overview.html.erb +0 -1
- data/demo/config/tools/handbook_creator/templates/pdf_cover.html.erb +0 -23
- data/demo/config/tools/handbook_creator/templates/pdf_footer.html.erb +0 -33
- data/demo/config/tools/handbook_creator/templates/pdf_header.html.erb +0 -41
- data/demo/config/tools/handbook_creator/templates/telemetry_packets.html.erb +0 -82
- data/demo/config/tools/handbook_creator/templates/telemetry_toc.html.erb +0 -38
- data/demo/config/tools/handbook_creator/templates/title.html.erb +0 -1
- data/demo/config/tools/launcher/launcher.css +0 -7
- data/demo/config/tools/launcher/launcher.txt +0 -49
- data/demo/config/tools/launcher/launcher2.css +0 -10
- data/demo/config/tools/launcher/launcher2.txt +0 -48
- data/demo/config/tools/launcher/launcher_mini.txt +0 -45
- data/demo/config/tools/limits_monitor/README.txt +0 -1
- data/demo/config/tools/opengl_builder/README.txt +0 -1
- data/demo/config/tools/script_runner/script_runner.txt +0 -2
- data/demo/config/tools/table_manager/ConfigTables_def.txt +0 -8
- data/demo/config/tools/table_manager/ExampleTableDefinition.txt +0 -24
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +0 -37
- data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +0 -34
- data/demo/config/tools/table_manager/PPSSelectionTable_def.txt +0 -9
- data/demo/config/tools/table_manager/TLMMonitoringTable_def.txt +0 -31
- data/demo/config/tools/test_runner/test_runner.css +0 -45
- data/demo/config/tools/test_runner/test_runner.txt +0 -19
- data/demo/config/tools/tlm_extractor/_adcs_time.txt +0 -2
- data/demo/config/tools/tlm_extractor/tlm_extractor.txt +0 -13
- data/demo/config/tools/tlm_extractor/tlm_extractor2.txt +0 -2
- data/demo/config/tools/tlm_extractor/tlm_extractor3.txt +0 -2
- data/demo/config/tools/tlm_extractor/tlm_extractor4.txt +0 -2
- data/demo/config/tools/tlm_grapher/README.txt +0 -1
- data/demo/config/tools/tlm_viewer/tlm_viewer.txt +0 -41
- data/demo/lib/cmd_sequence_exporter.rb +0 -52
- data/demo/lib/example_background_task.rb +0 -57
- data/demo/lib/example_target.rb +0 -103
- data/demo/lib/scpi_target.rb +0 -68
- data/demo/lib/user_version.rb +0 -3
- data/demo/outputs/dart/data/README.txt +0 -1
- data/demo/outputs/handbooks/README.txt +0 -1
- data/demo/outputs/logs/README.txt +0 -1
- data/demo/outputs/saved_config/README.txt +0 -1
- data/demo/outputs/sequences/sequence.tsv +0 -4
- data/demo/outputs/tables/README.txt +0 -1
- data/demo/outputs/tmp/README.txt +0 -1
- data/demo/procedures/cosmos_api_test.rb +0 -314
- data/demo/procedures/example_test.rb +0 -192
- data/demo/procedures/interactive.rb +0 -22
- data/demo/procedures/local_screen_example.rb +0 -51
- data/demo/procedures/plot_test.rb +0 -8
- data/demo/procedures/replay_test.rb +0 -32
- data/demo/procedures/run_example_test.rb +0 -3
- data/demo/procedures/test.rb +0 -51
- data/demo/tools/CmdExtractor +0 -16
- data/demo/tools/CmdExtractor.bat +0 -9
- data/demo/tools/CmdSender +0 -16
- data/demo/tools/CmdSender.bat +0 -9
- data/demo/tools/CmdSequence +0 -16
- data/demo/tools/CmdSequence.bat +0 -9
- data/demo/tools/CmdTlmServer +0 -16
- data/demo/tools/CmdTlmServer.bat +0 -9
- data/demo/tools/ConfigEditor +0 -16
- data/demo/tools/ConfigEditor.bat +0 -9
- data/demo/tools/Dart +0 -16
- data/demo/tools/Dart.bat +0 -9
- data/demo/tools/DataViewer +0 -16
- data/demo/tools/DataViewer.bat +0 -9
- data/demo/tools/ExampleTarget +0 -16
- data/demo/tools/ExampleTarget.bat +0 -9
- data/demo/tools/HandbookCreator +0 -16
- data/demo/tools/HandbookCreator.bat +0 -9
- data/demo/tools/Launcher +0 -16
- data/demo/tools/Launcher.bat +0 -9
- data/demo/tools/LimitsMonitor +0 -16
- data/demo/tools/LimitsMonitor.bat +0 -9
- data/demo/tools/OpenGLBuilder +0 -16
- data/demo/tools/OpenGLBuilder.bat +0 -9
- data/demo/tools/PacketViewer +0 -16
- data/demo/tools/PacketViewer.bat +0 -9
- data/demo/tools/Replay +0 -16
- data/demo/tools/Replay.bat +0 -9
- data/demo/tools/ScpiTarget +0 -16
- data/demo/tools/ScpiTarget.bat +0 -9
- data/demo/tools/ScriptRunner +0 -16
- data/demo/tools/ScriptRunner.bat +0 -9
- data/demo/tools/TableManager +0 -16
- data/demo/tools/TableManager.bat +0 -9
- data/demo/tools/TestRunner +0 -16
- data/demo/tools/TestRunner.bat +0 -9
- data/demo/tools/TlmExtractor +0 -16
- data/demo/tools/TlmExtractor.bat +0 -9
- data/demo/tools/TlmGrapher +0 -16
- data/demo/tools/TlmGrapher.bat +0 -9
- data/demo/tools/TlmViewer +0 -16
- data/demo/tools/TlmViewer.bat +0 -9
- data/demo/tools/ToolLaunch.bat +0 -72
- data/demo/tools/mac/CmdExtractor.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +0 -16
- data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/CmdExtractor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/CmdSender.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +0 -16
- data/demo/tools/mac/CmdSender.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/CmdSender.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +0 -16
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/CmdTlmServer.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +0 -16
- data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/CmdTlmServer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/ConfigEditor.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/ConfigEditor.app/Contents/MacOS/ConfigEditor.rb +0 -16
- data/demo/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/ConfigEditor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/ConfigEditor.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/DataViewer.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +0 -16
- data/demo/tools/mac/DataViewer.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/DataViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/HandbookCreator.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +0 -16
- data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/HandbookCreator.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/Launcher.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +0 -16
- data/demo/tools/mac/Launcher.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/Launcher.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/LimitsMonitor.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +0 -16
- data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/LimitsMonitor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/OpenGLBuilder.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +0 -16
- data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/OpenGLBuilder.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/PacketViewer.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +0 -16
- data/demo/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/PacketViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/Replay.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/Replay.app/Contents/MacOS/Replay.rb +0 -16
- data/demo/tools/mac/Replay.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/Replay.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/ScriptRunner.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +0 -16
- data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/ScriptRunner.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/TableManager.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +0 -16
- data/demo/tools/mac/TableManager.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/TableManager.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/TestRunner.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +0 -16
- data/demo/tools/mac/TestRunner.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/TestRunner.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/TlmExtractor.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +0 -16
- data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/TlmExtractor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/TlmGrapher.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +0 -16
- data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/TlmGrapher.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/mac/TlmViewer.app/Contents/Info.plist +0 -38
- data/demo/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +0 -16
- data/demo/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +0 -10
- data/demo/tools/mac/TlmViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/demo/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/demo/tools/tool_launch.rb +0 -38
- data/ext/cosmos/ext/line_graph/extconf.rb +0 -13
- data/ext/cosmos/ext/line_graph/line_graph.c +0 -460
- data/ext/cosmos/ext/low_fragmentation_array/extconf.rb +0 -13
- data/ext/cosmos/ext/low_fragmentation_array/low_fragmentation_array.c +0 -265
- data/extensions/vscode/.gitignore +0 -4
- data/extensions/vscode/.vscode/launch.json +0 -32
- data/extensions/vscode/.vscode/settings.json +0 -13
- data/extensions/vscode/.vscode/tasks.json +0 -79
- data/extensions/vscode/License.txt +0 -879
- data/extensions/vscode/README.md +0 -9
- data/extensions/vscode/client/License.txt +0 -879
- data/extensions/vscode/client/README.md +0 -39
- data/extensions/vscode/client/cosmos.configuration.json +0 -23
- data/extensions/vscode/client/images/icon.png +0 -0
- data/extensions/vscode/client/package-lock.json +0 -414
- data/extensions/vscode/client/package.json +0 -105
- data/extensions/vscode/client/src/extension.ts +0 -132
- data/extensions/vscode/client/src/screen_preview.rb +0 -25
- data/extensions/vscode/client/syntaxes/cosmos.tmLanguage.json +0 -219
- data/extensions/vscode/client/tsconfig.json +0 -17
- data/extensions/vscode/package-lock.json +0 -26
- data/extensions/vscode/package.json +0 -35
- data/extensions/vscode/server/License.txt +0 -879
- data/extensions/vscode/server/package-lock.json +0 -236
- data/extensions/vscode/server/package.json +0 -29
- data/extensions/vscode/server/src/server.ts +0 -59
- data/extensions/vscode/server/tsconfig.json +0 -16
- data/install/Gemfile +0 -13
- data/install/Launcher +0 -16
- data/install/Launcher.bat +0 -1
- data/install/Rakefile +0 -81
- data/install/config/dart/Gemfile +0 -49
- data/install/config/data/README.txt +0 -1
- data/install/config/data/crc.txt +0 -179
- data/install/config/system/system.txt +0 -75
- data/install/config/targets/SYSTEM/cmd_tlm/meta_tlm.txt +0 -9
- data/install/config/targets/SYSTEM/target.txt +0 -12
- data/install/config/tools/cmd_tlm_server/cmd_tlm_server.txt +0 -3
- data/install/config/tools/data_viewer/data_viewer.txt +0 -4
- data/install/config/tools/handbook_creator/assets/css/bootstrap-theme.css +0 -397
- data/install/config/tools/handbook_creator/assets/css/bootstrap-theme.min.css +0 -7
- data/install/config/tools/handbook_creator/assets/css/bootstrap.css +0 -7118
- data/install/config/tools/handbook_creator/assets/css/bootstrap.min.css +0 -7
- data/install/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/install/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.svg +0 -229
- data/install/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/install/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/install/config/tools/handbook_creator/assets/img/ball_logo.bmp +0 -0
- data/install/config/tools/handbook_creator/assets/img/ball_logo.gif +0 -0
- data/install/config/tools/handbook_creator/assets/img/ball_logo.jpg +0 -0
- data/install/config/tools/handbook_creator/assets/js/bootstrap.js +0 -2006
- data/install/config/tools/handbook_creator/assets/js/bootstrap.min.js +0 -7
- data/install/config/tools/handbook_creator/assets/js/html5shiv.js +0 -8
- data/install/config/tools/handbook_creator/assets/js/jquery-1.10.2.min.js +0 -6
- data/install/config/tools/handbook_creator/assets/js/respond.min.js +0 -6
- data/install/config/tools/handbook_creator/default_toc.xsl +0 -59
- data/install/config/tools/handbook_creator/handbook_creator.txt +0 -49
- data/install/config/tools/handbook_creator/templates/command_packets.html.erb +0 -86
- data/install/config/tools/handbook_creator/templates/command_toc.html.erb +0 -38
- data/install/config/tools/handbook_creator/templates/footer.html.erb +0 -9
- data/install/config/tools/handbook_creator/templates/header.html.erb +0 -25
- data/install/config/tools/handbook_creator/templates/limits_groups.html.erb +0 -13
- data/install/config/tools/handbook_creator/templates/nav.html.erb +0 -27
- data/install/config/tools/handbook_creator/templates/overview.html.erb +0 -1
- data/install/config/tools/handbook_creator/templates/pdf_cover.html.erb +0 -23
- data/install/config/tools/handbook_creator/templates/pdf_footer.html.erb +0 -33
- data/install/config/tools/handbook_creator/templates/pdf_header.html.erb +0 -41
- data/install/config/tools/handbook_creator/templates/telemetry_packets.html.erb +0 -80
- data/install/config/tools/handbook_creator/templates/telemetry_toc.html.erb +0 -38
- data/install/config/tools/handbook_creator/templates/title.html.erb +0 -1
- data/install/config/tools/launcher/launcher.txt +0 -43
- data/install/config/tools/limits_monitor/README.txt +0 -1
- data/install/config/tools/opengl_builder/README.txt +0 -1
- data/install/config/tools/script_runner/script_runner.txt +0 -3
- data/install/config/tools/table_manager/README.txt +0 -1
- data/install/config/tools/test_runner/test_runner.txt +0 -8
- data/install/config/tools/tlm_extractor/README.txt +0 -1
- data/install/config/tools/tlm_grapher/README.txt +0 -1
- data/install/config/tools/tlm_viewer/tlm_viewer.txt +0 -5
- data/install/lib/user_version.rb +0 -3
- data/install/outputs/dart/data/README.txt +0 -1
- data/install/outputs/dart/logs/README.txt +0 -1
- data/install/outputs/handbooks/README.txt +0 -1
- data/install/outputs/logs/README.txt +0 -1
- data/install/outputs/saved_config/README.txt +0 -1
- data/install/outputs/tables/README.txt +0 -1
- data/install/outputs/tmp/README.txt +0 -1
- data/install/procedures/README.txt +0 -1
- data/install/tools/CmdExtractor +0 -16
- data/install/tools/CmdExtractor.bat +0 -9
- data/install/tools/CmdSender +0 -16
- data/install/tools/CmdSender.bat +0 -9
- data/install/tools/CmdSequence +0 -16
- data/install/tools/CmdSequence.bat +0 -9
- data/install/tools/CmdTlmServer +0 -16
- data/install/tools/CmdTlmServer.bat +0 -9
- data/install/tools/ConfigEditor +0 -16
- data/install/tools/ConfigEditor.bat +0 -9
- data/install/tools/Dart +0 -16
- data/install/tools/Dart.bat +0 -9
- data/install/tools/DataViewer +0 -16
- data/install/tools/DataViewer.bat +0 -9
- data/install/tools/HandbookCreator +0 -16
- data/install/tools/HandbookCreator.bat +0 -9
- data/install/tools/Launcher +0 -16
- data/install/tools/Launcher.bat +0 -9
- data/install/tools/LimitsMonitor +0 -16
- data/install/tools/LimitsMonitor.bat +0 -9
- data/install/tools/OpenGLBuilder +0 -16
- data/install/tools/OpenGLBuilder.bat +0 -9
- data/install/tools/PacketViewer +0 -16
- data/install/tools/PacketViewer.bat +0 -9
- data/install/tools/Replay +0 -16
- data/install/tools/Replay.bat +0 -9
- data/install/tools/ScriptRunner +0 -16
- data/install/tools/ScriptRunner.bat +0 -9
- data/install/tools/TableManager +0 -16
- data/install/tools/TableManager.bat +0 -9
- data/install/tools/TestRunner +0 -16
- data/install/tools/TestRunner.bat +0 -9
- data/install/tools/TlmExtractor +0 -16
- data/install/tools/TlmExtractor.bat +0 -9
- data/install/tools/TlmGrapher +0 -16
- data/install/tools/TlmGrapher.bat +0 -9
- data/install/tools/TlmViewer +0 -16
- data/install/tools/TlmViewer.bat +0 -9
- data/install/tools/ToolLaunch.bat +0 -72
- data/install/tools/mac/CmdExtractor.app/Contents/Info.plist +0 -38
- data/install/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +0 -16
- data/install/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/CmdExtractor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/CmdSender.app/Contents/Info.plist +0 -38
- data/install/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +0 -16
- data/install/tools/mac/CmdSender.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/CmdSender.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/CmdSequence.app/Contents/Info.plist +0 -38
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +0 -16
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/CmdTlmServer.app/Contents/Info.plist +0 -38
- data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +0 -16
- data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/CmdTlmServer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/ConfigEditor.app/Contents/Info.plist +0 -38
- data/install/tools/mac/ConfigEditor.app/Contents/MacOS/ConfigEditor.rb +0 -16
- data/install/tools/mac/ConfigEditor.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/ConfigEditor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/ConfigEditor.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/DataViewer.app/Contents/Info.plist +0 -38
- data/install/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +0 -16
- data/install/tools/mac/DataViewer.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/DataViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/HandbookCreator.app/Contents/Info.plist +0 -38
- data/install/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +0 -16
- data/install/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/HandbookCreator.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/Launcher.app/Contents/Info.plist +0 -38
- data/install/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +0 -16
- data/install/tools/mac/Launcher.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/Launcher.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/LimitsMonitor.app/Contents/Info.plist +0 -38
- data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +0 -16
- data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/LimitsMonitor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/OpenGLBuilder.app/Contents/Info.plist +0 -38
- data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +0 -16
- data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/OpenGLBuilder.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/PacketViewer.app/Contents/Info.plist +0 -38
- data/install/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +0 -16
- data/install/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/PacketViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/Replay.app/Contents/Info.plist +0 -38
- data/install/tools/mac/Replay.app/Contents/MacOS/Replay.rb +0 -16
- data/install/tools/mac/Replay.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/Replay.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/ScriptRunner.app/Contents/Info.plist +0 -38
- data/install/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +0 -16
- data/install/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/ScriptRunner.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/TableManager.app/Contents/Info.plist +0 -38
- data/install/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +0 -16
- data/install/tools/mac/TableManager.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/TableManager.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/TestRunner.app/Contents/Info.plist +0 -38
- data/install/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +0 -16
- data/install/tools/mac/TestRunner.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/TestRunner.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/TlmExtractor.app/Contents/Info.plist +0 -38
- data/install/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +0 -16
- data/install/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/TlmExtractor.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/TlmGrapher.app/Contents/Info.plist +0 -38
- data/install/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +0 -16
- data/install/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/TlmGrapher.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/mac/TlmViewer.app/Contents/Info.plist +0 -38
- data/install/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +0 -16
- data/install/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +0 -10
- data/install/tools/mac/TlmViewer.app/Contents/MacOS/tool_launch.rb +0 -38
- data/install/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/install/tools/tool_launch.rb +0 -38
- data/lib/cosmos/conversions/new_packet_log_conversion.rb +0 -52
- data/lib/cosmos/dart/.rspec +0 -1
- data/lib/cosmos/dart/Rakefile +0 -7
- data/lib/cosmos/dart/app/assets/config/manifest.js +0 -4
- data/lib/cosmos/dart/app/assets/images/.keep +0 -0
- data/lib/cosmos/dart/app/assets/javascripts/application.js +0 -13
- data/lib/cosmos/dart/app/assets/javascripts/cable.js +0 -13
- data/lib/cosmos/dart/app/assets/stylesheets/application.css.scss +0 -15
- data/lib/cosmos/dart/app/channels/application_cable/channel.rb +0 -4
- data/lib/cosmos/dart/app/channels/application_cable/connection.rb +0 -4
- data/lib/cosmos/dart/app/controllers/application_controller.rb +0 -3
- data/lib/cosmos/dart/app/jobs/application_job.rb +0 -2
- data/lib/cosmos/dart/app/mailers/application_mailer.rb +0 -4
- data/lib/cosmos/dart/app/models/application_record.rb +0 -3
- data/lib/cosmos/dart/app/models/item.rb +0 -6
- data/lib/cosmos/dart/app/models/item_to_decom_table_mapping.rb +0 -9
- data/lib/cosmos/dart/app/models/packet.rb +0 -4
- data/lib/cosmos/dart/app/models/packet_config.rb +0 -7
- data/lib/cosmos/dart/app/models/packet_log.rb +0 -3
- data/lib/cosmos/dart/app/models/packet_log_entry.rb +0 -41
- data/lib/cosmos/dart/app/models/status.rb +0 -2
- data/lib/cosmos/dart/app/models/system_config.rb +0 -2
- data/lib/cosmos/dart/app/models/target.rb +0 -4
- data/lib/cosmos/dart/app/views/layouts/application.html.erb +0 -14
- data/lib/cosmos/dart/app/views/layouts/mailer.html.erb +0 -13
- data/lib/cosmos/dart/app/views/layouts/mailer.text.erb +0 -1
- data/lib/cosmos/dart/bin/bundle +0 -3
- data/lib/cosmos/dart/bin/rails +0 -4
- data/lib/cosmos/dart/bin/rake +0 -4
- data/lib/cosmos/dart/bin/setup +0 -34
- data/lib/cosmos/dart/bin/update +0 -29
- data/lib/cosmos/dart/config/application.rb +0 -29
- data/lib/cosmos/dart/config/boot.rb +0 -3
- data/lib/cosmos/dart/config/cable.yml +0 -9
- data/lib/cosmos/dart/config/database.yml +0 -25
- data/lib/cosmos/dart/config/environment.rb +0 -5
- data/lib/cosmos/dart/config/environments/development.rb +0 -62
- data/lib/cosmos/dart/config/environments/production.rb +0 -84
- data/lib/cosmos/dart/config/environments/test.rb +0 -42
- data/lib/cosmos/dart/config/initializers/application_controller_renderer.rb +0 -6
- data/lib/cosmos/dart/config/initializers/assets.rb +0 -12
- data/lib/cosmos/dart/config/initializers/backtrace_silencers.rb +0 -7
- data/lib/cosmos/dart/config/initializers/cookies_serializer.rb +0 -5
- data/lib/cosmos/dart/config/initializers/filter_parameter_logging.rb +0 -4
- data/lib/cosmos/dart/config/initializers/inflections.rb +0 -16
- data/lib/cosmos/dart/config/initializers/mime_types.rb +0 -4
- data/lib/cosmos/dart/config/initializers/new_framework_defaults.rb +0 -25
- data/lib/cosmos/dart/config/initializers/session_store.rb +0 -3
- data/lib/cosmos/dart/config/initializers/wrap_parameters.rb +0 -14
- data/lib/cosmos/dart/config/locales/en.yml +0 -23
- data/lib/cosmos/dart/config/puma.rb +0 -47
- data/lib/cosmos/dart/config/routes.rb +0 -3
- data/lib/cosmos/dart/config/secrets.yml +0 -22
- data/lib/cosmos/dart/config.ru +0 -5
- data/lib/cosmos/dart/db/migrate/20170406172907_create_targets.rb +0 -8
- data/lib/cosmos/dart/db/migrate/20170406172927_create_packets.rb +0 -10
- data/lib/cosmos/dart/db/migrate/20170406172937_create_packet_logs.rb +0 -9
- data/lib/cosmos/dart/db/migrate/20170406172943_create_packet_log_entries.rb +0 -16
- data/lib/cosmos/dart/db/migrate/20170406183500_change_packet_log_entries_primary_key.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20170407153618_add_unique_requirements.rb +0 -7
- data/lib/cosmos/dart/db/migrate/20170511155447_add_meta_id_to_packet_log_entries.rb +0 -6
- data/lib/cosmos/dart/db/migrate/20170523185056_rename_received_time_and_add_is_tlm_to_packet_log_entries.rb +0 -7
- data/lib/cosmos/dart/db/migrate/20170525201157_create_items.rb +0 -10
- data/lib/cosmos/dart/db/migrate/20170525201315_create_system_configs.rb +0 -9
- data/lib/cosmos/dart/db/migrate/20170525201624_create_packet_configs.rb +0 -11
- data/lib/cosmos/dart/db/migrate/20170525201745_create_item_to_decom_table_mappings.rb +0 -12
- data/lib/cosmos/dart/db/migrate/20170525201939_create_decom_tables.rb +0 -12
- data/lib/cosmos/dart/db/migrate/20170525202051_add_decom_state_to_packet_log_entry.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20170913160409_update_items.rb +0 -6
- data/lib/cosmos/dart/db/migrate/20170913160558_update_item_to_decom_table_mapping.rb +0 -11
- data/lib/cosmos/dart/db/migrate/20170913160916_udpate_decom_table.rb +0 -6
- data/lib/cosmos/dart/db/migrate/20170913212026_add_ready_to_packet_configs.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20170913223556_modify_tables.rb +0 -9
- data/lib/cosmos/dart/db/migrate/20170914215744_modify_mapping_table.rb +0 -6
- data/lib/cosmos/dart/db/migrate/20170919201433_add_system_config_id_to_packet_config.rb +0 -11
- data/lib/cosmos/dart/db/migrate/20170919210307_add_max_table_index_to_packet_configs.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20171215225546_add_ready_to_packet_log_entries.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20180116214338_add_index_for_ple_ready_to_packet_log_entries.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20180423205644_create_statuses.rb +0 -22
- data/lib/cosmos/dart/db/migrate/20180425211340_add_decom_state_index.rb +0 -5
- data/lib/cosmos/dart/db/migrate/20180509204705_remove_indexes.rb +0 -29
- data/lib/cosmos/dart/db/migrate/20180510160002_remove_timestamps_from_ples.rb +0 -6
- data/lib/cosmos/dart/db/migrate/20180511194944_add_packet_log_id_to_tables.rb +0 -18
- data/lib/cosmos/dart/db/schema.rb +0 -109
- data/lib/cosmos/dart/db/seeds.rb +0 -15
- data/lib/cosmos/dart/examples/dart_decom_client.rb +0 -45
- data/lib/cosmos/dart/examples/dart_stream_client.rb +0 -97
- data/lib/cosmos/dart/lib/dart_common.rb +0 -755
- data/lib/cosmos/dart/lib/dart_constants.rb +0 -15
- data/lib/cosmos/dart/lib/dart_database_cleaner.rb +0 -223
- data/lib/cosmos/dart/lib/dart_decom_query.rb +0 -285
- data/lib/cosmos/dart/lib/dart_decommutator.rb +0 -304
- data/lib/cosmos/dart/lib/dart_importer.rb +0 -184
- data/lib/cosmos/dart/lib/dart_logging.rb +0 -50
- data/lib/cosmos/dart/lib/dart_master_query.rb +0 -71
- data/lib/cosmos/dart/lib/dart_packet_log_writer.rb +0 -157
- data/lib/cosmos/dart/lib/dart_reducer_manager.rb +0 -116
- data/lib/cosmos/dart/lib/dart_reducer_worker_thread.rb +0 -305
- data/lib/cosmos/dart/lib/dart_tcpip_server_interface.rb +0 -142
- data/lib/cosmos/dart/processes/dart.rb +0 -148
- data/lib/cosmos/dart/processes/dart_decom_server.rb +0 -40
- data/lib/cosmos/dart/processes/dart_import.rb +0 -64
- data/lib/cosmos/dart/processes/dart_ingester.rb +0 -132
- data/lib/cosmos/dart/processes/dart_master.rb +0 -44
- data/lib/cosmos/dart/processes/dart_reducer.rb +0 -28
- data/lib/cosmos/dart/processes/dart_stream_server.rb +0 -32
- data/lib/cosmos/dart/processes/dart_util.rb +0 -262
- data/lib/cosmos/dart/processes/dart_worker.rb +0 -38
- data/lib/cosmos/dart/spec/dart/dart_common_spec.rb +0 -333
- data/lib/cosmos/dart/spec/dart/dart_database_cleaner_spec.rb +0 -455
- data/lib/cosmos/dart/spec/dart/dart_decom_query_spec.rb +0 -154
- data/lib/cosmos/dart/spec/dart/dart_decommutator_spec.rb +0 -337
- data/lib/cosmos/dart/spec/dart/dart_importer_spec.rb +0 -84
- data/lib/cosmos/dart/spec/dart/dart_logging_spec.rb +0 -30
- data/lib/cosmos/dart/spec/dart/dart_packet_log_writer_spec.rb +0 -152
- data/lib/cosmos/dart/spec/dart/dart_reducer_manager_spec.rb +0 -290
- data/lib/cosmos/dart/spec/dart/dart_tcpip_server_interface_spec.rb +0 -240
- data/lib/cosmos/dart/spec/rails_helper.rb +0 -60
- data/lib/cosmos/dart/spec/spec_helper.rb +0 -139
- data/lib/cosmos/ext/.keep +0 -0
- data/lib/cosmos/gui/choosers/combobox_chooser.rb +0 -141
- data/lib/cosmos/gui/choosers/file_chooser.rb +0 -85
- data/lib/cosmos/gui/choosers/float_chooser.rb +0 -67
- data/lib/cosmos/gui/choosers/integer_chooser.rb +0 -69
- data/lib/cosmos/gui/choosers/string_chooser.rb +0 -35
- data/lib/cosmos/gui/choosers/telemetry_chooser.rb +0 -326
- data/lib/cosmos/gui/choosers/value_chooser.rb +0 -67
- data/lib/cosmos/gui/dialogs/about_dialog.rb +0 -166
- data/lib/cosmos/gui/dialogs/calendar_dialog.rb +0 -140
- data/lib/cosmos/gui/dialogs/cmd_details_dialog.rb +0 -51
- data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +0 -167
- data/lib/cosmos/gui/dialogs/dart_dialog.rb +0 -60
- data/lib/cosmos/gui/dialogs/details_dialog.rb +0 -205
- data/lib/cosmos/gui/dialogs/exception_dialog.rb +0 -121
- data/lib/cosmos/gui/dialogs/exception_list_dialog.rb +0 -60
- data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +0 -272
- data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +0 -143
- data/lib/cosmos/gui/dialogs/legal_dialog.rb +0 -184
- data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +0 -97
- data/lib/cosmos/gui/dialogs/progress_dialog.rb +0 -313
- data/lib/cosmos/gui/dialogs/pry_dialog.rb +0 -169
- data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +0 -48
- data/lib/cosmos/gui/dialogs/select_dialog.rb +0 -59
- data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +0 -159
- data/lib/cosmos/gui/dialogs/splash.rb +0 -145
- data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +0 -202
- data/lib/cosmos/gui/dialogs/tlm_edit_dialog.rb +0 -79
- data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +0 -110
- data/lib/cosmos/gui/line_graph/line_graph.rb +0 -482
- data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +0 -36
- data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +0 -521
- data/lib/cosmos/gui/line_graph/line_graph_popups.rb +0 -112
- data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +0 -452
- data/lib/cosmos/gui/line_graph/line_graph_script.rb +0 -81
- data/lib/cosmos/gui/line_graph/lines.rb +0 -304
- data/lib/cosmos/gui/line_graph/overview_graph.rb +0 -474
- data/lib/cosmos/gui/opengl/earth_model.rb +0 -25
- data/lib/cosmos/gui/opengl/gl_bounds.rb +0 -55
- data/lib/cosmos/gui/opengl/gl_light.rb +0 -38
- data/lib/cosmos/gui/opengl/gl_material.rb +0 -28
- data/lib/cosmos/gui/opengl/gl_scene.rb +0 -78
- data/lib/cosmos/gui/opengl/gl_shape.rb +0 -148
- data/lib/cosmos/gui/opengl/gl_viewer.rb +0 -715
- data/lib/cosmos/gui/opengl/gl_viewport.rb +0 -34
- data/lib/cosmos/gui/opengl/moon_model.rb +0 -25
- data/lib/cosmos/gui/opengl/opengl.rb +0 -14
- data/lib/cosmos/gui/opengl/stl_reader.rb +0 -210
- data/lib/cosmos/gui/opengl/stl_shape.rb +0 -127
- data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +0 -204
- data/lib/cosmos/gui/qt.rb +0 -858
- data/lib/cosmos/gui/qt_tool.rb +0 -524
- data/lib/cosmos/gui/text/completion.rb +0 -403
- data/lib/cosmos/gui/text/completion_line_edit.rb +0 -30
- data/lib/cosmos/gui/text/completion_text_edit.rb +0 -198
- data/lib/cosmos/gui/text/ruby_editor.rb +0 -505
- data/lib/cosmos/gui/utilities/analyze_log.rb +0 -153
- data/lib/cosmos/gui/utilities/classification_banner.rb +0 -60
- data/lib/cosmos/gui/utilities/screenshot.rb +0 -33
- data/lib/cosmos/gui/utilities/script_module_gui.rb +0 -390
- data/lib/cosmos/gui/widgets/dart_frame.rb +0 -142
- data/lib/cosmos/gui/widgets/dart_meta_frame.rb +0 -145
- data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +0 -171
- data/lib/cosmos/gui/widgets/packet_log_frame.rb +0 -374
- data/lib/cosmos/gui/widgets/realtime_button_bar.rb +0 -99
- data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +0 -134
- data/lib/cosmos/interfaces/dart_status_interface.rb +0 -91
- data/lib/cosmos/packet_logs/ccsds_log_reader.rb +0 -104
- data/lib/cosmos/packet_logs/packet_log_reader.rb +0 -504
- data/lib/cosmos/packet_logs/packet_log_writer.rb +0 -353
- data/lib/cosmos/packet_logs/packet_log_writer_pair.rb +0 -30
- data/lib/cosmos/packet_logs.rb +0 -6
- data/lib/cosmos/packets/parsers/macro_parser.rb +0 -121
- data/lib/cosmos/processors/new_packet_log_processor.rb +0 -39
- data/lib/cosmos/script/cmd_tlm_server.rb +0 -216
- data/lib/cosmos/script/replay.rb +0 -60
- data/lib/cosmos/script/scripting.rb +0 -146
- data/lib/cosmos/script/telemetry.rb +0 -218
- data/lib/cosmos/script/tools.rb +0 -121
- data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +0 -470
- data/lib/cosmos/tools/cmd_sender/cmd_param_table_item_delegate.rb +0 -94
- data/lib/cosmos/tools/cmd_sender/cmd_params.rb +0 -382
- data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +0 -533
- data/lib/cosmos/tools/cmd_sender/cmd_sender_text_edit.rb +0 -70
- data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +0 -769
- data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +0 -221
- data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +0 -206
- data/lib/cosmos/tools/cmd_tlm_server/background_task.rb +0 -54
- data/lib/cosmos/tools/cmd_tlm_server/background_tasks.rb +0 -82
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +0 -785
- data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +0 -650
- data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +0 -132
- data/lib/cosmos/tools/cmd_tlm_server/connections.rb +0 -175
- data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +0 -216
- data/lib/cosmos/tools/cmd_tlm_server/gui/logging_tab.rb +0 -181
- data/lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb +0 -163
- data/lib/cosmos/tools/cmd_tlm_server/gui/replay_tab.rb +0 -319
- data/lib/cosmos/tools/cmd_tlm_server/gui/status_tab.rb +0 -270
- data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +0 -93
- data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +0 -153
- data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +0 -124
- data/lib/cosmos/tools/cmd_tlm_server/packet_logging.rb +0 -161
- data/lib/cosmos/tools/cmd_tlm_server/replay_backend.rb +0 -511
- data/lib/cosmos/tools/cmd_tlm_server/router_thread.rb +0 -71
- data/lib/cosmos/tools/cmd_tlm_server/routers.rb +0 -144
- data/lib/cosmos/tools/config_editor/config_editor.rb +0 -918
- data/lib/cosmos/tools/config_editor/config_editor_frame.rb +0 -686
- data/lib/cosmos/tools/config_editor/system_config_dialog.rb +0 -158
- data/lib/cosmos/tools/data_viewer/data_viewer.rb +0 -789
- data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +0 -121
- data/lib/cosmos/tools/data_viewer/dump_component.rb +0 -34
- data/lib/cosmos/tools/data_viewer/text_component.rb +0 -77
- data/lib/cosmos/tools/handbook_creator/handbook_creator.rb +0 -182
- data/lib/cosmos/tools/handbook_creator/handbook_creator_config.rb +0 -380
- data/lib/cosmos/tools/launcher/launcher.rb +0 -195
- data/lib/cosmos/tools/launcher/launcher_config.rb +0 -245
- data/lib/cosmos/tools/launcher/launcher_multitool.rb +0 -40
- data/lib/cosmos/tools/launcher/launcher_tool.rb +0 -116
- data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +0 -1029
- data/lib/cosmos/tools/opengl_builder/opengl_builder.rb +0 -416
- data/lib/cosmos/tools/opengl_builder/scene_config.rb +0 -118
- data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +0 -641
- data/lib/cosmos/tools/replay/replay.rb +0 -17
- data/lib/cosmos/tools/script_runner/script_audit.rb +0 -148
- data/lib/cosmos/tools/script_runner/script_runner.rb +0 -1066
- data/lib/cosmos/tools/script_runner/script_runner_config.rb +0 -53
- data/lib/cosmos/tools/script_runner/script_runner_frame.rb +0 -1985
- data/lib/cosmos/tools/table_manager/table_manager.rb +0 -1152
- data/lib/cosmos/tools/test_runner/results_writer.rb +0 -287
- data/lib/cosmos/tools/test_runner/test_runner.rb +0 -1302
- data/lib/cosmos/tools/test_runner/test_runner_chooser.rb +0 -353
- data/lib/cosmos/tools/tlm_extractor/text_item_chooser.rb +0 -60
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +0 -1305
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +0 -535
- data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +0 -131
- data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +0 -92
- data/lib/cosmos/tools/tlm_grapher/data_object_adders/singlexy_data_object_adder.rb +0 -44
- data/lib/cosmos/tools/tlm_grapher/data_object_adders/xy_data_object_adder.rb +0 -95
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/data_object_editor.rb +0 -61
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +0 -250
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/linegraph_data_object_editor.rb +0 -141
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/singlexy_data_object_editor.rb +0 -30
- data/lib/cosmos/tools/tlm_grapher/data_object_editors/xy_data_object_editor.rb +0 -210
- data/lib/cosmos/tools/tlm_grapher/data_objects/data_object.rb +0 -232
- data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +0 -503
- data/lib/cosmos/tools/tlm_grapher/data_objects/linegraph_data_object.rb +0 -173
- data/lib/cosmos/tools/tlm_grapher/data_objects/singlexy_data_object.rb +0 -21
- data/lib/cosmos/tools/tlm_grapher/data_objects/xy_data_object.rb +0 -381
- data/lib/cosmos/tools/tlm_grapher/plot_editors/linegraph_plot_editor.rb +0 -191
- data/lib/cosmos/tools/tlm_grapher/plot_editors/plot_editor.rb +0 -28
- data/lib/cosmos/tools/tlm_grapher/plot_editors/singlexy_plot_editor.rb +0 -30
- data/lib/cosmos/tools/tlm_grapher/plot_editors/xy_plot_editor.rb +0 -59
- data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/linegraph_plot_gui_object.rb +0 -173
- data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/singlexy_plot_gui_object.rb +0 -27
- data/lib/cosmos/tools/tlm_grapher/plot_gui_objects/xy_plot_gui_object.rb +0 -74
- data/lib/cosmos/tools/tlm_grapher/plots/linegraph_plot.rb +0 -209
- data/lib/cosmos/tools/tlm_grapher/plots/plot.rb +0 -69
- data/lib/cosmos/tools/tlm_grapher/plots/singlexy_plot.rb +0 -20
- data/lib/cosmos/tools/tlm_grapher/plots/xy_plot.rb +0 -61
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +0 -1291
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +0 -447
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_dart_thread.rb +0 -164
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_data_object_editor.rb +0 -107
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_logfile_thread.rb +0 -114
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +0 -101
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +0 -79
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tab.rb +0 -57
- data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_tool.rb +0 -1079
- data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +0 -104
- data/lib/cosmos/tools/tlm_viewer/screen.rb +0 -590
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +0 -615
- data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +0 -314
- data/lib/cosmos/tools/tlm_viewer/widgets/aging_widget.rb +0 -109
- data/lib/cosmos/tools/tlm_viewer/widgets/array_widget.rb +0 -65
- data/lib/cosmos/tools/tlm_viewer/widgets/backgroundbutton_widget.rb +0 -54
- data/lib/cosmos/tools/tlm_viewer/widgets/block_widget.rb +0 -56
- data/lib/cosmos/tools/tlm_viewer/widgets/button_widget.rb +0 -39
- data/lib/cosmos/tools/tlm_viewer/widgets/canvas_clickable.rb +0 -47
- data/lib/cosmos/tools/tlm_viewer/widgets/canvas_widget.rb +0 -84
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasdot_widget.rb +0 -78
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasellipse_widget.rb +0 -40
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasimage_widget.rb +0 -48
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasimagevalue_widget.rb +0 -109
- data/lib/cosmos/tools/tlm_viewer/widgets/canvaslabel_widget.rb +0 -45
- data/lib/cosmos/tools/tlm_viewer/widgets/canvaslabelvalue_widget.rb +0 -55
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasline_widget.rb +0 -55
- data/lib/cosmos/tools/tlm_viewer/widgets/canvaslinevalue_widget.rb +0 -67
- data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +0 -131
- data/lib/cosmos/tools/tlm_viewer/widgets/checkbutton_widget.rb +0 -40
- data/lib/cosmos/tools/tlm_viewer/widgets/combobox_widget.rb +0 -32
- data/lib/cosmos/tools/tlm_viewer/widgets/formatfontvalue_widget.rb +0 -31
- data/lib/cosmos/tools/tlm_viewer/widgets/formatvalue_widget.rb +0 -32
- data/lib/cosmos/tools/tlm_viewer/widgets/horizontal_widget.rb +0 -27
- data/lib/cosmos/tools/tlm_viewer/widgets/horizontalbox_widget.rb +0 -30
- data/lib/cosmos/tools/tlm_viewer/widgets/horizontalline_widget.rb +0 -24
- data/lib/cosmos/tools/tlm_viewer/widgets/label_widget.rb +0 -31
- data/lib/cosmos/tools/tlm_viewer/widgets/labelformatvalue_widget.rb +0 -38
- data/lib/cosmos/tools/tlm_viewer/widgets/labelled_widget.rb +0 -58
- data/lib/cosmos/tools/tlm_viewer/widgets/labelprogressbar_widget.rb +0 -37
- data/lib/cosmos/tools/tlm_viewer/widgets/labeltrendlimitsbar_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +0 -58
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluedesc_widget.rb +0 -40
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluelimitsbar_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluelimitscolumn_widget.rb +0 -37
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluerangebar_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/labelvaluerangecolumn_widget.rb +0 -38
- data/lib/cosmos/tools/tlm_viewer/widgets/layout_widget.rb +0 -32
- data/lib/cosmos/tools/tlm_viewer/widgets/led_widget.rb +0 -108
- data/lib/cosmos/tools/tlm_viewer/widgets/limits_widget.rb +0 -163
- data/lib/cosmos/tools/tlm_viewer/widgets/limitsbar_widget.rb +0 -130
- data/lib/cosmos/tools/tlm_viewer/widgets/limitscolor_widget.rb +0 -108
- data/lib/cosmos/tools/tlm_viewer/widgets/limitscolumn_widget.rb +0 -130
- data/lib/cosmos/tools/tlm_viewer/widgets/linegraph_widget.rb +0 -62
- data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +0 -59
- data/lib/cosmos/tools/tlm_viewer/widgets/multi_widget.rb +0 -114
- data/lib/cosmos/tools/tlm_viewer/widgets/progressbar_widget.rb +0 -39
- data/lib/cosmos/tools/tlm_viewer/widgets/radiobutton_widget.rb +0 -41
- data/lib/cosmos/tools/tlm_viewer/widgets/rangebar_widget.rb +0 -63
- data/lib/cosmos/tools/tlm_viewer/widgets/rangecolumn_widget.rb +0 -63
- data/lib/cosmos/tools/tlm_viewer/widgets/screenshotbutton_widget.rb +0 -35
- data/lib/cosmos/tools/tlm_viewer/widgets/scrollwindow_widget.rb +0 -34
- data/lib/cosmos/tools/tlm_viewer/widgets/sectionheader_widget.rb +0 -32
- data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +0 -53
- data/lib/cosmos/tools/tlm_viewer/widgets/tabbook_widget.rb +0 -25
- data/lib/cosmos/tools/tlm_viewer/widgets/tabitem_widget.rb +0 -27
- data/lib/cosmos/tools/tlm_viewer/widgets/textbox_widget.rb +0 -56
- data/lib/cosmos/tools/tlm_viewer/widgets/textfield_widget.rb +0 -25
- data/lib/cosmos/tools/tlm_viewer/widgets/timegraph_widget.rb +0 -86
- data/lib/cosmos/tools/tlm_viewer/widgets/title_widget.rb +0 -21
- data/lib/cosmos/tools/tlm_viewer/widgets/trendbar_widget.rb +0 -125
- data/lib/cosmos/tools/tlm_viewer/widgets/trendlimitsbar_widget.rb +0 -48
- data/lib/cosmos/tools/tlm_viewer/widgets/value_widget.rb +0 -43
- data/lib/cosmos/tools/tlm_viewer/widgets/valuelimitsbar_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/valuelimitscolumn_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/valuerangebar_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/valuerangecolumn_widget.rb +0 -36
- data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +0 -37
- data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +0 -40
- data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +0 -270
- data/lib/cosmos/tools/tlm_viewer/widgets.rb +0 -65
- data/lib/cosmos/utilities/low_fragmentation_array.rb +0 -19
- data/make_gems.sh +0 -10
- data/roodi.yml +0 -24
- data/run_gui_tests.bat +0 -46
- data/spec/ccsds/ccsds_packet_spec.rb +0 -67
- data/spec/ccsds/ccsds_parser_spec.rb +0 -148
- data/spec/config/config_parser_spec.rb +0 -399
- data/spec/conversions/conversion_spec.rb +0 -31
- data/spec/conversions/generic_conversion_spec.rb +0 -45
- data/spec/conversions/new_packet_log_conversion_spec.rb +0 -39
- data/spec/conversions/packet_time_formatted_conversion_spec.rb +0 -58
- data/spec/conversions/packet_time_seconds_conversion_spec.rb +0 -60
- data/spec/conversions/polynomial_conversion_spec.rb +0 -40
- data/spec/conversions/processor_conversion_spec.rb +0 -45
- data/spec/conversions/received_count_conversion_spec.rb +0 -43
- data/spec/conversions/received_time_formatted_conversion_spec.rb +0 -49
- data/spec/conversions/received_time_seconds_conversion_spec.rb +0 -50
- data/spec/conversions/segmented_polynomial_conversion_spec.rb +0 -51
- data/spec/conversions/unix_time_formatted_conversion_spec.rb +0 -74
- data/spec/conversions/unix_time_seconds_conversion_spec.rb +0 -76
- data/spec/core_ext/array_spec.rb +0 -247
- data/spec/core_ext/class_spec.rb +0 -90
- data/spec/core_ext/cosmos_io_spec.rb +0 -77
- data/spec/core_ext/exception_spec.rb +0 -91
- data/spec/core_ext/file_spec.rb +0 -72
- data/spec/core_ext/hash_spec.rb +0 -24
- data/spec/core_ext/io_spec.rb +0 -46
- data/spec/core_ext/kernel_spec.rb +0 -54
- data/spec/core_ext/math_spec.rb +0 -116
- data/spec/core_ext/matrix_spec.rb +0 -127
- data/spec/core_ext/objectspace_spec.rb +0 -32
- data/spec/core_ext/range_spec.rb +0 -21
- data/spec/core_ext/socket_spec.rb +0 -34
- data/spec/core_ext/string_spec.rb +0 -239
- data/spec/core_ext/stringio_spec.rb +0 -21
- data/spec/core_ext/time_spec.rb +0 -222
- data/spec/gui/line_graph/line_clip_spec.rb +0 -324
- data/spec/gui/qt_spec.rb +0 -104
- data/spec/gui/utilities/script_module_gui_spec.rb +0 -83
- data/spec/install/config/data/data.txt +0 -1
- data/spec/install/config/system/system.txt +0 -27
- data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +0 -30
- data/spec/install/config/targets/INST/cmd_tlm/inst_cmds.txt +0 -113
- data/spec/install/config/targets/INST/cmd_tlm/inst_tlm.txt +0 -236
- data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +0 -25
- data/spec/install/config/targets/INST/cmd_tlm_server.txt +0 -5
- data/spec/install/config/targets/INST/lib/sim_inst.rb +0 -305
- data/spec/install/config/targets/INST/screens/hs.txt +0 -42
- data/spec/install/config/targets/INST/target.txt +0 -12
- data/spec/install/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +0 -7
- data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_tlm.txt +0 -10
- data/spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt +0 -41
- data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +0 -7
- data/spec/install/config/targets/SYSTEM/cmd_tlm_server.txt +0 -6
- data/spec/install/config/targets/SYSTEM/screens/status.txt +0 -12
- data/spec/install/config/targets/SYSTEM/target.txt +0 -12
- data/spec/install/config/tools/cmd_tlm_server/cmd_tlm_server.txt +0 -4
- data/spec/install/lib/README.txt +0 -1
- data/spec/install/yaml_docs_spec.rb +0 -132
- data/spec/interfaces/cmd_tlm_server_interface_spec.rb +0 -149
- data/spec/interfaces/interface_spec.rb +0 -513
- data/spec/interfaces/linc_interface_spec.rb +0 -243
- data/spec/interfaces/protocols/burst_protocol_spec.rb +0 -318
- data/spec/interfaces/protocols/crc_protocol_spec.rb +0 -825
- data/spec/interfaces/protocols/fixed_protocol_spec.rb +0 -154
- data/spec/interfaces/protocols/ignore_packet_protocol_spec.rb +0 -243
- data/spec/interfaces/protocols/length_protocol_spec.rb +0 -587
- data/spec/interfaces/protocols/override_protocol_spec.rb +0 -162
- data/spec/interfaces/protocols/preidentified_protocol_spec.rb +0 -368
- data/spec/interfaces/protocols/template_protocol_spec.rb +0 -444
- data/spec/interfaces/protocols/terminated_protocol_spec.rb +0 -174
- data/spec/interfaces/serial_interface_spec.rb +0 -66
- data/spec/interfaces/simulated_target_interface_spec.rb +0 -128
- data/spec/interfaces/tcpip_client_interface_spec.rb +0 -60
- data/spec/interfaces/tcpip_server_interface_spec.rb +0 -157
- data/spec/interfaces/udp_interface_spec.rb +0 -249
- data/spec/io/buffered_file_spec.rb +0 -146
- data/spec/io/io_multiplexer_spec.rb +0 -102
- data/spec/io/json_drb_object_spec.rb +0 -106
- data/spec/io/json_drb_rack_spec.rb +0 -166
- data/spec/io/json_drb_spec.rb +0 -251
- data/spec/io/json_rpc_spec.rb +0 -270
- data/spec/io/posix_serial_driver_spec.rb +0 -87
- data/spec/io/raw_logger_pair_spec.rb +0 -76
- data/spec/io/raw_logger_spec.rb +0 -138
- data/spec/io/serial_driver_spec.rb +0 -64
- data/spec/io/stderr_spec.rb +0 -32
- data/spec/io/stdout_spec.rb +0 -32
- data/spec/io/udp_sockets_spec.rb +0 -139
- data/spec/io/win32_serial_driver_spec.rb +0 -129
- data/spec/packet_logs/packet_log_reader_spec.rb +0 -607
- data/spec/packet_logs/packet_log_writer_pair_spec.rb +0 -30
- data/spec/packet_logs/packet_log_writer_spec.rb +0 -227
- data/spec/packets/binary_accessor_spec.rb +0 -2323
- data/spec/packets/commands_spec.rb +0 -401
- data/spec/packets/limits_response_spec.rb +0 -25
- data/spec/packets/limits_spec.rb +0 -344
- data/spec/packets/packet_config_spec.rb +0 -862
- data/spec/packets/packet_item_limits_spec.rb +0 -161
- data/spec/packets/packet_item_spec.rb +0 -450
- data/spec/packets/packet_spec.rb +0 -1499
- data/spec/packets/parsers/format_string_parser_spec.rb +0 -122
- data/spec/packets/parsers/limits_parser_spec.rb +0 -293
- data/spec/packets/parsers/limits_response_parser_spec.rb +0 -149
- data/spec/packets/parsers/macro_parser_spec.rb +0 -220
- data/spec/packets/parsers/packet_item_parser_spec.rb +0 -405
- data/spec/packets/parsers/packet_parser_spec.rb +0 -99
- data/spec/packets/parsers/processor_parser_spec.rb +0 -114
- data/spec/packets/parsers/state_parser_spec.rb +0 -247
- data/spec/packets/parsers/xtce_parser_spec.rb +0 -395
- data/spec/packets/structure_item_spec.rb +0 -200
- data/spec/packets/structure_spec.rb +0 -657
- data/spec/packets/telemetry_spec.rb +0 -629
- data/spec/processors/new_packet_log_processor_spec.rb +0 -39
- data/spec/processors/processor_spec.rb +0 -55
- data/spec/processors/statistics_processor_spec.rb +0 -95
- data/spec/processors/watermark_processor_spec.rb +0 -51
- data/spec/script/cmd_tlm_server_spec.rb +0 -194
- data/spec/script/commands_disconnect_spec.rb +0 -258
- data/spec/script/commands_spec.rb +0 -283
- data/spec/script/extract_spec.rb +0 -166
- data/spec/script/limits_spec.rb +0 -133
- data/spec/script/script_spec.rb +0 -80
- data/spec/script/scripting_spec.rb +0 -742
- data/spec/script/telemetry_spec.rb +0 -186
- data/spec/script/tools_spec.rb +0 -111
- data/spec/spec_helper.rb +0 -248
- data/spec/streams/serial_stream_spec.rb +0 -122
- data/spec/streams/stream_spec.rb +0 -30
- data/spec/streams/tcpip_client_stream_spec.rb +0 -65
- data/spec/streams/tcpip_socket_stream_spec.rb +0 -231
- data/spec/system/system_spec.rb +0 -1081
- data/spec/system/target_spec.rb +0 -368
- data/spec/tools/cmd_tlm_server/api_spec.rb +0 -1656
- data/spec/tools/cmd_tlm_server/background_task_spec.rb +0 -44
- data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +0 -190
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +0 -785
- data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +0 -496
- data/spec/tools/cmd_tlm_server/commanding_spec.rb +0 -171
- data/spec/tools/cmd_tlm_server/connections_spec.rb +0 -231
- data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +0 -319
- data/spec/tools/cmd_tlm_server/interfaces_spec.rb +0 -248
- data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +0 -153
- data/spec/tools/cmd_tlm_server/packet_logging_spec.rb +0 -139
- data/spec/tools/cmd_tlm_server/router_thread_spec.rb +0 -150
- data/spec/tools/cmd_tlm_server/routers_spec.rb +0 -219
- data/spec/tools/launcher/launcher_config_spec.rb +0 -474
- data/spec/tools/table_manager/table_config_spec.rb +0 -225
- data/spec/tools/table_manager/table_item_parser_spec.rb +0 -61
- data/spec/tools/table_manager/table_item_spec.rb +0 -57
- data/spec/tools/table_manager/table_parser_spec.rb +0 -96
- data/spec/tools/table_manager/table_spec.rb +0 -90
- data/spec/tools/table_manager/tablemanager_core_spec.rb +0 -556
- data/spec/tools/tlm_viewer/tlm_viewer_config_spec.rb +0 -403
- data/spec/top_level/top_level_spec.rb +0 -545
- data/spec/utilities/crc_spec.rb +0 -45
- data/spec/utilities/csv_spec.rb +0 -148
- data/spec/utilities/logger_spec.rb +0 -102
- data/spec/utilities/message_log_spec.rb +0 -84
- data/spec/utilities/quaternion_spec.rb +0 -107
- data/spec/utilities/ruby_lex_utils_spec.rb +0 -86
- data/tasks/manifest.rake +0 -22
- data/test/benchmarks/binary_accessor_benchmark.rb +0 -14
- data/test/benchmarks/gsub_benchmark.rb +0 -152
- data/test/benchmarks/is_a_benchmark.rb +0 -34
- data/test/performance/PACKETS.bat +0 -1
- data/test/performance/Rakefile +0 -77
- data/test/performance/THREADS.bat +0 -1
- data/test/performance/config/data/attitude.bin +0 -0
- data/test/performance/config/data/crc.txt +0 -215
- data/test/performance/config/data/diamond.STL +0 -58
- data/test/performance/config/data/groundoff.gif +0 -0
- data/test/performance/config/data/groundon.gif +0 -0
- data/test/performance/config/data/hselectoff.gif +0 -0
- data/test/performance/config/data/hselecton.gif +0 -0
- data/test/performance/config/data/hswitchoff.gif +0 -0
- data/test/performance/config/data/hswitchon.gif +0 -0
- data/test/performance/config/data/meta_init.txt +0 -4
- data/test/performance/config/data/position.bin +0 -0
- data/test/performance/config/data/poweroff.gif +0 -0
- data/test/performance/config/data/poweron.gif +0 -0
- data/test/performance/config/data/satellite.gif +0 -0
- data/test/performance/config/data/tada.wav +0 -0
- data/test/performance/config/data/vswitchoff.gif +0 -0
- data/test/performance/config/data/vswitchon.gif +0 -0
- data/test/performance/config/system/system.txt +0 -0
- data/test/performance/config/system/system_packets.txt +0 -38
- data/test/performance/config/system/system_threads.txt +0 -58
- data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +0 -46
- data/test/performance/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
- data/test/performance/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
- data/test/performance/config/targets/COSMOS/screens/limits_change.txt +0 -20
- data/test/performance/config/targets/COSMOS/screens/version.txt +0 -19
- data/test/performance/config/targets/COSMOS/target.txt +0 -11
- data/test/performance/config/targets/PACKET/cmd_tlm/packet_cmds.txt +0 -20
- data/test/performance/config/targets/PACKET/cmd_tlm/packet_tlm.txt +0 -98
- data/test/performance/config/targets/PACKET/cmd_tlm_server.txt +0 -6
- data/test/performance/config/targets/PACKET/lib/packet_interface.rb +0 -22
- data/test/performance/config/targets/PACKET/lib/packet_limits_response.rb +0 -24
- data/test/performance/config/targets/PACKET/screens/status.txt +0 -25
- data/test/performance/config/targets/PACKET/target.txt +0 -28
- data/test/performance/config/targets/SYSTEM/screens/status.txt +0 -12
- data/test/performance/config/targets/THREAD/cmd_tlm/thread_cmds.txt +0 -17
- data/test/performance/config/targets/THREAD/cmd_tlm/thread_tlm.txt +0 -18
- data/test/performance/config/targets/THREAD/cmd_tlm_server.txt +0 -6
- data/test/performance/config/targets/THREAD/lib/thread_interface.rb +0 -22
- data/test/performance/config/targets/THREAD/screens/status.txt +0 -25
- data/test/performance/config/targets/THREAD/target.txt +0 -7
- data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_packets.txt +0 -28
- data/test/performance/config/tools/cmd_tlm_server/cmd_tlm_server_threads.txt +0 -68
- data/test/performance/config/tools/data_viewer/data_viewer.txt +0 -11
- data/test/performance/config/tools/handbook_creator/assets/css/bootstrap-theme.css +0 -397
- data/test/performance/config/tools/handbook_creator/assets/css/bootstrap-theme.min.css +0 -7
- data/test/performance/config/tools/handbook_creator/assets/css/bootstrap.css +0 -7118
- data/test/performance/config/tools/handbook_creator/assets/css/bootstrap.min.css +0 -7
- data/test/performance/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.eot +0 -0
- data/test/performance/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.svg +0 -229
- data/test/performance/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.ttf +0 -0
- data/test/performance/config/tools/handbook_creator/assets/fonts/glyphicons-halflings-regular.woff +0 -0
- data/test/performance/config/tools/handbook_creator/assets/img/ball_logo.bmp +0 -0
- data/test/performance/config/tools/handbook_creator/assets/img/ball_logo.gif +0 -0
- data/test/performance/config/tools/handbook_creator/assets/img/ball_logo.jpg +0 -0
- data/test/performance/config/tools/handbook_creator/assets/js/bootstrap.js +0 -2006
- data/test/performance/config/tools/handbook_creator/assets/js/bootstrap.min.js +0 -7
- data/test/performance/config/tools/handbook_creator/assets/js/html5shiv.js +0 -8
- data/test/performance/config/tools/handbook_creator/assets/js/jquery-1.10.2.min.js +0 -6
- data/test/performance/config/tools/handbook_creator/assets/js/respond.min.js +0 -6
- data/test/performance/config/tools/handbook_creator/default_toc.xsl +0 -59
- data/test/performance/config/tools/handbook_creator/handbook_creator.txt +0 -66
- data/test/performance/config/tools/handbook_creator/templates/command_packets.html.erb +0 -86
- data/test/performance/config/tools/handbook_creator/templates/command_toc.html.erb +0 -38
- data/test/performance/config/tools/handbook_creator/templates/footer.html.erb +0 -9
- data/test/performance/config/tools/handbook_creator/templates/header.html.erb +0 -25
- data/test/performance/config/tools/handbook_creator/templates/limits_groups.html.erb +0 -13
- data/test/performance/config/tools/handbook_creator/templates/nav.html.erb +0 -27
- data/test/performance/config/tools/handbook_creator/templates/overview.html.erb +0 -1
- data/test/performance/config/tools/handbook_creator/templates/pdf_cover.html.erb +0 -23
- data/test/performance/config/tools/handbook_creator/templates/pdf_footer.html.erb +0 -33
- data/test/performance/config/tools/handbook_creator/templates/pdf_header.html.erb +0 -41
- data/test/performance/config/tools/handbook_creator/templates/telemetry_packets.html.erb +0 -80
- data/test/performance/config/tools/handbook_creator/templates/telemetry_toc.html.erb +0 -38
- data/test/performance/config/tools/handbook_creator/templates/title.html.erb +0 -1
- data/test/performance/config/tools/launcher/launcher_packets.txt +0 -34
- data/test/performance/config/tools/launcher/launcher_threads.txt +0 -83
- data/test/performance/config/tools/limits_monitor/README.txt +0 -1
- data/test/performance/config/tools/opengl_builder/README.txt +0 -1
- data/test/performance/config/tools/script_runner/script_runner.txt +0 -3
- data/test/performance/config/tools/table_manager/ConfigTables_def.txt +0 -8
- data/test/performance/config/tools/table_manager/ExampleTableDefinition.txt +0 -24
- data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +0 -25
- data/test/performance/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +0 -25
- data/test/performance/config/tools/table_manager/PPSSelectionTable_def.txt +0 -8
- data/test/performance/config/tools/table_manager/TLMMonitoringTable_def.txt +0 -248
- data/test/performance/config/tools/test_runner/test_runner.txt +0 -17
- data/test/performance/config/tools/tlm_extractor/tlm_extractor.txt +0 -13
- data/test/performance/config/tools/tlm_extractor/tlm_extractor2.txt +0 -2
- data/test/performance/config/tools/tlm_extractor/tlm_extractor3.txt +0 -2
- data/test/performance/config/tools/tlm_extractor/tlm_extractor4.txt +0 -2
- data/test/performance/config/tools/tlm_grapher/README.txt +0 -1
- data/test/performance/config/tools/tlm_grapher/tlm_grapher.txt +0 -204
- data/test/performance/config/tools/tlm_viewer/tlm_viewer.txt +0 -13
- data/test/performance/lib/packet_target.rb +0 -126
- data/test/performance/lib/thread_target.rb +0 -120
- data/test/performance/lib/user_version.rb +0 -3
- data/test/performance/outputs/handbooks/README.txt +0 -1
- data/test/performance/outputs/logs/README.txt +0 -1
- data/test/performance/outputs/saved_config/README.txt +0 -1
- data/test/performance/outputs/tables/README.txt +0 -1
- data/test/performance/outputs/tmp/README.txt +0 -1
- data/test/performance/procedures/checks.rb +0 -11
- data/test/performance/procedures/clear_util.rb +0 -7
- data/test/performance/procedures/collect.rb +0 -18
- data/test/performance/procedures/collect_util.rb +0 -14
- data/test/performance/procedures/cosmos_api_test.rb +0 -293
- data/test/performance/procedures/disconnect.rb +0 -29
- data/test/performance/procedures/example_test.rb +0 -182
- data/test/performance/procedures/plot_test.rb +0 -8
- data/test/performance/procedures/procedure.rb +0 -3
- data/test/performance/procedures/run_example_test.rb +0 -3
- data/test/performance/procedures/test.rb +0 -51
- data/test/performance/tools/CmdExtractor +0 -14
- data/test/performance/tools/CmdExtractor.bat +0 -59
- data/test/performance/tools/CmdSender +0 -14
- data/test/performance/tools/CmdSender.bat +0 -59
- data/test/performance/tools/CmdTlmServer +0 -16
- data/test/performance/tools/CmdTlmServer.bat +0 -59
- data/test/performance/tools/CmdTlmServerMemProf +0 -20
- data/test/performance/tools/CmdTlmServerMemProf.bat +0 -59
- data/test/performance/tools/DataViewer +0 -14
- data/test/performance/tools/DataViewer.bat +0 -59
- data/test/performance/tools/HandbookCreator +0 -14
- data/test/performance/tools/HandbookCreator.bat +0 -61
- data/test/performance/tools/Launcher +0 -14
- data/test/performance/tools/Launcher.bat +0 -59
- data/test/performance/tools/LimitsMonitor +0 -14
- data/test/performance/tools/LimitsMonitor.bat +0 -59
- data/test/performance/tools/OpenGLBuilder +0 -14
- data/test/performance/tools/OpenGLBuilder.bat +0 -59
- data/test/performance/tools/PacketTarget +0 -14
- data/test/performance/tools/PacketTarget.bat +0 -59
- data/test/performance/tools/PacketViewer +0 -14
- data/test/performance/tools/PacketViewer.bat +0 -59
- data/test/performance/tools/Replay +0 -14
- data/test/performance/tools/Replay.bat +0 -59
- data/test/performance/tools/ScpiTarget +0 -14
- data/test/performance/tools/ScpiTarget.bat +0 -59
- data/test/performance/tools/ScriptRunner +0 -14
- data/test/performance/tools/ScriptRunner.bat +0 -59
- data/test/performance/tools/TableManager +0 -14
- data/test/performance/tools/TableManager.bat +0 -59
- data/test/performance/tools/TestRunner +0 -14
- data/test/performance/tools/TestRunner.bat +0 -59
- data/test/performance/tools/ThreadTarget +0 -14
- data/test/performance/tools/ThreadTarget.bat +0 -59
- data/test/performance/tools/TlmExtractor +0 -14
- data/test/performance/tools/TlmExtractor.bat +0 -59
- data/test/performance/tools/TlmGrapher +0 -14
- data/test/performance/tools/TlmGrapher.bat +0 -59
- data/test/performance/tools/TlmGrapherMemProf +0 -19
- data/test/performance/tools/TlmGrapherMemProf.bat +0 -59
- data/test/performance/tools/TlmViewer +0 -14
- data/test/performance/tools/TlmViewer.bat +0 -59
- data/test/performance/tools/TlmViewerMemProf +0 -19
- data/test/performance/tools/TlmViewerMemProf.bat +0 -59
- data/test/performance/tools/identify_performance.rb +0 -82
- data/test/performance/tools/mac/CmdExtractor.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/CmdExtractor.rb +0 -15
- data/test/performance/tools/mac/CmdExtractor.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/CmdExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/CmdSender.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/CmdSender.rb +0 -15
- data/test/performance/tools/mac/CmdSender.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/CmdSender.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/CmdTlmServer.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/CmdTlmServer.rb +0 -15
- data/test/performance/tools/mac/CmdTlmServer.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/CmdTlmServer.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/DataViewer.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/DataViewer.rb +0 -15
- data/test/performance/tools/mac/DataViewer.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/DataViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/HandbookCreator.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/HandbookCreator.rb +0 -15
- data/test/performance/tools/mac/HandbookCreator.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/HandbookCreator.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/Launcher.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/Launcher.app/Contents/MacOS/Launcher.rb +0 -15
- data/test/performance/tools/mac/Launcher.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/Launcher.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/LimitsMonitor.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/LimitsMonitor.rb +0 -15
- data/test/performance/tools/mac/LimitsMonitor.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/LimitsMonitor.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/OpenGLBuilder.rb +0 -15
- data/test/performance/tools/mac/OpenGLBuilder.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/OpenGLBuilder.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/PacketViewer.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/PacketViewer.rb +0 -15
- data/test/performance/tools/mac/PacketViewer.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/PacketViewer.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/Replay.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/Replay.app/Contents/MacOS/Replay.rb +0 -15
- data/test/performance/tools/mac/Replay.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/Replay.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/ScriptRunner.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/ScriptRunner.rb +0 -15
- data/test/performance/tools/mac/ScriptRunner.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/ScriptRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/TableManager.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/TableManager.app/Contents/MacOS/TableManager.rb +0 -15
- data/test/performance/tools/mac/TableManager.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/TableManager.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/TestRunner.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/TestRunner.rb +0 -15
- data/test/performance/tools/mac/TestRunner.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/TestRunner.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/TlmExtractor.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/TlmExtractor.rb +0 -15
- data/test/performance/tools/mac/TlmExtractor.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/TlmExtractor.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/TlmGrapher.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/TlmGrapher.rb +0 -15
- data/test/performance/tools/mac/TlmGrapher.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/TlmGrapher.app/Contents/Resources/appIcon.icns +0 -0
- data/test/performance/tools/mac/TlmViewer.app/Contents/Info.plist +0 -38
- data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/TlmViewer.rb +0 -15
- data/test/performance/tools/mac/TlmViewer.app/Contents/MacOS/main.sh +0 -6
- data/test/performance/tools/mac/TlmViewer.app/Contents/Resources/appIcon.icns +0 -0
@@ -1,11 +1,20 @@
|
|
1
1
|
/*
|
2
|
-
# Copyright
|
2
|
+
# Copyright 2022 Ball Aerospace & Technologies Corp.
|
3
3
|
# All Rights Reserved.
|
4
4
|
#
|
5
5
|
# This program is free software; you can modify and/or redistribute it
|
6
|
-
# under the terms of the GNU
|
6
|
+
# under the terms of the GNU Affero General Public License
|
7
7
|
# as published by the Free Software Foundation; version 3 with
|
8
8
|
# attribution addendums as found in the LICENSE.txt
|
9
|
+
#
|
10
|
+
# This program is distributed in the hope that it will be useful,
|
11
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
13
|
+
# GNU Affero General Public License for more details.
|
14
|
+
#
|
15
|
+
# This program may also be used under the terms of a commercial or
|
16
|
+
# enterprise edition license of COSMOS if purchased from the
|
17
|
+
# copyright holder
|
9
18
|
*/
|
10
19
|
|
11
20
|
#include "ruby.h"
|
@@ -88,7 +97,7 @@ static VALUE symbol_ERROR_ALLOW_HEX = Qnil;
|
|
88
97
|
/*
|
89
98
|
* Perform an left bit shift on a string
|
90
99
|
*/
|
91
|
-
static void left_shift_byte_array
|
100
|
+
static void left_shift_byte_array(unsigned char *array, int array_length, int shift)
|
92
101
|
{
|
93
102
|
int current_index = 0;
|
94
103
|
int previous_index = 0;
|
@@ -118,7 +127,7 @@ static void left_shift_byte_array (unsigned char* array, int array_length, int s
|
|
118
127
|
/*
|
119
128
|
* Perform an unsigned right bit shift on a string
|
120
129
|
*/
|
121
|
-
static void unsigned_right_shift_byte_array
|
130
|
+
static void unsigned_right_shift_byte_array(unsigned char *array, int array_length, int shift)
|
122
131
|
{
|
123
132
|
int current_index = 0;
|
124
133
|
int previous_index = 0;
|
@@ -148,7 +157,7 @@ static void unsigned_right_shift_byte_array (unsigned char* array, int array_len
|
|
148
157
|
/*
|
149
158
|
* Perform an signed right bit shift on a string
|
150
159
|
*/
|
151
|
-
static void signed_right_shift_byte_array
|
160
|
+
static void signed_right_shift_byte_array(unsigned char *array, int array_length, int shift)
|
152
161
|
{
|
153
162
|
unsigned char start_bits_mask = (0xFF << (8 - shift));
|
154
163
|
int is_signed = (0x80 & array[0]);
|
@@ -164,7 +173,7 @@ static void signed_right_shift_byte_array (unsigned char* array, int array_lengt
|
|
164
173
|
/*
|
165
174
|
* Perform an unsigned bit shift on a string
|
166
175
|
*/
|
167
|
-
static void unsigned_shift_byte_array
|
176
|
+
static void unsigned_shift_byte_array(unsigned char *array, int array_length, int shift)
|
168
177
|
{
|
169
178
|
if (shift < 0)
|
170
179
|
{
|
@@ -179,9 +188,9 @@ static void unsigned_shift_byte_array (unsigned char* array, int array_length, i
|
|
179
188
|
/*
|
180
189
|
* Reverse the byte order in a string.
|
181
190
|
*/
|
182
|
-
static void reverse_bytes
|
191
|
+
static void reverse_bytes(unsigned char *array, int array_length)
|
183
192
|
{
|
184
|
-
int first_index
|
193
|
+
int first_index = 0;
|
185
194
|
int second_index = 0;
|
186
195
|
unsigned char temp_byte = 0;
|
187
196
|
|
@@ -194,7 +203,8 @@ static void reverse_bytes (unsigned char* array, int array_length)
|
|
194
203
|
}
|
195
204
|
}
|
196
205
|
|
197
|
-
static void read_aligned_16(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
206
|
+
static void read_aligned_16(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
207
|
+
{
|
198
208
|
if (endianness == HOST_ENDIANNESS)
|
199
209
|
{
|
200
210
|
read_value[1] = buffer[upper_bound];
|
@@ -207,7 +217,8 @@ static void read_aligned_16(int lower_bound, int upper_bound, VALUE endianness,
|
|
207
217
|
}
|
208
218
|
}
|
209
219
|
|
210
|
-
static void read_aligned_32(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
220
|
+
static void read_aligned_32(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
221
|
+
{
|
211
222
|
if (endianness == HOST_ENDIANNESS)
|
212
223
|
{
|
213
224
|
read_value[3] = buffer[upper_bound];
|
@@ -224,7 +235,8 @@ static void read_aligned_32(int lower_bound, int upper_bound, VALUE endianness,
|
|
224
235
|
}
|
225
236
|
}
|
226
237
|
|
227
|
-
static void read_aligned_64(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
238
|
+
static void read_aligned_64(int lower_bound, int upper_bound, VALUE endianness, unsigned char *buffer, unsigned char *read_value)
|
239
|
+
{
|
228
240
|
if (endianness == HOST_ENDIANNESS)
|
229
241
|
{
|
230
242
|
read_value[7] = buffer[upper_bound];
|
@@ -249,7 +261,8 @@ static void read_aligned_64(int lower_bound, int upper_bound, VALUE endianness,
|
|
249
261
|
}
|
250
262
|
}
|
251
263
|
|
252
|
-
static void read_bitfield(int lower_bound, int upper_bound, int bit_offset, int bit_size, int given_bit_offset, int given_bit_size, VALUE endianness, unsigned char*
|
264
|
+
static void read_bitfield(int lower_bound, int upper_bound, int bit_offset, int bit_size, int given_bit_offset, int given_bit_size, VALUE endianness, unsigned char *buffer, int buffer_length, unsigned char *read_value)
|
265
|
+
{
|
253
266
|
/* Local variables */
|
254
267
|
int num_bytes = 0;
|
255
268
|
int total_bits = 0;
|
@@ -266,7 +279,8 @@ static void read_bitfield(int lower_bound, int upper_bound, int bit_offset, int
|
|
266
279
|
upper_bound = bit_offset / 8;
|
267
280
|
lower_bound = upper_bound - num_bytes + 1;
|
268
281
|
|
269
|
-
if (lower_bound < 0)
|
282
|
+
if (lower_bound < 0)
|
283
|
+
{
|
270
284
|
rb_raise(rb_eArgError, "LITTLE_ENDIAN bitfield with bit_offset %d and bit_size %d is invalid", given_bit_offset, given_bit_size);
|
271
285
|
}
|
272
286
|
|
@@ -295,7 +309,8 @@ static void read_bitfield(int lower_bound, int upper_bound, int bit_offset, int
|
|
295
309
|
unsigned_shift_byte_array(read_value, num_bytes, -start_bits);
|
296
310
|
}
|
297
311
|
|
298
|
-
static void write_bitfield(int lower_bound, int upper_bound, int bit_offset, int bit_size, int given_bit_offset, int given_bit_size, VALUE endianness, unsigned char*
|
312
|
+
static void write_bitfield(int lower_bound, int upper_bound, int bit_offset, int bit_size, int given_bit_offset, int given_bit_size, VALUE endianness, unsigned char *buffer, int buffer_length, unsigned char *write_value)
|
313
|
+
{
|
299
314
|
/* Local variables */
|
300
315
|
int num_bytes = 0;
|
301
316
|
int total_bits = 0;
|
@@ -312,7 +327,8 @@ static void write_bitfield(int lower_bound, int upper_bound, int bit_offset, int
|
|
312
327
|
upper_bound = bit_offset / 8;
|
313
328
|
lower_bound = upper_bound - num_bytes + 1;
|
314
329
|
|
315
|
-
if (lower_bound < 0)
|
330
|
+
if (lower_bound < 0)
|
331
|
+
{
|
316
332
|
rb_raise(rb_eArgError, "LITTLE_ENDIAN bitfield with bit_offset %d and bit_size %d is invalid", given_bit_offset, given_bit_size);
|
317
333
|
}
|
318
334
|
}
|
@@ -364,17 +380,21 @@ static void check_bit_offset_and_size(VALUE self, VALUE type_param, VALUE bit_of
|
|
364
380
|
int bit_offset = NUM2INT(bit_offset_param);
|
365
381
|
int bit_size = NUM2INT(bit_size_param);
|
366
382
|
|
367
|
-
if ((bit_size <= 0) && (data_type_param != symbol_STRING) && (data_type_param != symbol_BLOCK))
|
383
|
+
if ((bit_size <= 0) && (data_type_param != symbol_STRING) && (data_type_param != symbol_BLOCK))
|
384
|
+
{
|
368
385
|
rb_raise(rb_eArgError, "bit_size %d must be positive for data types other than :STRING and :BLOCK", bit_size);
|
369
386
|
}
|
370
387
|
|
371
|
-
if ((bit_size <= 0) && (bit_offset < 0))
|
388
|
+
if ((bit_size <= 0) && (bit_offset < 0))
|
389
|
+
{
|
372
390
|
rb_raise(rb_eArgError, "negative or zero bit_sizes (%d) cannot be given with negative bit_offsets (%d)", bit_size, bit_offset);
|
373
391
|
}
|
374
392
|
|
375
|
-
if (bit_offset < 0)
|
376
|
-
|
377
|
-
|
393
|
+
if (bit_offset < 0)
|
394
|
+
{
|
395
|
+
bit_offset = ((int)(RSTRING_LEN(buffer_param) * 8) + bit_offset);
|
396
|
+
if (bit_offset < 0)
|
397
|
+
{
|
378
398
|
rb_funcall(self, id_method_raise_buffer_error, 5, type_param, buffer_param, data_type_param, bit_offset_param, bit_size_param);
|
379
399
|
}
|
380
400
|
}
|
@@ -399,14 +419,15 @@ static int check_bounds_and_buffer_size(int bit_offset, int bit_size, int buffer
|
|
399
419
|
*upper_bound = (bit_offset + bit_size - 1) / 8;
|
400
420
|
|
401
421
|
/* Sanity check buffer size */
|
402
|
-
if (*upper_bound >= buffer_length)
|
422
|
+
if (*upper_bound >= buffer_length)
|
423
|
+
{
|
403
424
|
/* If it's not the special case of little endian bit field then we fail and return 0 */
|
404
|
-
if (!(
|
405
|
-
|
406
|
-
|
407
|
-
|
408
|
-
|
409
|
-
|
425
|
+
if (!((endianness == symbol_LITTLE_ENDIAN) &&
|
426
|
+
((data_type == symbol_INT) || (data_type == symbol_UINT)) &&
|
427
|
+
/* Not byte aligned with an even bit size */
|
428
|
+
(!((BYTE_ALIGNED(bit_offset)) && (even_bit_size(bit_size)))) &&
|
429
|
+
(*lower_bound < buffer_length)))
|
430
|
+
{
|
410
431
|
result = 0;
|
411
432
|
}
|
412
433
|
}
|
@@ -442,9 +463,9 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
442
463
|
unsigned int unsigned_int_value = 0;
|
443
464
|
signed long long signed_long_long_value = 0;
|
444
465
|
unsigned long long unsigned_long_long_value = 0;
|
445
|
-
unsigned char*
|
466
|
+
unsigned char *unsigned_char_array = NULL;
|
446
467
|
int array_length = 0;
|
447
|
-
char*
|
468
|
+
char *string = NULL;
|
448
469
|
int string_length = 0;
|
449
470
|
float float_value = 0.0;
|
450
471
|
double double_value = 0.0;
|
@@ -459,38 +480,44 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
459
480
|
volatile VALUE temp_value = Qnil;
|
460
481
|
volatile VALUE return_value = Qnil;
|
461
482
|
|
462
|
-
unsigned char*
|
483
|
+
unsigned char *buffer = NULL;
|
463
484
|
long buffer_length = 0;
|
464
485
|
|
465
486
|
Check_Type(param_buffer, T_STRING);
|
466
|
-
buffer = (unsigned char*)
|
487
|
+
buffer = (unsigned char *)RSTRING_PTR(param_buffer);
|
467
488
|
buffer_length = RSTRING_LEN(param_buffer);
|
468
489
|
|
469
490
|
check_bit_offset_and_size(self, symbol_read, param_bit_offset, param_bit_size,
|
470
|
-
|
491
|
+
param_data_type, param_buffer, &bit_offset);
|
471
492
|
|
472
493
|
/* If passed a negative bit size with strings or blocks
|
473
494
|
* recalculate based on the buffer length */
|
474
|
-
if ((bit_size <= 0) && ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK)))
|
495
|
+
if ((bit_size <= 0) && ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK)))
|
496
|
+
{
|
475
497
|
bit_size = (((int)buffer_length * 8) - bit_offset + bit_size);
|
476
|
-
if (bit_size == 0)
|
498
|
+
if (bit_size == 0)
|
499
|
+
{
|
477
500
|
return rb_str_new2("");
|
478
|
-
}
|
501
|
+
}
|
502
|
+
else if (bit_size < 0)
|
503
|
+
{
|
479
504
|
rb_funcall(self, id_method_raise_buffer_error, 5, symbol_read, param_buffer, param_data_type, param_bit_offset, param_bit_size);
|
480
505
|
}
|
481
506
|
}
|
482
507
|
|
483
|
-
if (!check_bounds_and_buffer_size(bit_offset, bit_size, buffer_length, param_endianness, param_data_type, &lower_bound, &upper_bound))
|
508
|
+
if (!check_bounds_and_buffer_size(bit_offset, bit_size, (int)buffer_length, param_endianness, param_data_type, &lower_bound, &upper_bound))
|
484
509
|
{
|
485
510
|
rb_funcall(self, id_method_raise_buffer_error, 5, symbol_read, param_buffer, param_data_type, param_bit_offset, param_bit_size);
|
486
511
|
}
|
487
512
|
|
488
|
-
if ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK))
|
513
|
+
if ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK))
|
514
|
+
{
|
489
515
|
/*#######################################
|
490
516
|
*# Handle :STRING and :BLOCK data types
|
491
517
|
*#######################################*/
|
492
518
|
|
493
|
-
if (BYTE_ALIGNED(bit_offset))
|
519
|
+
if (BYTE_ALIGNED(bit_offset))
|
520
|
+
{
|
494
521
|
string_length = upper_bound - lower_bound + 1;
|
495
522
|
string = malloc(string_length + 1);
|
496
523
|
if (string == NULL) {
|
@@ -498,17 +525,23 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
498
525
|
}
|
499
526
|
memcpy(string, buffer + lower_bound, string_length);
|
500
527
|
string[string_length] = 0;
|
501
|
-
if (param_data_type == symbol_STRING)
|
528
|
+
if (param_data_type == symbol_STRING)
|
529
|
+
{
|
502
530
|
return_value = rb_str_new2(string);
|
503
|
-
}
|
531
|
+
}
|
532
|
+
else /* param_data_type == symbol_BLOCK */
|
533
|
+
{
|
504
534
|
return_value = rb_str_new(string, string_length);
|
505
535
|
}
|
506
536
|
free(string);
|
507
|
-
}
|
537
|
+
}
|
538
|
+
else
|
539
|
+
{
|
508
540
|
rb_raise(rb_eArgError, "bit_offset %d is not byte aligned for data_type %s", given_bit_offset, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
509
541
|
}
|
510
|
-
|
511
|
-
|
542
|
+
}
|
543
|
+
else if (param_data_type == symbol_INT)
|
544
|
+
{
|
512
545
|
/*###################################
|
513
546
|
*# Handle :INT data type
|
514
547
|
*###################################*/
|
@@ -519,28 +552,31 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
519
552
|
*# Handle byte-aligned 8, 16, 32, and 64 bit :INT
|
520
553
|
*###########################################################*/
|
521
554
|
|
522
|
-
switch (bit_size)
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
|
527
|
-
|
528
|
-
|
529
|
-
|
530
|
-
|
531
|
-
|
532
|
-
|
533
|
-
|
534
|
-
|
535
|
-
|
536
|
-
|
537
|
-
|
538
|
-
|
555
|
+
switch (bit_size)
|
556
|
+
{
|
557
|
+
case 8:
|
558
|
+
signed_char_value = *((signed char *)&buffer[lower_bound]);
|
559
|
+
return_value = INT2FIX(signed_char_value);
|
560
|
+
break;
|
561
|
+
case 16:
|
562
|
+
read_aligned_16(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&signed_short_value);
|
563
|
+
return_value = INT2FIX(signed_short_value);
|
564
|
+
break;
|
565
|
+
case 32:
|
566
|
+
read_aligned_32(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&signed_int_value);
|
567
|
+
return_value = INT2NUM(signed_int_value);
|
568
|
+
break;
|
569
|
+
case 64:
|
570
|
+
read_aligned_64(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&signed_long_long_value);
|
571
|
+
return_value = LL2NUM(signed_long_long_value);
|
572
|
+
break;
|
539
573
|
}
|
540
|
-
}
|
541
|
-
|
574
|
+
}
|
575
|
+
else
|
576
|
+
{
|
577
|
+
string_length = ((bit_size - 1) / 8) + 1;
|
542
578
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
543
|
-
unsigned_char_array = (unsigned char*)
|
579
|
+
unsigned_char_array = (unsigned char *)malloc(array_length);
|
544
580
|
if (unsigned_char_array == NULL) {
|
545
581
|
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
546
582
|
}
|
@@ -553,45 +589,62 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
553
589
|
shift_count = shift_needed / 8;
|
554
590
|
shift_needed = shift_needed % 8;
|
555
591
|
|
556
|
-
if (bit_size > 1)
|
557
|
-
|
592
|
+
if (bit_size > 1)
|
593
|
+
{
|
594
|
+
for (index = 0; index < shift_count; index++)
|
595
|
+
{
|
558
596
|
signed_right_shift_byte_array(unsigned_char_array, num_bytes, 8);
|
559
597
|
}
|
560
598
|
|
561
|
-
if (shift_needed > 0)
|
599
|
+
if (shift_needed > 0)
|
600
|
+
{
|
562
601
|
signed_right_shift_byte_array(unsigned_char_array, num_bytes, shift_needed);
|
563
602
|
}
|
564
|
-
}
|
565
|
-
|
603
|
+
}
|
604
|
+
else
|
605
|
+
{
|
606
|
+
for (index = 0; index < shift_count; index++)
|
607
|
+
{
|
566
608
|
unsigned_right_shift_byte_array(unsigned_char_array, num_bytes, 8);
|
567
609
|
}
|
568
610
|
|
569
|
-
if (shift_needed > 0)
|
611
|
+
if (shift_needed > 0)
|
612
|
+
{
|
570
613
|
unsigned_right_shift_byte_array(unsigned_char_array, num_bytes, shift_needed);
|
571
614
|
}
|
572
615
|
}
|
573
616
|
|
574
|
-
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
575
|
-
|
617
|
+
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
618
|
+
{
|
619
|
+
for (index = 0; index < num_bytes; index += 4)
|
620
|
+
{
|
576
621
|
reverse_bytes(&(unsigned_char_array[index]), 4);
|
577
622
|
}
|
578
623
|
}
|
579
624
|
|
580
|
-
if (bit_size <= 31)
|
581
|
-
|
582
|
-
|
583
|
-
|
584
|
-
|
585
|
-
|
625
|
+
if (bit_size <= 31)
|
626
|
+
{
|
627
|
+
return_value = INT2FIX(*((int *)unsigned_char_array));
|
628
|
+
}
|
629
|
+
else if (bit_size == 32)
|
630
|
+
{
|
631
|
+
return_value = INT2NUM(*((int *)unsigned_char_array));
|
632
|
+
}
|
633
|
+
else
|
634
|
+
{
|
635
|
+
return_value = rb_int2big(*((int *)unsigned_char_array));
|
586
636
|
temp_value = INT2FIX(32);
|
587
|
-
for (index = 4; index < num_bytes; index += 4)
|
637
|
+
for (index = 4; index < num_bytes; index += 4)
|
638
|
+
{
|
588
639
|
return_value = rb_big_lshift(return_value, temp_value);
|
589
|
-
if (FIXNUM_P(return_value))
|
640
|
+
if (FIXNUM_P(return_value))
|
641
|
+
{
|
590
642
|
signed_long_value = FIX2LONG(return_value);
|
591
643
|
return_value = rb_int2big(signed_long_value);
|
592
644
|
}
|
593
|
-
return_value = rb_big_plus(return_value, UINT2NUM(*((unsigned int*)
|
594
|
-
if (FIXNUM_P(return_value))
|
645
|
+
return_value = rb_big_plus(return_value, UINT2NUM(*((unsigned int *)&(unsigned_char_array[index]))));
|
646
|
+
if (FIXNUM_P(return_value))
|
647
|
+
{
|
595
648
|
signed_long_value = FIX2LONG(return_value);
|
596
649
|
return_value = rb_int2big(signed_long_value);
|
597
650
|
}
|
@@ -601,8 +654,9 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
601
654
|
|
602
655
|
free(unsigned_char_array);
|
603
656
|
}
|
604
|
-
|
605
|
-
|
657
|
+
}
|
658
|
+
else if (param_data_type == symbol_UINT)
|
659
|
+
{
|
606
660
|
/*###################################
|
607
661
|
*# Handle :UINT data type
|
608
662
|
*###################################*/
|
@@ -613,28 +667,31 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
613
667
|
*# Handle byte-aligned 8, 16, 32, and 64 bit :UINT
|
614
668
|
*###########################################################*/
|
615
669
|
|
616
|
-
switch (bit_size)
|
617
|
-
|
618
|
-
|
619
|
-
|
620
|
-
|
621
|
-
|
622
|
-
|
623
|
-
|
624
|
-
|
625
|
-
|
626
|
-
|
627
|
-
|
628
|
-
|
629
|
-
|
630
|
-
|
631
|
-
|
632
|
-
|
670
|
+
switch (bit_size)
|
671
|
+
{
|
672
|
+
case 8:
|
673
|
+
unsigned_char_value = buffer[lower_bound];
|
674
|
+
return_value = INT2FIX(unsigned_char_value);
|
675
|
+
break;
|
676
|
+
case 16:
|
677
|
+
read_aligned_16(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&unsigned_short_value);
|
678
|
+
return_value = INT2FIX(unsigned_short_value);
|
679
|
+
break;
|
680
|
+
case 32:
|
681
|
+
read_aligned_32(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&unsigned_int_value);
|
682
|
+
return_value = UINT2NUM(unsigned_int_value);
|
683
|
+
break;
|
684
|
+
case 64:
|
685
|
+
read_aligned_64(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&unsigned_long_long_value);
|
686
|
+
return_value = ULL2NUM(unsigned_long_long_value);
|
687
|
+
break;
|
633
688
|
}
|
634
|
-
}
|
635
|
-
|
689
|
+
}
|
690
|
+
else
|
691
|
+
{
|
692
|
+
string_length = ((bit_size - 1) / 8) + 1;
|
636
693
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
637
|
-
unsigned_char_array = (unsigned char*)
|
694
|
+
unsigned_char_array = (unsigned char *)malloc(array_length);
|
638
695
|
if (unsigned_char_array == NULL) {
|
639
696
|
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
640
697
|
}
|
@@ -647,35 +704,47 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
647
704
|
shift_count = shift_needed / 8;
|
648
705
|
shift_needed = shift_needed % 8;
|
649
706
|
|
650
|
-
for (index = 0; index < shift_count; index++)
|
707
|
+
for (index = 0; index < shift_count; index++)
|
708
|
+
{
|
651
709
|
unsigned_right_shift_byte_array(unsigned_char_array, num_bytes, 8);
|
652
710
|
}
|
653
711
|
|
654
|
-
if (shift_needed > 0)
|
712
|
+
if (shift_needed > 0)
|
713
|
+
{
|
655
714
|
unsigned_right_shift_byte_array(unsigned_char_array, num_bytes, shift_needed);
|
656
715
|
}
|
657
716
|
|
658
|
-
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
659
|
-
|
717
|
+
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
718
|
+
{
|
719
|
+
for (index = 0; index < num_bytes; index += 4)
|
720
|
+
{
|
660
721
|
reverse_bytes(&(unsigned_char_array[index]), 4);
|
661
722
|
}
|
662
723
|
}
|
663
724
|
|
664
|
-
if (bit_size <= 30)
|
665
|
-
|
666
|
-
|
667
|
-
|
668
|
-
|
669
|
-
|
725
|
+
if (bit_size <= 30)
|
726
|
+
{
|
727
|
+
return_value = INT2FIX(*((int *)unsigned_char_array));
|
728
|
+
}
|
729
|
+
else if (bit_size <= 32)
|
730
|
+
{
|
731
|
+
return_value = UINT2NUM(*((unsigned int *)unsigned_char_array));
|
732
|
+
}
|
733
|
+
else
|
734
|
+
{
|
735
|
+
return_value = rb_uint2big(*((unsigned int *)unsigned_char_array));
|
670
736
|
temp_value = INT2FIX(32);
|
671
|
-
for (index = 4; index < num_bytes; index += 4)
|
737
|
+
for (index = 4; index < num_bytes; index += 4)
|
738
|
+
{
|
672
739
|
return_value = rb_big_lshift(return_value, temp_value);
|
673
|
-
if (FIXNUM_P(return_value))
|
740
|
+
if (FIXNUM_P(return_value))
|
741
|
+
{
|
674
742
|
signed_long_value = FIX2LONG(return_value);
|
675
743
|
return_value = rb_int2big(signed_long_value);
|
676
744
|
}
|
677
|
-
return_value = rb_big_plus(return_value, UINT2NUM(*((unsigned int*)
|
678
|
-
if (FIXNUM_P(return_value))
|
745
|
+
return_value = rb_big_plus(return_value, UINT2NUM(*((unsigned int *)&(unsigned_char_array[index]))));
|
746
|
+
if (FIXNUM_P(return_value))
|
747
|
+
{
|
679
748
|
signed_long_value = FIX2LONG(return_value);
|
680
749
|
return_value = rb_int2big(signed_long_value);
|
681
750
|
}
|
@@ -685,33 +754,39 @@ static VALUE binary_accessor_read(VALUE self, VALUE param_bit_offset, VALUE para
|
|
685
754
|
|
686
755
|
free(unsigned_char_array);
|
687
756
|
}
|
688
|
-
|
689
|
-
|
757
|
+
}
|
758
|
+
else if (param_data_type == symbol_FLOAT)
|
759
|
+
{
|
690
760
|
/*##########################
|
691
761
|
*# Handle :FLOAT data type
|
692
762
|
*##########################*/
|
693
763
|
|
694
|
-
if (BYTE_ALIGNED(bit_offset))
|
695
|
-
|
696
|
-
|
697
|
-
|
698
|
-
|
699
|
-
|
700
|
-
|
701
|
-
|
702
|
-
|
703
|
-
|
704
|
-
|
705
|
-
|
706
|
-
|
707
|
-
|
708
|
-
|
764
|
+
if (BYTE_ALIGNED(bit_offset))
|
765
|
+
{
|
766
|
+
switch (bit_size)
|
767
|
+
{
|
768
|
+
case 32:
|
769
|
+
read_aligned_32(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&float_value);
|
770
|
+
return_value = rb_float_new(float_value);
|
771
|
+
break;
|
772
|
+
|
773
|
+
case 64:
|
774
|
+
read_aligned_64(lower_bound, upper_bound, param_endianness, buffer, (unsigned char *)&double_value);
|
775
|
+
return_value = rb_float_new(double_value);
|
776
|
+
break;
|
777
|
+
|
778
|
+
default:
|
779
|
+
rb_raise(rb_eArgError, "bit_size is %d but must be 32 or 64 for data_type %s", given_bit_size, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
780
|
+
break;
|
709
781
|
};
|
710
|
-
}
|
782
|
+
}
|
783
|
+
else
|
784
|
+
{
|
711
785
|
rb_raise(rb_eArgError, "bit_offset %d is not byte aligned for data_type %s", given_bit_offset, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
712
786
|
}
|
713
|
-
|
714
|
-
|
787
|
+
}
|
788
|
+
else
|
789
|
+
{
|
715
790
|
/*############################
|
716
791
|
*# Handle Unknown data types
|
717
792
|
*############################*/
|
@@ -728,66 +803,85 @@ static VALUE check_overflow(VALUE value, int bit_size, VALUE data_type, VALUE ov
|
|
728
803
|
volatile VALUE max_value = Qnil;
|
729
804
|
volatile VALUE min_value = INT2NUM(0); /* Default for UINT cases */
|
730
805
|
|
731
|
-
switch (bit_size)
|
732
|
-
|
733
|
-
|
734
|
-
|
735
|
-
|
736
|
-
|
737
|
-
|
738
|
-
|
739
|
-
|
740
|
-
|
741
|
-
|
742
|
-
|
743
|
-
|
744
|
-
|
745
|
-
|
746
|
-
|
747
|
-
|
748
|
-
|
749
|
-
|
750
|
-
|
751
|
-
|
752
|
-
|
753
|
-
|
754
|
-
|
755
|
-
|
756
|
-
|
757
|
-
|
758
|
-
|
759
|
-
|
760
|
-
|
761
|
-
|
762
|
-
|
763
|
-
|
764
|
-
|
765
|
-
|
766
|
-
|
767
|
-
|
768
|
-
|
769
|
-
|
770
|
-
|
771
|
-
|
772
|
-
|
773
|
-
|
774
|
-
|
775
|
-
|
776
|
-
|
777
|
-
|
778
|
-
|
779
|
-
|
780
|
-
|
781
|
-
|
782
|
-
|
783
|
-
|
784
|
-
|
785
|
-
|
786
|
-
|
806
|
+
switch (bit_size)
|
807
|
+
{
|
808
|
+
case 8:
|
809
|
+
hex_max_value = MAX_UINT8;
|
810
|
+
if (data_type == symbol_INT)
|
811
|
+
{
|
812
|
+
min_value = MIN_INT8;
|
813
|
+
max_value = MAX_INT8;
|
814
|
+
}
|
815
|
+
else
|
816
|
+
{
|
817
|
+
max_value = MAX_UINT8;
|
818
|
+
}
|
819
|
+
break;
|
820
|
+
case 16:
|
821
|
+
hex_max_value = MAX_UINT16;
|
822
|
+
if (data_type == symbol_INT)
|
823
|
+
{
|
824
|
+
min_value = MIN_INT16;
|
825
|
+
max_value = MAX_INT16;
|
826
|
+
}
|
827
|
+
else
|
828
|
+
{
|
829
|
+
max_value = MAX_UINT16;
|
830
|
+
}
|
831
|
+
break;
|
832
|
+
case 32:
|
833
|
+
hex_max_value = MAX_UINT32;
|
834
|
+
if (data_type == symbol_INT)
|
835
|
+
{
|
836
|
+
min_value = MIN_INT32;
|
837
|
+
max_value = MAX_INT32;
|
838
|
+
}
|
839
|
+
else
|
840
|
+
{
|
841
|
+
max_value = MAX_UINT32;
|
842
|
+
}
|
843
|
+
break;
|
844
|
+
case 64:
|
845
|
+
hex_max_value = MAX_UINT64;
|
846
|
+
if (data_type == symbol_INT)
|
847
|
+
{
|
848
|
+
min_value = MIN_INT64;
|
849
|
+
max_value = MAX_INT64;
|
850
|
+
}
|
851
|
+
else
|
852
|
+
{
|
853
|
+
max_value = MAX_UINT64;
|
854
|
+
}
|
855
|
+
break;
|
856
|
+
default: /* Bitfield */
|
857
|
+
if (data_type == symbol_INT)
|
858
|
+
{
|
859
|
+
/* Note signed integers must allow up to the maximum unsigned value to support values given in hex */
|
860
|
+
if (bit_size > 1)
|
861
|
+
{
|
862
|
+
max_value = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(bit_size - 1));
|
863
|
+
/* min_value = -(2 ** bit_size - 1) */
|
864
|
+
min_value = rb_big_minus(TO_BIGNUM(INT2NUM(0)), max_value);
|
865
|
+
/* max_value = (2 ** bit_size - 1) - 1 */
|
787
866
|
max_value = rb_big_minus(TO_BIGNUM(max_value), INT2NUM(1));
|
788
|
-
hex_max_value =
|
867
|
+
/* hex_max_value = (2 ** bit_size) - 1 */
|
868
|
+
hex_max_value = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(bit_size));
|
869
|
+
hex_max_value = rb_big_minus(TO_BIGNUM(hex_max_value), INT2NUM(1));
|
789
870
|
}
|
790
|
-
|
871
|
+
else
|
872
|
+
{ /* 1-bit signed */
|
873
|
+
min_value = INT2NUM(-1);
|
874
|
+
max_value = INT2NUM(1);
|
875
|
+
hex_max_value = INT2NUM(1);
|
876
|
+
}
|
877
|
+
}
|
878
|
+
else
|
879
|
+
{
|
880
|
+
max_value = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(bit_size));
|
881
|
+
max_value = rb_big_minus(TO_BIGNUM(max_value), INT2NUM(1));
|
882
|
+
hex_max_value = max_value;
|
883
|
+
}
|
884
|
+
break;
|
791
885
|
}
|
792
886
|
/* Convert all to Bignum objects so we can do the math the same way */
|
793
887
|
value = TO_BIGNUM(value);
|
@@ -795,29 +889,42 @@ static VALUE check_overflow(VALUE value, int bit_size, VALUE data_type, VALUE ov
|
|
795
889
|
max_value = TO_BIGNUM(max_value);
|
796
890
|
hex_max_value = TO_BIGNUM(hex_max_value);
|
797
891
|
|
798
|
-
if (overflow == symbol_TRUNCATE)
|
892
|
+
if (overflow == symbol_TRUNCATE)
|
893
|
+
{
|
799
894
|
/* Note this will always convert to unsigned equivalent for signed integers */
|
800
895
|
value = rb_big_modulo(value, TO_BIGNUM(rb_big_plus(hex_max_value, INT2NUM(1))));
|
801
|
-
}
|
802
|
-
|
803
|
-
|
896
|
+
}
|
897
|
+
else
|
898
|
+
{
|
899
|
+
if (rb_big_cmp(value, max_value) == INT2FIX(1))
|
900
|
+
{
|
901
|
+
if (overflow == symbol_SATURATE)
|
902
|
+
{
|
804
903
|
value = max_value;
|
805
|
-
}
|
806
|
-
|
904
|
+
}
|
905
|
+
else
|
906
|
+
{
|
907
|
+
if ((overflow == symbol_ERROR) || (rb_big_cmp(value, hex_max_value) == INT2FIX(1)))
|
908
|
+
{
|
807
909
|
rb_raise(rb_eArgError, "value of %s invalid for %d-bit %s",
|
808
|
-
|
809
|
-
|
810
|
-
|
910
|
+
RSTRING_PTR(rb_funcall(value, id_method_to_s, 0)),
|
911
|
+
bit_size,
|
912
|
+
RSTRING_PTR(rb_funcall(data_type, id_method_to_s, 0)));
|
811
913
|
}
|
812
914
|
}
|
813
|
-
}
|
814
|
-
|
915
|
+
}
|
916
|
+
else if (rb_big_cmp(value, min_value) == INT2FIX(-1))
|
917
|
+
{
|
918
|
+
if (overflow == symbol_SATURATE)
|
919
|
+
{
|
815
920
|
value = min_value;
|
816
|
-
}
|
921
|
+
}
|
922
|
+
else
|
923
|
+
{
|
817
924
|
rb_raise(rb_eArgError, "value of %s invalid for %d-bit %s",
|
818
|
-
|
819
|
-
|
820
|
-
|
925
|
+
RSTRING_PTR(rb_funcall(value, id_method_to_s, 0)),
|
926
|
+
bit_size,
|
927
|
+
RSTRING_PTR(rb_funcall(data_type, id_method_to_s, 0)));
|
821
928
|
}
|
822
929
|
}
|
823
930
|
}
|
@@ -854,7 +961,7 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
854
961
|
float float_value = 0.0;
|
855
962
|
double double_value = 0.0;
|
856
963
|
|
857
|
-
unsigned char*
|
964
|
+
unsigned char *buffer = NULL;
|
858
965
|
long buffer_length = 0;
|
859
966
|
long value_length = 0;
|
860
967
|
volatile VALUE temp_shift = Qnil;
|
@@ -862,7 +969,7 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
862
969
|
volatile VALUE temp_result = Qnil;
|
863
970
|
|
864
971
|
int string_length = 0;
|
865
|
-
unsigned char*
|
972
|
+
unsigned char *unsigned_char_array = NULL;
|
866
973
|
int array_length = 0;
|
867
974
|
int shift_needed = 0;
|
868
975
|
int shift_count = 0;
|
@@ -872,22 +979,24 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
872
979
|
int num_words = 0;
|
873
980
|
|
874
981
|
Check_Type(param_buffer, T_STRING);
|
875
|
-
buffer = (unsigned char*)
|
982
|
+
buffer = (unsigned char *)RSTRING_PTR(param_buffer);
|
876
983
|
buffer_length = RSTRING_LEN(param_buffer);
|
877
984
|
|
878
985
|
check_bit_offset_and_size(self, symbol_write, param_bit_offset, param_bit_size,
|
879
|
-
|
986
|
+
param_data_type, param_buffer, &bit_offset);
|
880
987
|
|
881
988
|
/* If passed a negative bit size with strings or blocks
|
882
989
|
* recalculate based on the value length in bytes */
|
883
|
-
if ((bit_size <= 0) && ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK)))
|
884
|
-
|
990
|
+
if ((bit_size <= 0) && ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK)))
|
991
|
+
{
|
992
|
+
if (!RB_TYPE_P(value, T_STRING))
|
993
|
+
{
|
885
994
|
value = rb_funcall(value, id_method_to_s, 0);
|
886
995
|
}
|
887
|
-
bit_size = RSTRING_LEN(value) * 8;
|
996
|
+
bit_size = (int)RSTRING_LEN(value) * 8;
|
888
997
|
}
|
889
998
|
|
890
|
-
if ((!check_bounds_and_buffer_size(bit_offset, bit_size, buffer_length, param_endianness, param_data_type, &lower_bound, &upper_bound)) && (given_bit_size > 0))
|
999
|
+
if ((!check_bounds_and_buffer_size(bit_offset, bit_size, (int)buffer_length, param_endianness, param_data_type, &lower_bound, &upper_bound)) && (given_bit_size > 0))
|
891
1000
|
{
|
892
1001
|
rb_funcall(self, id_method_raise_buffer_error, 5, symbol_write, param_buffer, param_data_type, param_bit_offset, param_bit_size);
|
893
1002
|
}
|
@@ -896,75 +1005,100 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
896
1005
|
if ((param_overflow != symbol_TRUNCATE) &&
|
897
1006
|
(param_overflow != symbol_SATURATE) &&
|
898
1007
|
(param_overflow != symbol_ERROR) &&
|
899
|
-
(param_overflow != symbol_ERROR_ALLOW_HEX))
|
1008
|
+
(param_overflow != symbol_ERROR_ALLOW_HEX))
|
1009
|
+
{
|
900
1010
|
rb_raise(rb_eArgError, "unknown overflow type %s", RSTRING_PTR(rb_funcall(param_overflow, id_method_to_s, 0)));
|
901
1011
|
}
|
902
1012
|
|
903
|
-
if ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK))
|
1013
|
+
if ((param_data_type == symbol_STRING) || (param_data_type == symbol_BLOCK))
|
1014
|
+
{
|
904
1015
|
/*#######################################
|
905
1016
|
*# Handle :STRING and :BLOCK data types
|
906
1017
|
*#######################################*/
|
907
1018
|
/* Force value to be a string */
|
908
|
-
if (!RB_TYPE_P(value, T_STRING))
|
1019
|
+
if (!RB_TYPE_P(value, T_STRING))
|
1020
|
+
{
|
909
1021
|
value = rb_funcall(value, id_method_to_s, 0);
|
910
1022
|
}
|
911
1023
|
|
912
|
-
if (BYTE_ALIGNED(bit_offset))
|
1024
|
+
if (BYTE_ALIGNED(bit_offset))
|
1025
|
+
{
|
913
1026
|
value_length = RSTRING_LEN(value);
|
914
1027
|
|
915
|
-
if (given_bit_size <= 0)
|
1028
|
+
if (given_bit_size <= 0)
|
1029
|
+
{
|
916
1030
|
end_bytes = -(given_bit_size / 8);
|
917
|
-
old_upper_bound = buffer_length - 1 - end_bytes;
|
1031
|
+
old_upper_bound = (int)buffer_length - 1 - end_bytes;
|
918
1032
|
/* Lower bound + end_bytes can never be more than 1 byte outside of the given buffer */
|
919
1033
|
if ((lower_bound + end_bytes) > buffer_length)
|
920
1034
|
{
|
921
1035
|
rb_funcall(self, id_method_raise_buffer_error, 5, symbol_write, param_buffer, param_data_type, param_bit_offset, param_bit_size);
|
922
1036
|
}
|
923
1037
|
|
924
|
-
if (old_upper_bound < lower_bound)
|
1038
|
+
if (old_upper_bound < lower_bound)
|
1039
|
+
{
|
925
1040
|
/* String was completely empty */
|
926
|
-
if (end_bytes > 0)
|
1041
|
+
if (end_bytes > 0)
|
1042
|
+
{
|
927
1043
|
/* Preserve bytes at end of buffer */
|
928
1044
|
rb_str_concat(param_buffer, rb_str_times(ZERO_STRING, INT2FIX(value_length)));
|
929
|
-
buffer = (unsigned char*)
|
1045
|
+
buffer = (unsigned char *)RSTRING_PTR(param_buffer);
|
930
1046
|
memmove((buffer + lower_bound + value_length), (buffer + lower_bound), end_bytes);
|
931
1047
|
}
|
932
|
-
}
|
1048
|
+
}
|
1049
|
+
else if (bit_size == 0)
|
1050
|
+
{
|
933
1051
|
/* Remove entire string */
|
934
1052
|
rb_str_update(param_buffer, lower_bound, old_upper_bound - lower_bound + 1, rb_str_new2(""));
|
935
|
-
}
|
1053
|
+
}
|
1054
|
+
else if (upper_bound < old_upper_bound)
|
1055
|
+
{
|
936
1056
|
/* Remove extra bytes from old string */
|
937
1057
|
rb_str_update(param_buffer, upper_bound + 1, old_upper_bound - upper_bound, rb_str_new2(""));
|
938
|
-
}
|
1058
|
+
}
|
1059
|
+
else if ((upper_bound > old_upper_bound) && (end_bytes > 0))
|
1060
|
+
{
|
939
1061
|
/* Preserve bytes at end of buffer */
|
940
1062
|
rb_str_concat(param_buffer, rb_str_times(ZERO_STRING, INT2FIX(upper_bound - old_upper_bound)));
|
941
|
-
buffer = (unsigned char*)
|
1063
|
+
buffer = (unsigned char *)RSTRING_PTR(param_buffer);
|
942
1064
|
memmove((buffer + upper_bound + 1), (buffer + old_upper_bound + 1), end_bytes);
|
943
1065
|
}
|
944
|
-
}
|
1066
|
+
}
|
1067
|
+
else
|
1068
|
+
{
|
945
1069
|
byte_size = bit_size / 8;
|
946
|
-
if (value_length < byte_size)
|
1070
|
+
if (value_length < byte_size)
|
1071
|
+
{
|
947
1072
|
/* Pad the requested size with zeros.
|
948
1073
|
* Tell Ruby we are going to be modifying the buffer with a memset */
|
949
1074
|
rb_str_modify(param_buffer);
|
950
1075
|
memset(RSTRING_PTR(param_buffer) + lower_bound + value_length, 0, byte_size - value_length);
|
951
|
-
}
|
952
|
-
|
1076
|
+
}
|
1077
|
+
else if (value_length > byte_size)
|
1078
|
+
{
|
1079
|
+
if (param_overflow == symbol_TRUNCATE)
|
1080
|
+
{
|
953
1081
|
/* Resize the value to fit the field */
|
954
1082
|
rb_str_update(value, byte_size, RSTRING_LEN(value) - byte_size, rb_str_new2(""));
|
955
|
-
}
|
1083
|
+
}
|
1084
|
+
else
|
1085
|
+
{
|
956
1086
|
rb_raise(rb_eArgError, "value of %d bytes does not fit into %d bytes for data_type %s", (int)value_length, byte_size, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
957
1087
|
}
|
958
1088
|
}
|
959
1089
|
}
|
960
|
-
if (bit_size != 0)
|
1090
|
+
if (bit_size != 0)
|
1091
|
+
{
|
961
1092
|
rb_str_update(param_buffer, lower_bound, RSTRING_LEN(value), value);
|
962
1093
|
}
|
963
|
-
}
|
1094
|
+
}
|
1095
|
+
else
|
1096
|
+
{
|
964
1097
|
rb_raise(rb_eArgError, "bit_offset %d is not byte aligned for data_type %s", given_bit_offset, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
965
1098
|
}
|
966
|
-
|
967
|
-
|
1099
|
+
}
|
1100
|
+
else if ((param_data_type == symbol_INT) || (param_data_type == symbol_UINT))
|
1101
|
+
{
|
968
1102
|
/*###################################
|
969
1103
|
*# Handle :INT data type
|
970
1104
|
*###################################*/
|
@@ -977,39 +1111,42 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
977
1111
|
*###########################################################*/
|
978
1112
|
|
979
1113
|
value = check_overflow(value, bit_size, param_data_type, param_overflow);
|
980
|
-
switch (bit_size)
|
981
|
-
|
982
|
-
|
983
|
-
|
984
|
-
|
985
|
-
|
986
|
-
|
987
|
-
|
988
|
-
|
989
|
-
|
990
|
-
|
991
|
-
|
992
|
-
|
1114
|
+
switch (bit_size)
|
1115
|
+
{
|
1116
|
+
case 8:
|
1117
|
+
c_value = NUM2CHR(value);
|
1118
|
+
break;
|
1119
|
+
case 16:
|
1120
|
+
c_value = NUM2USHORT(value);
|
1121
|
+
break;
|
1122
|
+
case 32:
|
1123
|
+
c_value = NUM2UINT(value);
|
1124
|
+
break;
|
1125
|
+
case 64:
|
1126
|
+
c_value = NUM2ULL(value);
|
1127
|
+
break;
|
993
1128
|
}
|
994
1129
|
/* If the passed endianess doesn't match the host we reverse the bytes.
|
995
1130
|
* Then shift the result over so it's at the bottom of the long long value. */
|
996
|
-
if (param_endianness != HOST_ENDIANNESS)
|
1131
|
+
if (param_endianness != HOST_ENDIANNESS)
|
1132
|
+
{
|
997
1133
|
reverse_bytes((unsigned char *)&c_value, 8);
|
998
1134
|
c_value = (c_value >> (64 - bit_size));
|
999
1135
|
}
|
1000
1136
|
/* Tell Ruby we are going to be modifying the buffer with a memcpy */
|
1001
1137
|
rb_str_modify(param_buffer);
|
1002
1138
|
memcpy((RSTRING_PTR(param_buffer) + lower_bound), &c_value, bit_size / 8);
|
1003
|
-
|
1004
|
-
|
1139
|
+
}
|
1140
|
+
else
|
1141
|
+
{
|
1005
1142
|
/*###########################################################
|
1006
1143
|
*# Handle bit fields
|
1007
1144
|
*###########################################################*/
|
1008
1145
|
value = check_overflow(value, bit_size, param_data_type, param_overflow);
|
1009
1146
|
|
1010
|
-
string_length = ((bit_size - 1)/ 8) + 1;
|
1147
|
+
string_length = ((bit_size - 1) / 8) + 1;
|
1011
1148
|
array_length = string_length + 4; /* Required number of bytes plus slack */
|
1012
|
-
unsigned_char_array = (unsigned char*)
|
1149
|
+
unsigned_char_array = (unsigned char *)malloc(array_length);
|
1013
1150
|
if (unsigned_char_array == NULL) {
|
1014
1151
|
rb_raise(rb_eNoMemError, "malloc of %d returned NULL", array_length);
|
1015
1152
|
}
|
@@ -1022,81 +1159,105 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
1022
1159
|
shift_needed = shift_needed % 8;
|
1023
1160
|
|
1024
1161
|
/* Convert value into array of bytes */
|
1025
|
-
if (bit_size <= 30)
|
1162
|
+
if (bit_size <= 30)
|
1163
|
+
{
|
1026
1164
|
*((int *)unsigned_char_array) = FIX2INT(value);
|
1027
|
-
}
|
1165
|
+
}
|
1166
|
+
else if (bit_size <= 32)
|
1167
|
+
{
|
1028
1168
|
*((unsigned int *)unsigned_char_array) = NUM2UINT(value);
|
1029
|
-
}
|
1169
|
+
}
|
1170
|
+
else
|
1171
|
+
{
|
1030
1172
|
temp_mask = UINT2NUM(0xFFFFFFFF);
|
1031
1173
|
temp_shift = INT2FIX(32);
|
1032
1174
|
temp_result = rb_big_and(TO_BIGNUM(value), temp_mask);
|
1033
1175
|
/* Work around bug where rb_big_and will return Qfalse if given a first parameter of 0 */
|
1034
|
-
if (temp_result == Qfalse)
|
1176
|
+
if (temp_result == Qfalse)
|
1177
|
+
{
|
1178
|
+
temp_result = INT2FIX(0);
|
1179
|
+
}
|
1035
1180
|
*((unsigned int *)&(unsigned_char_array[num_bytes - 4])) = NUM2UINT(temp_result);
|
1036
|
-
for (index = num_bytes - 8; index >= 0; index -= 4)
|
1181
|
+
for (index = num_bytes - 8; index >= 0; index -= 4)
|
1182
|
+
{
|
1037
1183
|
value = rb_big_rshift(TO_BIGNUM(value), temp_shift);
|
1038
1184
|
temp_result = rb_big_and(TO_BIGNUM(value), temp_mask);
|
1039
1185
|
/* Work around bug where rb_big_and will return Qfalse if given a first parameter of 0 */
|
1040
|
-
if (temp_result == Qfalse)
|
1186
|
+
if (temp_result == Qfalse)
|
1187
|
+
{
|
1188
|
+
temp_result = INT2FIX(0);
|
1189
|
+
}
|
1041
1190
|
*((unsigned int *)&(unsigned_char_array[index])) = NUM2UINT(temp_result);
|
1042
1191
|
}
|
1043
1192
|
}
|
1044
1193
|
|
1045
|
-
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
1046
|
-
|
1194
|
+
if (HOST_ENDIANNESS == symbol_LITTLE_ENDIAN)
|
1195
|
+
{
|
1196
|
+
for (index = 0; index < num_bytes; index += 4)
|
1197
|
+
{
|
1047
1198
|
reverse_bytes(&(unsigned_char_array[index]), 4);
|
1048
1199
|
}
|
1049
1200
|
}
|
1050
1201
|
|
1051
|
-
for (index = 0; index < shift_count; index++)
|
1202
|
+
for (index = 0; index < shift_count; index++)
|
1203
|
+
{
|
1052
1204
|
left_shift_byte_array(unsigned_char_array, num_bytes, 8);
|
1053
1205
|
}
|
1054
1206
|
|
1055
|
-
if (shift_needed > 0)
|
1207
|
+
if (shift_needed > 0)
|
1208
|
+
{
|
1056
1209
|
left_shift_byte_array(unsigned_char_array, num_bytes, shift_needed);
|
1057
1210
|
}
|
1058
1211
|
|
1059
1212
|
rb_str_modify(param_buffer);
|
1060
|
-
write_bitfield(lower_bound, upper_bound, bit_offset, bit_size, given_bit_offset, given_bit_size, param_endianness, (unsigned char*)
|
1213
|
+
write_bitfield(lower_bound, upper_bound, bit_offset, bit_size, given_bit_offset, given_bit_size, param_endianness, (unsigned char *)RSTRING_PTR(param_buffer), (int)buffer_length, unsigned_char_array);
|
1061
1214
|
|
1062
1215
|
free(unsigned_char_array);
|
1063
1216
|
}
|
1064
|
-
|
1065
|
-
|
1217
|
+
}
|
1218
|
+
else if (param_data_type == symbol_FLOAT)
|
1219
|
+
{
|
1066
1220
|
/*##########################
|
1067
1221
|
*# Handle :FLOAT data type
|
1068
1222
|
*##########################*/
|
1069
1223
|
value = rb_funcall(rb_mKernel, id_method_Float, 1, value);
|
1070
1224
|
|
1071
|
-
if (BYTE_ALIGNED(bit_offset))
|
1072
|
-
|
1073
|
-
|
1074
|
-
|
1075
|
-
|
1076
|
-
|
1077
|
-
|
1078
|
-
|
1079
|
-
|
1080
|
-
|
1225
|
+
if (BYTE_ALIGNED(bit_offset))
|
1226
|
+
{
|
1227
|
+
switch (bit_size)
|
1228
|
+
{
|
1229
|
+
case 32:
|
1230
|
+
float_value = (float)RFLOAT_VALUE(value);
|
1231
|
+
if (param_endianness != HOST_ENDIANNESS)
|
1232
|
+
{
|
1233
|
+
reverse_bytes((unsigned char *)&float_value, 4);
|
1234
|
+
}
|
1235
|
+
rb_str_modify(param_buffer);
|
1236
|
+
memcpy((RSTRING_PTR(param_buffer) + lower_bound), &float_value, 4);
|
1237
|
+
break;
|
1081
1238
|
|
1082
|
-
|
1083
|
-
|
1084
|
-
|
1085
|
-
|
1086
|
-
|
1087
|
-
|
1088
|
-
|
1089
|
-
|
1239
|
+
case 64:
|
1240
|
+
double_value = RFLOAT_VALUE(value);
|
1241
|
+
if (param_endianness != HOST_ENDIANNESS)
|
1242
|
+
{
|
1243
|
+
reverse_bytes((unsigned char *)&double_value, 8);
|
1244
|
+
}
|
1245
|
+
rb_str_modify(param_buffer);
|
1246
|
+
memcpy((RSTRING_PTR(param_buffer) + lower_bound), &double_value, 8);
|
1247
|
+
break;
|
1090
1248
|
|
1091
|
-
|
1092
|
-
|
1093
|
-
|
1249
|
+
default:
|
1250
|
+
rb_raise(rb_eArgError, "bit_size is %d but must be 32 or 64 for data_type %s", given_bit_size, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
1251
|
+
break;
|
1094
1252
|
};
|
1095
|
-
}
|
1253
|
+
}
|
1254
|
+
else
|
1255
|
+
{
|
1096
1256
|
rb_raise(rb_eArgError, "bit_offset %d is not byte aligned for data_type %s", given_bit_offset, RSTRING_PTR(rb_funcall(param_data_type, id_method_to_s, 0)));
|
1097
1257
|
}
|
1098
|
-
|
1099
|
-
|
1258
|
+
}
|
1259
|
+
else
|
1260
|
+
{
|
1100
1261
|
/*############################
|
1101
1262
|
*# Handle Unknown data types
|
1102
1263
|
*############################*/
|
@@ -1115,9 +1276,12 @@ static VALUE binary_accessor_write(VALUE self, VALUE value, VALUE param_bit_offs
|
|
1115
1276
|
static int get_int_length(VALUE self)
|
1116
1277
|
{
|
1117
1278
|
volatile VALUE buffer = rb_ivar_get(self, id_ivar_buffer);
|
1118
|
-
if (RTEST(buffer))
|
1279
|
+
if (RTEST(buffer))
|
1280
|
+
{
|
1119
1281
|
return (int)RSTRING_LEN(buffer);
|
1120
|
-
}
|
1282
|
+
}
|
1283
|
+
else
|
1284
|
+
{
|
1121
1285
|
return 0;
|
1122
1286
|
}
|
1123
1287
|
}
|
@@ -1127,11 +1291,13 @@ static int get_int_length(VALUE self)
|
|
1127
1291
|
*
|
1128
1292
|
* structure.length #=> 324
|
1129
1293
|
*/
|
1130
|
-
static VALUE structure_length(VALUE self)
|
1294
|
+
static VALUE structure_length(VALUE self)
|
1295
|
+
{
|
1131
1296
|
return INT2FIX(get_int_length(self));
|
1132
1297
|
}
|
1133
1298
|
|
1134
|
-
static VALUE read_item_internal(VALUE self, VALUE item, VALUE buffer)
|
1299
|
+
static VALUE read_item_internal(VALUE self, VALUE item, VALUE buffer)
|
1300
|
+
{
|
1135
1301
|
volatile VALUE bit_offset = Qnil;
|
1136
1302
|
volatile VALUE bit_size = Qnil;
|
1137
1303
|
volatile VALUE data_type = Qnil;
|
@@ -1139,21 +1305,28 @@ static VALUE read_item_internal(VALUE self, VALUE item, VALUE buffer) {
|
|
1139
1305
|
volatile VALUE endianness = Qnil;
|
1140
1306
|
|
1141
1307
|
data_type = rb_ivar_get(item, id_ivar_data_type);
|
1142
|
-
if (data_type == symbol_DERIVED)
|
1308
|
+
if (data_type == symbol_DERIVED)
|
1309
|
+
{
|
1143
1310
|
return Qnil;
|
1144
1311
|
}
|
1145
1312
|
|
1146
|
-
if (RTEST(buffer))
|
1313
|
+
if (RTEST(buffer))
|
1314
|
+
{
|
1147
1315
|
bit_offset = rb_ivar_get(item, id_ivar_bit_offset);
|
1148
1316
|
bit_size = rb_ivar_get(item, id_ivar_bit_size);
|
1149
1317
|
array_size = rb_ivar_get(item, id_ivar_array_size);
|
1150
1318
|
endianness = rb_ivar_get(item, id_ivar_endianness);
|
1151
|
-
if (RTEST(array_size))
|
1319
|
+
if (RTEST(array_size))
|
1320
|
+
{
|
1152
1321
|
return rb_funcall(cBinaryAccessor, id_method_read_array, 6, bit_offset, bit_size, data_type, array_size, buffer, endianness);
|
1153
|
-
}
|
1322
|
+
}
|
1323
|
+
else
|
1324
|
+
{
|
1154
1325
|
return binary_accessor_read(cBinaryAccessor, bit_offset, bit_size, data_type, buffer, endianness);
|
1155
1326
|
}
|
1156
|
-
}
|
1327
|
+
}
|
1328
|
+
else
|
1329
|
+
{
|
1157
1330
|
rb_raise(rb_eRuntimeError, "No buffer given to read_item");
|
1158
1331
|
}
|
1159
1332
|
}
|
@@ -1168,26 +1341,26 @@ static VALUE read_item_internal(VALUE self, VALUE item, VALUE buffer) {
|
|
1168
1341
|
* @return Value based on the item definition. This could be a string, integer,
|
1169
1342
|
* float, or array of values.
|
1170
1343
|
*/
|
1171
|
-
static VALUE read_item(int argc, VALUE*
|
1344
|
+
static VALUE read_item(int argc, VALUE *argv, VALUE self)
|
1172
1345
|
{
|
1173
1346
|
volatile VALUE item = Qnil;
|
1174
1347
|
volatile VALUE buffer = Qnil;
|
1175
1348
|
|
1176
1349
|
switch (argc)
|
1177
1350
|
{
|
1178
|
-
|
1179
|
-
|
1180
|
-
|
1181
|
-
|
1182
|
-
|
1183
|
-
|
1184
|
-
|
1185
|
-
|
1186
|
-
|
1187
|
-
|
1188
|
-
|
1189
|
-
|
1190
|
-
|
1351
|
+
case 1:
|
1352
|
+
case 2:
|
1353
|
+
item = argv[0];
|
1354
|
+
buffer = rb_ivar_get(self, id_ivar_buffer);
|
1355
|
+
break;
|
1356
|
+
case 3:
|
1357
|
+
item = argv[0];
|
1358
|
+
buffer = argv[2];
|
1359
|
+
break;
|
1360
|
+
default:
|
1361
|
+
/* Invalid number of arguments given */
|
1362
|
+
rb_raise(rb_eArgError, "wrong number of arguments (%d for 1..3)", argc);
|
1363
|
+
break;
|
1191
1364
|
};
|
1192
1365
|
|
1193
1366
|
return read_item_internal(self, item, buffer);
|
@@ -1198,7 +1371,8 @@ static VALUE read_item(int argc, VALUE* argv, VALUE self)
|
|
1198
1371
|
* with different names or bit sizes are equal if they have the same bit
|
1199
1372
|
* offset.
|
1200
1373
|
*/
|
1201
|
-
static VALUE structure_item_spaceship(VALUE self, VALUE other_item)
|
1374
|
+
static VALUE structure_item_spaceship(VALUE self, VALUE other_item)
|
1375
|
+
{
|
1202
1376
|
int bit_offset = 0;
|
1203
1377
|
int other_bit_offset = 0;
|
1204
1378
|
int bit_size = 0;
|
@@ -1209,7 +1383,8 @@ static VALUE structure_item_spaceship(VALUE self, VALUE other_item) {
|
|
1209
1383
|
volatile VALUE v_create_index = Qnil;
|
1210
1384
|
volatile VALUE v_other_create_index = Qnil;
|
1211
1385
|
|
1212
|
-
if (!RTEST(rb_funcall(other_item, id_method_kind_of, 1, cStructureItem)))
|
1386
|
+
if (!RTEST(rb_funcall(other_item, id_method_kind_of, 1, cStructureItem)))
|
1387
|
+
{
|
1213
1388
|
return Qnil;
|
1214
1389
|
}
|
1215
1390
|
|
@@ -1218,69 +1393,107 @@ static VALUE structure_item_spaceship(VALUE self, VALUE other_item) {
|
|
1218
1393
|
|
1219
1394
|
v_create_index = rb_ivar_get(self, id_ivar_create_index);
|
1220
1395
|
v_other_create_index = rb_ivar_get(other_item, id_ivar_create_index);
|
1221
|
-
if (RTEST(v_create_index) && RTEST(v_other_create_index))
|
1396
|
+
if (RTEST(v_create_index) && RTEST(v_other_create_index))
|
1397
|
+
{
|
1222
1398
|
create_index = FIX2INT(v_create_index);
|
1223
1399
|
other_create_index = FIX2INT(v_other_create_index);
|
1224
1400
|
have_create_index = 1;
|
1225
1401
|
}
|
1226
1402
|
|
1227
1403
|
/* Handle same bit offset case */
|
1228
|
-
if ((bit_offset == 0) && (other_bit_offset == 0))
|
1404
|
+
if ((bit_offset == 0) && (other_bit_offset == 0))
|
1405
|
+
{
|
1229
1406
|
/* Both bit_offsets are 0 so sort by bit_size
|
1230
1407
|
* This allows derived items with bit_size of 0 to be listed first
|
1231
1408
|
* Compare based on bit size */
|
1232
1409
|
bit_size = FIX2INT(rb_ivar_get(self, id_ivar_bit_size));
|
1233
1410
|
other_bit_size = FIX2INT(rb_ivar_get(other_item, id_ivar_bit_size));
|
1234
|
-
if (bit_size == other_bit_size)
|
1235
|
-
|
1236
|
-
|
1411
|
+
if (bit_size == other_bit_size)
|
1412
|
+
{
|
1413
|
+
if (have_create_index)
|
1414
|
+
{
|
1415
|
+
if (create_index <= other_create_index)
|
1416
|
+
{
|
1237
1417
|
return INT2FIX(-1);
|
1238
|
-
}
|
1418
|
+
}
|
1419
|
+
else
|
1420
|
+
{
|
1239
1421
|
return INT2FIX(1);
|
1240
1422
|
}
|
1241
|
-
}
|
1423
|
+
}
|
1424
|
+
else
|
1425
|
+
{
|
1242
1426
|
return INT2FIX(0);
|
1243
1427
|
}
|
1244
|
-
}
|
1428
|
+
}
|
1429
|
+
if (bit_size < other_bit_size)
|
1430
|
+
{
|
1245
1431
|
return INT2FIX(-1);
|
1246
|
-
}
|
1432
|
+
}
|
1433
|
+
else
|
1434
|
+
{
|
1247
1435
|
return INT2FIX(1);
|
1248
1436
|
}
|
1249
1437
|
}
|
1250
1438
|
|
1251
1439
|
/* Handle different bit offsets */
|
1252
|
-
if (((bit_offset >= 0) && (other_bit_offset >= 0)) || ((bit_offset < 0) && (other_bit_offset < 0)))
|
1440
|
+
if (((bit_offset >= 0) && (other_bit_offset >= 0)) || ((bit_offset < 0) && (other_bit_offset < 0)))
|
1441
|
+
{
|
1253
1442
|
/* Both Have Same Sign */
|
1254
|
-
if (bit_offset == other_bit_offset)
|
1255
|
-
|
1256
|
-
|
1443
|
+
if (bit_offset == other_bit_offset)
|
1444
|
+
{
|
1445
|
+
if (have_create_index)
|
1446
|
+
{
|
1447
|
+
if (create_index <= other_create_index)
|
1448
|
+
{
|
1257
1449
|
return INT2FIX(-1);
|
1258
|
-
}
|
1450
|
+
}
|
1451
|
+
else
|
1452
|
+
{
|
1259
1453
|
return INT2FIX(1);
|
1260
1454
|
}
|
1261
|
-
}
|
1455
|
+
}
|
1456
|
+
else
|
1457
|
+
{
|
1262
1458
|
return INT2FIX(0);
|
1263
1459
|
}
|
1264
|
-
}
|
1460
|
+
}
|
1461
|
+
else if (bit_offset < other_bit_offset)
|
1462
|
+
{
|
1265
1463
|
return INT2FIX(-1);
|
1266
|
-
}
|
1464
|
+
}
|
1465
|
+
else
|
1466
|
+
{
|
1267
1467
|
return INT2FIX(1);
|
1268
1468
|
}
|
1269
|
-
}
|
1469
|
+
}
|
1470
|
+
else
|
1471
|
+
{
|
1270
1472
|
/* Different Signs */
|
1271
|
-
if (bit_offset == other_bit_offset)
|
1272
|
-
|
1273
|
-
|
1473
|
+
if (bit_offset == other_bit_offset)
|
1474
|
+
{
|
1475
|
+
if (have_create_index)
|
1476
|
+
{
|
1477
|
+
if (create_index <= other_create_index)
|
1478
|
+
{
|
1274
1479
|
return INT2FIX(-1);
|
1275
|
-
}
|
1480
|
+
}
|
1481
|
+
else
|
1482
|
+
{
|
1276
1483
|
return INT2FIX(1);
|
1277
1484
|
}
|
1278
|
-
}
|
1485
|
+
}
|
1486
|
+
else
|
1487
|
+
{
|
1279
1488
|
return INT2FIX(0);
|
1280
1489
|
}
|
1281
|
-
}
|
1490
|
+
}
|
1491
|
+
else if (bit_offset < other_bit_offset)
|
1492
|
+
{
|
1282
1493
|
return INT2FIX(1);
|
1283
|
-
}
|
1494
|
+
}
|
1495
|
+
else
|
1496
|
+
{
|
1284
1497
|
return INT2FIX(-1);
|
1285
1498
|
}
|
1286
1499
|
}
|
@@ -1295,46 +1508,51 @@ static VALUE structure_item_spaceship(VALUE self, VALUE other_item) {
|
|
1295
1508
|
* @param item_class [Class] Class used to instantiate new structure items.
|
1296
1509
|
* Must be StructureItem or one of its subclasses.
|
1297
1510
|
*/
|
1298
|
-
static VALUE structure_initialize(int argc, VALUE*
|
1511
|
+
static VALUE structure_initialize(int argc, VALUE *argv, VALUE self)
|
1512
|
+
{
|
1299
1513
|
volatile VALUE default_endianness = Qnil;
|
1300
1514
|
volatile VALUE buffer = Qnil;
|
1301
1515
|
volatile VALUE item_class = Qnil;
|
1302
1516
|
|
1303
1517
|
switch (argc)
|
1304
1518
|
{
|
1305
|
-
|
1306
|
-
|
1307
|
-
|
1308
|
-
|
1309
|
-
|
1310
|
-
|
1311
|
-
|
1312
|
-
|
1313
|
-
|
1314
|
-
|
1315
|
-
|
1316
|
-
|
1317
|
-
|
1318
|
-
|
1319
|
-
|
1320
|
-
|
1321
|
-
|
1322
|
-
|
1323
|
-
|
1324
|
-
|
1325
|
-
|
1326
|
-
|
1327
|
-
|
1328
|
-
|
1519
|
+
case 0:
|
1520
|
+
default_endianness = HOST_ENDIANNESS;
|
1521
|
+
buffer = rb_str_new2("");
|
1522
|
+
item_class = cStructureItem;
|
1523
|
+
break;
|
1524
|
+
case 1:
|
1525
|
+
default_endianness = argv[0];
|
1526
|
+
buffer = rb_str_new2("");
|
1527
|
+
item_class = cStructureItem;
|
1528
|
+
break;
|
1529
|
+
case 2:
|
1530
|
+
default_endianness = argv[0];
|
1531
|
+
buffer = argv[1];
|
1532
|
+
item_class = cStructureItem;
|
1533
|
+
break;
|
1534
|
+
case 3:
|
1535
|
+
default_endianness = argv[0];
|
1536
|
+
buffer = argv[1];
|
1537
|
+
item_class = argv[2];
|
1538
|
+
break;
|
1539
|
+
default:
|
1540
|
+
/* Invalid number of arguments given */
|
1541
|
+
rb_raise(rb_eArgError, "wrong number of arguments (%d for 0..3)", argc);
|
1542
|
+
break;
|
1329
1543
|
};
|
1330
1544
|
|
1331
|
-
if ((default_endianness == symbol_BIG_ENDIAN) || (default_endianness == symbol_LITTLE_ENDIAN))
|
1545
|
+
if ((default_endianness == symbol_BIG_ENDIAN) || (default_endianness == symbol_LITTLE_ENDIAN))
|
1546
|
+
{
|
1332
1547
|
rb_ivar_set(self, id_ivar_default_endianness, default_endianness);
|
1333
|
-
if (RTEST(buffer))
|
1548
|
+
if (RTEST(buffer))
|
1549
|
+
{
|
1334
1550
|
Check_Type(buffer, T_STRING);
|
1335
1551
|
rb_funcall(buffer, id_method_force_encoding, 1, ASCII_8BIT_STRING);
|
1336
1552
|
rb_ivar_set(self, id_ivar_buffer, buffer);
|
1337
|
-
}
|
1553
|
+
}
|
1554
|
+
else
|
1555
|
+
{
|
1338
1556
|
rb_ivar_set(self, id_ivar_buffer, Qnil);
|
1339
1557
|
}
|
1340
1558
|
rb_ivar_set(self, id_ivar_item_class, item_class);
|
@@ -1347,8 +1565,10 @@ static VALUE structure_initialize(int argc, VALUE* argv, VALUE self) {
|
|
1347
1565
|
rb_ivar_set(self, id_ivar_fixed_size, Qtrue);
|
1348
1566
|
rb_ivar_set(self, id_ivar_short_buffer_allowed, Qfalse);
|
1349
1567
|
rb_ivar_set(self, id_ivar_mutex, Qnil);
|
1350
|
-
}
|
1351
|
-
|
1568
|
+
}
|
1569
|
+
else
|
1570
|
+
{
|
1571
|
+
rb_raise(rb_eArgError, "Unknown endianness '%s', must be :BIG_ENDIAN or :LITTLE_ENDIAN", RSTRING_PTR(rb_funcall(default_endianness, id_method_to_s, 0)));
|
1352
1572
|
}
|
1353
1573
|
|
1354
1574
|
return self;
|
@@ -1360,7 +1580,8 @@ static VALUE structure_initialize(int argc, VALUE* argv, VALUE self) {
|
|
1360
1580
|
static VALUE resize_buffer(VALUE self)
|
1361
1581
|
{
|
1362
1582
|
volatile VALUE buffer = rb_ivar_get(self, id_ivar_buffer);
|
1363
|
-
if (RTEST(buffer))
|
1583
|
+
if (RTEST(buffer))
|
1584
|
+
{
|
1364
1585
|
volatile VALUE value_defined_length = rb_ivar_get(self, id_ivar_defined_length);
|
1365
1586
|
long defined_length = FIX2INT(value_defined_length);
|
1366
1587
|
long current_length = RSTRING_LEN(buffer);
|
@@ -1378,7 +1599,7 @@ static VALUE resize_buffer(VALUE self)
|
|
1378
1599
|
/*
|
1379
1600
|
* Initialize all Packet methods
|
1380
1601
|
*/
|
1381
|
-
void Init_structure
|
1602
|
+
void Init_structure(void)
|
1382
1603
|
{
|
1383
1604
|
int zero = 0;
|
1384
1605
|
volatile VALUE zero_string = Qnil;
|
@@ -1404,16 +1625,16 @@ void Init_structure (void)
|
|
1404
1625
|
MIN_INT16 = INT2NUM(-32768);
|
1405
1626
|
MAX_INT16 = INT2NUM(32767);
|
1406
1627
|
MAX_UINT16 = INT2NUM(65535);
|
1407
|
-
MIN_INT32
|
1408
|
-
MIN_INT32
|
1409
|
-
MAX_INT32
|
1410
|
-
MAX_INT32
|
1628
|
+
MIN_INT32 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(31));
|
1629
|
+
MIN_INT32 = rb_big_minus(TO_BIGNUM(INT2NUM(0)), MIN_INT32);
|
1630
|
+
MAX_INT32 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(31));
|
1631
|
+
MAX_INT32 = rb_big_minus(TO_BIGNUM(MAX_INT32), INT2NUM(1));
|
1411
1632
|
MAX_UINT32 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(32));
|
1412
1633
|
MAX_UINT32 = rb_big_minus(TO_BIGNUM(MAX_UINT32), INT2NUM(1));
|
1413
|
-
MIN_INT64
|
1414
|
-
MIN_INT64
|
1415
|
-
MAX_INT64
|
1416
|
-
MAX_INT64
|
1634
|
+
MIN_INT64 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(63));
|
1635
|
+
MIN_INT64 = rb_big_minus(TO_BIGNUM(INT2NUM(0)), MIN_INT64);
|
1636
|
+
MAX_INT64 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(63));
|
1637
|
+
MAX_INT64 = rb_big_minus(TO_BIGNUM(MAX_INT64), INT2NUM(1));
|
1417
1638
|
MAX_UINT64 = rb_big_pow(TO_BIGNUM(INT2NUM(2)), INT2NUM(64));
|
1418
1639
|
MAX_UINT64 = rb_big_minus(TO_BIGNUM(MAX_UINT64), INT2NUM(1));
|
1419
1640
|
rb_define_const(cBinaryAccessor, "MIN_INT8", MIN_INT8);
|
@@ -1463,9 +1684,12 @@ void Init_structure (void)
|
|
1463
1684
|
symbol_ERROR = ID2SYM(rb_intern("ERROR"));
|
1464
1685
|
symbol_ERROR_ALLOW_HEX = ID2SYM(rb_intern("ERROR_ALLOW_HEX"));
|
1465
1686
|
|
1466
|
-
if ((*((char *)
|
1687
|
+
if ((*((char *)&endianness_check)) == 1)
|
1688
|
+
{
|
1467
1689
|
HOST_ENDIANNESS = symbol_LITTLE_ENDIAN;
|
1468
|
-
}
|
1690
|
+
}
|
1691
|
+
else
|
1692
|
+
{
|
1469
1693
|
HOST_ENDIANNESS = symbol_BIG_ENDIAN;
|
1470
1694
|
}
|
1471
1695
|
|
@@ -1474,7 +1698,7 @@ void Init_structure (void)
|
|
1474
1698
|
|
1475
1699
|
cStructure = rb_define_class_under(mCosmos, "Structure", rb_cObject);
|
1476
1700
|
id_const_ZERO_STRING = rb_intern("ZERO_STRING");
|
1477
|
-
zero_string = rb_str_new((char*)
|
1701
|
+
zero_string = rb_str_new((char *)&zero, 1);
|
1478
1702
|
rb_funcall(zero_string, id_method_freeze, 0);
|
1479
1703
|
rb_const_set(cStructure, id_const_ZERO_STRING, zero_string);
|
1480
1704
|
ZERO_STRING = rb_const_get(cStructure, id_const_ZERO_STRING);
|