Class: Cosmos::PacketsTab
- Defined in:
- lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb
Overview
Implements the packets tab in the Command and Telemetry Server GUI
Constant Summary collapse
- COMMANDS =
"Commands"
- TELEMETRY =
"Telemetry"
Instance Method Summary collapse
-
#initialize(server_gui) ⇒ PacketsTab
constructor
A new instance of PacketsTab.
- #populate_commands(tab_widget) ⇒ Object
- #populate_telemetry(tab_widget) ⇒ Object
- #update(name) ⇒ Object
Constructor Details
#initialize(server_gui) ⇒ PacketsTab
Returns a new instance of PacketsTab.
22 23 24 25 |
# File 'lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb', line 22 def initialize(server_gui) @server_gui = server_gui @packets_table = {} end |
Instance Method Details
#populate_commands(tab_widget) ⇒ Object
27 28 29 |
# File 'lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb', line 27 def populate_commands() populate(COMMANDS, System.commands, ) end |
#populate_telemetry(tab_widget) ⇒ Object
31 32 33 |
# File 'lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb', line 31 def populate_telemetry() populate(TELEMETRY, System.telemetry, ) end |
#update(name) ⇒ Object
35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 |
# File 'lib/cosmos/tools/cmd_tlm_server/gui/packets_tab.rb', line 35 def update(name) cmd_tlm = nil cmd_tlm = System.commands if name == COMMANDS cmd_tlm = System.telemetry if name == TELEMETRY return if cmd_tlm.nil? || cmd_tlm.target_names.empty? row = 0 cmd_tlm.target_names.each do |target_name| packets = cmd_tlm.packets(target_name) packets.sort.each do |packet_name, packet| next if packet.hidden @packets_table[name].item(row, 2).setText(packet.received_count.to_s) row += 1 end end packet = cmd_tlm.packet('UNKNOWN', 'UNKNOWN') @packets_table[name].item(row, 2).setText(packet.received_count.to_s) row += 1 end |