Class: OpenC3::LimitsResponse

Inherits:
Object
  • Object
show all
Includes:
Api
Defined in:
lib/openc3/packets/limits_response.rb

Overview

This class defines a #call method which is called when a PacketItem goes out of limits. This class must be subclassed and the call method implemented. Do NOT use this class directly.

Constant Summary

Constants included from Api

Api::DELAY_METRICS, Api::DURATION_METRICS, Api::SUBSCRIPTION_DELIMITER, Api::SUM_METRICS

Constants included from ApiShared

ApiShared::DEFAULT_TLM_POLLING_RATE

Constants included from Extract

Extract::SCANNING_REGULAR_EXPRESSION

Instance Method Summary collapse

Methods included from Api

#_build_cmd_output_string, #_cmd_implementation, #_get_item, #_limits_group, #_set_tlm_process_args, #_tlm_process_args, #_validate_tlm_type, #build_command, #cmd, #cmd_no_checks, #cmd_no_hazardous_check, #cmd_no_range_check, #cmd_raw, #cmd_raw_no_checks, #cmd_raw_no_hazardous_check, #cmd_raw_no_range_check, #config_tool_names, #connect_interface, #connect_router, #delete_config, #disable_limits, #disable_limits_group, #disconnect_interface, #disconnect_router, #enable_limits, #enable_limits_group, #get_all_command_names, #get_all_commands, #get_all_interface_info, #get_all_router_info, #get_all_settings, #get_all_target_info, #get_all_telemetry, #get_all_telemetry_names, #get_cmd_buffer, #get_cmd_cnt, #get_cmd_cnts, #get_cmd_hazardous, #get_cmd_time, #get_cmd_value, #get_command, #get_interface, #get_interface_names, #get_item, #get_limits, #get_limits_events, #get_limits_groups, #get_limits_set, #get_limits_sets, #get_metrics, #get_out_of_limits, #get_overall_limits_state, #get_overrides, #get_packet_derived_items, #get_packets, #get_parameter, #get_router, #get_router_names, #get_setting, #get_settings, #get_target, #get_target_interfaces, #get_target_names, #get_telemetry, #get_tlm_buffer, #get_tlm_cnt, #get_tlm_cnts, #get_tlm_packet, #get_tlm_values, #inject_tlm, #interface_cmd, #interface_protocol_cmd, #limits_enabled?, #list_configs, #list_settings, #load_config, #map_target_to_interface, #normalize_tlm, #offline_access_needed, #override_tlm, #router_cmd, #router_protocol_cmd, #save_config, #send_raw, #set_limits, #set_limits_set, #set_offline_access, #set_setting, #set_tlm, #start_raw_logging_interface, #start_raw_logging_router, #stash_all, #stash_delete, #stash_get, #stash_keys, #stash_set, #stop_raw_logging_interface, #stop_raw_logging_router, #subscribe_packets, #tlm, #tlm_formatted, #tlm_raw, #tlm_variable, #tlm_with_units

Instance Method Details

#as_json(*a) ⇒ Object



52
53
54
# File 'lib/openc3/packets/limits_response.rb', line 52

def as_json(*a)
  { "class" => self.class.name.to_s }
end

#call(packet, item, old_limits_state) ⇒ Object

Parameters:

  • packet (Packet)

    Packet the limits response is assigned to

  • item (PacketItem)

    PacketItem the limits response is assigned to

  • old_limits_state (Symbol)

    Previous value of the limit. One of nil, :GREEN_HIGH, :GREEN_LOW, :YELLOW, :YELLOW_HIGH, :YELLOW_LOW, :RED, :RED_HIGH, :RED_LOW. nil if the previous limit state has not yet been established.



40
41
42
# File 'lib/openc3/packets/limits_response.rb', line 40

def call(packet, item, old_limits_state)
  raise "call method must be defined by subclass"
end

#to_configObject



48
49
50
# File 'lib/openc3/packets/limits_response.rb', line 48

def to_config
  "    LIMITS_RESPONSE #{self.class.name.class_name_to_filename}\n"
end

#to_sObject



44
45
46
# File 'lib/openc3/packets/limits_response.rb', line 44

def to_s
  self.class.to_s.split('::')[-1]
end