From fd6c224fc2bed617b92971cb4564f7cb82454d31 Mon Sep 17 00:00:00 2001 From: Dan Paulat Date: Mon, 12 May 2025 23:24:49 -0500 Subject: [PATCH] Modified RDA message clang-tidy cleanup --- wxdata/include/scwx/awips/message.hpp | 12 +- .../wsr88d/rda/digital_radar_data_generic.hpp | 88 +- .../rda/performance_maintenance_data.hpp | 508 +++++----- .../scwx/wsr88d/rda/rda_adaptation_data.hpp | 385 ++++---- .../scwx/wsr88d/rda/rda_status_data.hpp | 77 +- wxdata/source/scwx/awips/message.cpp | 15 +- .../wsr88d/rda/digital_radar_data_generic.cpp | 141 ++- .../rda/performance_maintenance_data.cpp | 906 +++++++++--------- .../scwx/wsr88d/rda/rda_adaptation_data.cpp | 372 +++---- .../scwx/wsr88d/rda/rda_status_data.cpp | 171 ++-- 10 files changed, 1365 insertions(+), 1310 deletions(-) diff --git a/wxdata/include/scwx/awips/message.hpp b/wxdata/include/scwx/awips/message.hpp index 4f2388d0..f13a2a90 100644 --- a/wxdata/include/scwx/awips/message.hpp +++ b/wxdata/include/scwx/awips/message.hpp @@ -13,12 +13,8 @@ # include #endif -namespace scwx +namespace scwx::awips { -namespace awips -{ - -class MessageImpl; class Message { @@ -135,8 +131,8 @@ public: } private: - std::unique_ptr p; + class Impl; + std::unique_ptr p; }; -} // namespace awips -} // namespace scwx +} // namespace scwx::awips diff --git a/wxdata/include/scwx/wsr88d/rda/digital_radar_data_generic.hpp b/wxdata/include/scwx/wsr88d/rda/digital_radar_data_generic.hpp index ba911898..07f3c111 100644 --- a/wxdata/include/scwx/wsr88d/rda/digital_radar_data_generic.hpp +++ b/wxdata/include/scwx/wsr88d/rda/digital_radar_data_generic.hpp @@ -2,11 +2,7 @@ #include -namespace scwx -{ -namespace wsr88d -{ -namespace rda +namespace scwx::wsr88d::rda { class DigitalRadarDataGeneric : public GenericRadarData @@ -27,30 +23,31 @@ public: DigitalRadarDataGeneric(DigitalRadarDataGeneric&&) noexcept; DigitalRadarDataGeneric& operator=(DigitalRadarDataGeneric&&) noexcept; - std::string radar_identifier() const; - std::uint32_t collection_time() const; - std::uint16_t modified_julian_date() const; - std::uint16_t azimuth_number() const; - units::degrees azimuth_angle() const; - std::uint8_t compression_indicator() const; - std::uint16_t radial_length() const; - std::uint8_t azimuth_resolution_spacing() const; - std::uint8_t radial_status() const; - std::uint16_t elevation_number() const; - std::uint8_t cut_sector_number() const; - units::degrees elevation_angle() const; - std::uint8_t radial_spot_blanking_status() const; - std::uint8_t azimuth_indexing_mode() const; - std::uint16_t data_block_count() const; - std::uint16_t volume_coverage_pattern_number() const; + [[nodiscard]] std::string radar_identifier() const; + [[nodiscard]] std::uint32_t collection_time() const override; + [[nodiscard]] std::uint16_t modified_julian_date() const override; + [[nodiscard]] std::uint16_t azimuth_number() const override; + [[nodiscard]] units::degrees azimuth_angle() const override; + [[nodiscard]] std::uint8_t compression_indicator() const; + [[nodiscard]] std::uint16_t radial_length() const; + [[nodiscard]] std::uint8_t azimuth_resolution_spacing() const; + [[nodiscard]] std::uint8_t radial_status() const; + [[nodiscard]] std::uint16_t elevation_number() const override; + [[nodiscard]] std::uint8_t cut_sector_number() const; + [[nodiscard]] units::degrees elevation_angle() const; + [[nodiscard]] std::uint8_t radial_spot_blanking_status() const; + [[nodiscard]] std::uint8_t azimuth_indexing_mode() const; + [[nodiscard]] std::uint16_t data_block_count() const; + [[nodiscard]] std::uint16_t volume_coverage_pattern_number() const override; - std::shared_ptr elevation_data_block() const; - std::shared_ptr radial_data_block() const; - std::shared_ptr volume_data_block() const; - std::shared_ptr - moment_data_block(DataBlockType type) const; + [[nodiscard]] std::shared_ptr + elevation_data_block() const; + [[nodiscard]] std::shared_ptr radial_data_block() const; + [[nodiscard]] std::shared_ptr volume_data_block() const; + [[nodiscard]] std::shared_ptr + moment_data_block(DataBlockType type) const override; - bool Parse(std::istream& is); + bool Parse(std::istream& is) override; static std::shared_ptr Create(Level2MessageHeader&& header, std::istream& is); @@ -65,11 +62,14 @@ class DigitalRadarDataGeneric::DataBlock protected: explicit DataBlock(const std::string& dataBlockType, const std::string& dataName); + +public: virtual ~DataBlock(); DataBlock(const DataBlock&) = delete; DataBlock& operator=(const DataBlock&) = delete; +protected: DataBlock(DataBlock&&) noexcept; DataBlock& operator=(DataBlock&&) noexcept; @@ -118,17 +118,17 @@ public: MomentDataBlock(MomentDataBlock&&) noexcept; MomentDataBlock& operator=(MomentDataBlock&&) noexcept; - std::uint16_t number_of_data_moment_gates() const; - units::kilometers data_moment_range() const; - std::int16_t data_moment_range_raw() const; - units::kilometers data_moment_range_sample_interval() const; - std::uint16_t data_moment_range_sample_interval_raw() const; - float snr_threshold() const; - std::int16_t snr_threshold_raw() const; - std::uint8_t data_word_size() const; - float scale() const; - float offset() const; - const void* data_moments() const; + [[nodiscard]] std::uint16_t number_of_data_moment_gates() const override; + [[nodiscard]] units::kilometers data_moment_range() const override; + [[nodiscard]] std::int16_t data_moment_range_raw() const override; + [[nodiscard]] units::kilometers data_moment_range_sample_interval() const override; + [[nodiscard]] std::uint16_t data_moment_range_sample_interval_raw() const override; + [[nodiscard]] float snr_threshold() const; + [[nodiscard]] std::int16_t snr_threshold_raw() const override; + [[nodiscard]] std::uint8_t data_word_size() const override; + [[nodiscard]] float scale() const override; + [[nodiscard]] float offset() const override; + [[nodiscard]] const void* data_moments() const override; static std::shared_ptr Create(const std::string& dataBlockType, @@ -155,7 +155,7 @@ public: RadialDataBlock(RadialDataBlock&&) noexcept; RadialDataBlock& operator=(RadialDataBlock&&) noexcept; - float unambiguous_range() const; + [[nodiscard]] float unambiguous_range() const; static std::shared_ptr Create(const std::string& dataBlockType, @@ -182,9 +182,9 @@ public: VolumeDataBlock(VolumeDataBlock&&) noexcept; VolumeDataBlock& operator=(VolumeDataBlock&&) noexcept; - float latitude() const; - float longitude() const; - std::uint16_t volume_coverage_pattern_number() const; + [[nodiscard]] float latitude() const; + [[nodiscard]] float longitude() const; + [[nodiscard]] std::uint16_t volume_coverage_pattern_number() const; static std::shared_ptr Create(const std::string& dataBlockType, @@ -198,6 +198,4 @@ private: bool Parse(std::istream& is); }; -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/include/scwx/wsr88d/rda/performance_maintenance_data.hpp b/wxdata/include/scwx/wsr88d/rda/performance_maintenance_data.hpp index c362af78..c1bf3869 100644 --- a/wxdata/include/scwx/wsr88d/rda/performance_maintenance_data.hpp +++ b/wxdata/include/scwx/wsr88d/rda/performance_maintenance_data.hpp @@ -2,14 +2,8 @@ #include -namespace scwx +namespace scwx::wsr88d::rda { -namespace wsr88d -{ -namespace rda -{ - -class PerformanceMaintenanceDataImpl; class PerformanceMaintenanceData : public Level2Message { @@ -24,261 +18,261 @@ public: PerformanceMaintenanceData(PerformanceMaintenanceData&&) noexcept; PerformanceMaintenanceData& operator=(PerformanceMaintenanceData&&) noexcept; - uint16_t loop_back_set_status() const; - uint32_t t1_output_frames() const; - uint32_t t1_input_frames() const; - uint32_t router_memory_used() const; - uint32_t router_memory_free() const; - uint16_t router_memory_utilization() const; - uint16_t route_to_rpg() const; - uint16_t t1_port_status() const; - uint16_t router_dedicated_ethernet_port_status() const; - uint16_t router_commercial_ethernet_port_status() const; - uint32_t csu_24hr_errored_seconds() const; - uint32_t csu_24hr_severely_errored_seconds() const; - uint32_t csu_24hr_severely_errored_framing_seconds() const; - uint32_t csu_24hr_unavailable_seconds() const; - uint32_t csu_24hr_controlled_slip_seconds() const; - uint32_t csu_24hr_path_coding_violations() const; - uint32_t csu_24hr_line_errored_seconds() const; - uint32_t csu_24hr_bursty_errored_seconds() const; - uint32_t csu_24hr_degraded_minutes() const; - uint32_t lan_switch_cpu_utilization() const; - uint16_t lan_switch_memory_utilization() const; - uint16_t ifdr_chasis_temperature() const; - uint16_t ifdr_fpga_temperature() const; - uint16_t ntp_status() const; - uint16_t ipc_status() const; - uint16_t commanded_channel_control() const; - uint16_t polarization() const; - float ame_internal_temperature() const; - float ame_receiver_module_temperature() const; - float ame_bite_cal_module_temperature() const; - uint16_t ame_peltier_pulse_width_modulation() const; - uint16_t ame_peltier_status() const; - uint16_t ame_a_d_converter_status() const; - uint16_t ame_state() const; - float ame_3_3v_ps_voltage() const; - float ame_5v_ps_voltage() const; - float ame_6_5v_ps_voltage() const; - float ame_15v_ps_voltage() const; - float ame_48v_ps_voltage() const; - float ame_stalo_power() const; - float peltier_current() const; - float adc_calibration_reference_voltage() const; - uint16_t ame_mode() const; - uint16_t ame_peltier_mode() const; - float ame_peltier_inside_fan_current() const; - float ame_peltier_outside_fan_current() const; - float horizontal_tr_limiter_voltage() const; - float vertical_tr_limiter_voltage() const; - float adc_calibration_offset_voltage() const; - float adc_calibration_gain_correction() const; - uint16_t rcp_status() const; - std::string rcp_string() const; - uint16_t spip_power_buttons() const; - float master_power_administrator_load() const; - float expansion_power_administrator_load() const; - uint16_t _5vdc_ps() const; - uint16_t _15vdc_ps() const; - uint16_t _28vdc_ps() const; - uint16_t neg_15vdc_ps() const; - uint16_t _45vdc_ps() const; - uint16_t filament_ps_voltage() const; - uint16_t vacuum_pump_ps_voltage() const; - uint16_t focus_coil_ps_voltage() const; - uint16_t filament_ps() const; - uint16_t klystron_warmup() const; - uint16_t transmitter_available() const; - uint16_t wg_switch_position() const; - uint16_t wg_pfn_transfer_interlock() const; - uint16_t maintenance_mode() const; - uint16_t maintenance_required() const; - uint16_t pfn_switch_position() const; - uint16_t modulator_overload() const; - uint16_t modulator_inv_current() const; - uint16_t modulator_switch_fail() const; - uint16_t main_power_voltage() const; - uint16_t charging_system_fail() const; - uint16_t inverse_diode_current() const; - uint16_t trigger_amplifier() const; - uint16_t circulator_temperature() const; - uint16_t spectrum_filter_pressure() const; - uint16_t wg_arc_vswr() const; - uint16_t cabinet_interlock() const; - uint16_t cabinet_air_temperature() const; - uint16_t cabinet_airflow() const; - uint16_t klystron_current() const; - uint16_t klystron_filament_current() const; - uint16_t klystron_vacion_current() const; - uint16_t klystron_air_temperature() const; - uint16_t klystron_airflow() const; - uint16_t modulator_switch_maintenance() const; - uint16_t post_charge_regulator_maintenance() const; - uint16_t wg_pressure_humidity() const; - uint16_t transmitter_overvoltage() const; - uint16_t transmitter_overcurrent() const; - uint16_t focus_coil_current() const; - uint16_t focus_coil_airflow() const; - uint16_t oil_temperature() const; - uint16_t prf_limit() const; - uint16_t transmitter_oil_level() const; - uint16_t transmitter_battery_charging() const; - uint16_t high_voltage_status() const; - uint16_t transmitter_recycling_summary() const; - uint16_t transmitter_inoperable() const; - uint16_t transmitter_air_filter() const; - uint16_t zero_test_bit(unsigned i) const; - uint16_t one_test_bit(unsigned i) const; - uint16_t xmtr_spip_interface() const; - uint16_t transmitter_summary_status() const; - float transmitter_rf_power() const; - float horizontal_xmtr_peak_power() const; - float xmtr_peak_power() const; - float vertical_xmtr_peak_power() const; - float xmtr_rf_avg_power() const; - uint32_t xmtr_recycle_count() const; - float receiver_bias() const; - float transmit_imbalance() const; - float xmtr_power_meter_zero() const; - uint16_t ac_unit1_compressor_shut_off() const; - uint16_t ac_unit2_compressor_shut_off() const; - uint16_t generator_maintenance_required() const; - uint16_t generator_battery_voltage() const; - uint16_t generator_engine() const; - uint16_t generator_volt_frequency() const; - uint16_t power_source() const; - uint16_t transitional_power_source() const; - uint16_t generator_auto_run_off_switch() const; - uint16_t aircraft_hazard_lighting() const; - uint16_t equipment_shelter_fire_detection_system() const; - uint16_t equipment_shelter_fire_smoke() const; - uint16_t generator_shelter_fire_smoke() const; - uint16_t utility_voltage_frequency() const; - uint16_t site_security_alarm() const; - uint16_t security_equipment() const; - uint16_t security_system() const; - uint16_t receiver_connected_to_antenna() const; - uint16_t radome_hatch() const; - uint16_t ac_unit1_filter_dirty() const; - uint16_t ac_unit2_filter_dirty() const; - float equipment_shelter_temperature() const; - float outside_ambient_temperature() const; - float transmitter_leaving_air_temp() const; - float ac_unit1_discharge_air_temp() const; - float generator_shelter_temperature() const; - float radome_air_temperature() const; - float ac_unit2_discharge_air_temp() const; - float spip_15v_ps() const; - float spip_neg_15v_ps() const; - uint16_t spip_28v_ps_status() const; - float spip_5v_ps() const; - uint16_t converted_generator_fuel_level() const; - uint16_t elevation_pos_dead_limit() const; - uint16_t _150v_overvoltage() const; - uint16_t _150v_undervoltage() const; - uint16_t elevation_servo_amp_inhibit() const; - uint16_t elevation_servo_amp_short_circuit() const; - uint16_t elevation_servo_amp_overtemp() const; - uint16_t elevation_motor_overtemp() const; - uint16_t elevation_stow_pin() const; - uint16_t elevation_housing_5v_ps() const; - uint16_t elevation_neg_dead_limit() const; - uint16_t elevation_pos_normal_limit() const; - uint16_t elevation_neg_normal_limit() const; - uint16_t elevation_encoder_light() const; - uint16_t elevation_gearbox_oil() const; - uint16_t elevation_handwheel() const; - uint16_t elevation_amp_ps() const; - uint16_t azimuth_servo_amp_inhibit() const; - uint16_t azimuth_servo_amp_short_circuit() const; - uint16_t azimuth_servo_amp_overtemp() const; - uint16_t azimuth_motor_overtemp() const; - uint16_t azimuth_stow_pin() const; - uint16_t azimuth_housing_5v_ps() const; - uint16_t azimuth_encoder_light() const; - uint16_t azimuth_gearbox_oil() const; - uint16_t azimuth_bull_gear_oil() const; - uint16_t azimuth_handwheel() const; - uint16_t azimuth_servo_amp_ps() const; - uint16_t servo() const; - uint16_t pedestal_interlock_switch() const; - uint16_t coho_clock() const; - uint16_t rf_generator_frequency_select_oscillator() const; - uint16_t rf_generator_rf_stalo() const; - uint16_t rf_generator_phase_shifted_coho() const; - uint16_t _9v_receiver_ps() const; - uint16_t _5v_receiver_ps() const; - uint16_t _18v_receiver_ps() const; - uint16_t neg_9v_receiver_ps() const; - uint16_t _5v_single_channel_rdaiu_ps() const; - float horizontal_short_pulse_noise() const; - float horizontal_long_pulse_noise() const; - float horizontal_noise_temperature() const; - float vertical_short_pulse_noise() const; - float vertical_long_pulse_noise() const; - float vertical_noise_temperature() const; - float horizontal_linearity() const; - float horizontal_dynamic_range() const; - float horizontal_delta_dbz0() const; - float vertical_delta_dbz0() const; - float kd_peak_measured() const; - float short_pulse_horizontal_dbz0() const; - float long_pulse_horizontal_dbz0() const; - uint16_t velocity_processed() const; - uint16_t width_processed() const; - uint16_t velocity_rf_gen() const; - uint16_t width_rf_gen() const; - float horizontal_i0() const; - float vertical_i0() const; - float vertical_dynamic_range() const; - float short_pulse_vertical_dbz0() const; - float long_pulse_vertical_dbz0() const; - float horizontal_power_sense() const; - float vertical_power_sense() const; - float zdr_offset() const; - float clutter_suppression_delta() const; - float clutter_suppression_unfiltered_power() const; - float clutter_suppression_filtered_power() const; - float vertical_linearity() const; - uint16_t state_file_read_status() const; - uint16_t state_file_write_status() const; - uint16_t bypass_map_file_read_status() const; - uint16_t bypass_map_file_write_status() const; - uint16_t current_adaptation_file_read_status() const; - uint16_t current_adaptation_file_write_status() const; - uint16_t censor_zone_file_read_status() const; - uint16_t censor_zone_file_write_status() const; - uint16_t remote_vcp_file_read_status() const; - uint16_t remote_vcp_file_write_status() const; - uint16_t baseline_adaptation_file_read_status() const; - uint16_t read_status_of_prf_sets() const; - uint16_t clutter_filter_map_file_read_status() const; - uint16_t clutter_filter_map_file_write_status() const; - uint16_t general_disk_io_error() const; - uint8_t rsp_status() const; - uint8_t cpu1_temperature() const; - uint8_t cpu2_temperature() const; - uint16_t rsp_motherboard_power() const; - uint16_t spip_comm_status() const; - uint16_t hci_comm_status() const; - uint16_t signal_processor_command_status() const; - uint16_t ame_communication_status() const; - uint16_t rms_link_status() const; - uint16_t rpg_link_status() const; - uint16_t interpanel_link_status() const; - uint32_t performance_check_time() const; - uint16_t version() const; + [[nodiscard]] std::uint16_t loop_back_set_status() const; + [[nodiscard]] std::uint32_t t1_output_frames() const; + [[nodiscard]] std::uint32_t t1_input_frames() const; + [[nodiscard]] std::uint32_t router_memory_used() const; + [[nodiscard]] std::uint32_t router_memory_free() const; + [[nodiscard]] std::uint16_t router_memory_utilization() const; + [[nodiscard]] std::uint16_t route_to_rpg() const; + [[nodiscard]] std::uint16_t t1_port_status() const; + [[nodiscard]] std::uint16_t router_dedicated_ethernet_port_status() const; + [[nodiscard]] std::uint16_t router_commercial_ethernet_port_status() const; + [[nodiscard]] std::uint32_t csu_24hr_errored_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_severely_errored_seconds() const; + [[nodiscard]] std::uint32_t + csu_24hr_severely_errored_framing_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_unavailable_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_controlled_slip_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_path_coding_violations() const; + [[nodiscard]] std::uint32_t csu_24hr_line_errored_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_bursty_errored_seconds() const; + [[nodiscard]] std::uint32_t csu_24hr_degraded_minutes() const; + [[nodiscard]] std::uint32_t lan_switch_cpu_utilization() const; + [[nodiscard]] std::uint16_t lan_switch_memory_utilization() const; + [[nodiscard]] std::uint16_t ifdr_chasis_temperature() const; + [[nodiscard]] std::uint16_t ifdr_fpga_temperature() const; + [[nodiscard]] std::uint16_t ntp_status() const; + [[nodiscard]] std::uint16_t ipc_status() const; + [[nodiscard]] std::uint16_t commanded_channel_control() const; + [[nodiscard]] std::uint16_t polarization() const; + [[nodiscard]] float ame_internal_temperature() const; + [[nodiscard]] float ame_receiver_module_temperature() const; + [[nodiscard]] float ame_bite_cal_module_temperature() const; + [[nodiscard]] std::uint16_t ame_peltier_pulse_width_modulation() const; + [[nodiscard]] std::uint16_t ame_peltier_status() const; + [[nodiscard]] std::uint16_t ame_a_d_converter_status() const; + [[nodiscard]] std::uint16_t ame_state() const; + [[nodiscard]] float ame_3_3v_ps_voltage() const; + [[nodiscard]] float ame_5v_ps_voltage() const; + [[nodiscard]] float ame_6_5v_ps_voltage() const; + [[nodiscard]] float ame_15v_ps_voltage() const; + [[nodiscard]] float ame_48v_ps_voltage() const; + [[nodiscard]] float ame_stalo_power() const; + [[nodiscard]] float peltier_current() const; + [[nodiscard]] float adc_calibration_reference_voltage() const; + [[nodiscard]] std::uint16_t ame_mode() const; + [[nodiscard]] std::uint16_t ame_peltier_mode() const; + [[nodiscard]] float ame_peltier_inside_fan_current() const; + [[nodiscard]] float ame_peltier_outside_fan_current() const; + [[nodiscard]] float horizontal_tr_limiter_voltage() const; + [[nodiscard]] float vertical_tr_limiter_voltage() const; + [[nodiscard]] float adc_calibration_offset_voltage() const; + [[nodiscard]] float adc_calibration_gain_correction() const; + [[nodiscard]] std::uint16_t rcp_status() const; + [[nodiscard]] std::string rcp_string() const; + [[nodiscard]] std::uint16_t spip_power_buttons() const; + [[nodiscard]] float master_power_administrator_load() const; + [[nodiscard]] float expansion_power_administrator_load() const; + [[nodiscard]] std::uint16_t _5vdc_ps() const; + [[nodiscard]] std::uint16_t _15vdc_ps() const; + [[nodiscard]] std::uint16_t _28vdc_ps() const; + [[nodiscard]] std::uint16_t neg_15vdc_ps() const; + [[nodiscard]] std::uint16_t _45vdc_ps() const; + [[nodiscard]] std::uint16_t filament_ps_voltage() const; + [[nodiscard]] std::uint16_t vacuum_pump_ps_voltage() const; + [[nodiscard]] std::uint16_t focus_coil_ps_voltage() const; + [[nodiscard]] std::uint16_t filament_ps() const; + [[nodiscard]] std::uint16_t klystron_warmup() const; + [[nodiscard]] std::uint16_t transmitter_available() const; + [[nodiscard]] std::uint16_t wg_switch_position() const; + [[nodiscard]] std::uint16_t wg_pfn_transfer_interlock() const; + [[nodiscard]] std::uint16_t maintenance_mode() const; + [[nodiscard]] std::uint16_t maintenance_required() const; + [[nodiscard]] std::uint16_t pfn_switch_position() const; + [[nodiscard]] std::uint16_t modulator_overload() const; + [[nodiscard]] std::uint16_t modulator_inv_current() const; + [[nodiscard]] std::uint16_t modulator_switch_fail() const; + [[nodiscard]] std::uint16_t main_power_voltage() const; + [[nodiscard]] std::uint16_t charging_system_fail() const; + [[nodiscard]] std::uint16_t inverse_diode_current() const; + [[nodiscard]] std::uint16_t trigger_amplifier() const; + [[nodiscard]] std::uint16_t circulator_temperature() const; + [[nodiscard]] std::uint16_t spectrum_filter_pressure() const; + [[nodiscard]] std::uint16_t wg_arc_vswr() const; + [[nodiscard]] std::uint16_t cabinet_interlock() const; + [[nodiscard]] std::uint16_t cabinet_air_temperature() const; + [[nodiscard]] std::uint16_t cabinet_airflow() const; + [[nodiscard]] std::uint16_t klystron_current() const; + [[nodiscard]] std::uint16_t klystron_filament_current() const; + [[nodiscard]] std::uint16_t klystron_vacion_current() const; + [[nodiscard]] std::uint16_t klystron_air_temperature() const; + [[nodiscard]] std::uint16_t klystron_airflow() const; + [[nodiscard]] std::uint16_t modulator_switch_maintenance() const; + [[nodiscard]] std::uint16_t post_charge_regulator_maintenance() const; + [[nodiscard]] std::uint16_t wg_pressure_humidity() const; + [[nodiscard]] std::uint16_t transmitter_overvoltage() const; + [[nodiscard]] std::uint16_t transmitter_overcurrent() const; + [[nodiscard]] std::uint16_t focus_coil_current() const; + [[nodiscard]] std::uint16_t focus_coil_airflow() const; + [[nodiscard]] std::uint16_t oil_temperature() const; + [[nodiscard]] std::uint16_t prf_limit() const; + [[nodiscard]] std::uint16_t transmitter_oil_level() const; + [[nodiscard]] std::uint16_t transmitter_battery_charging() const; + [[nodiscard]] std::uint16_t high_voltage_status() const; + [[nodiscard]] std::uint16_t transmitter_recycling_summary() const; + [[nodiscard]] std::uint16_t transmitter_inoperable() const; + [[nodiscard]] std::uint16_t transmitter_air_filter() const; + [[nodiscard]] std::uint16_t zero_test_bit(unsigned i) const; + [[nodiscard]] std::uint16_t one_test_bit(unsigned i) const; + [[nodiscard]] std::uint16_t xmtr_spip_interface() const; + [[nodiscard]] std::uint16_t transmitter_summary_status() const; + [[nodiscard]] float transmitter_rf_power() const; + [[nodiscard]] float horizontal_xmtr_peak_power() const; + [[nodiscard]] float xmtr_peak_power() const; + [[nodiscard]] float vertical_xmtr_peak_power() const; + [[nodiscard]] float xmtr_rf_avg_power() const; + [[nodiscard]] std::uint32_t xmtr_recycle_count() const; + [[nodiscard]] float receiver_bias() const; + [[nodiscard]] float transmit_imbalance() const; + [[nodiscard]] float xmtr_power_meter_zero() const; + [[nodiscard]] std::uint16_t ac_unit1_compressor_shut_off() const; + [[nodiscard]] std::uint16_t ac_unit2_compressor_shut_off() const; + [[nodiscard]] std::uint16_t generator_maintenance_required() const; + [[nodiscard]] std::uint16_t generator_battery_voltage() const; + [[nodiscard]] std::uint16_t generator_engine() const; + [[nodiscard]] std::uint16_t generator_volt_frequency() const; + [[nodiscard]] std::uint16_t power_source() const; + [[nodiscard]] std::uint16_t transitional_power_source() const; + [[nodiscard]] std::uint16_t generator_auto_run_off_switch() const; + [[nodiscard]] std::uint16_t aircraft_hazard_lighting() const; + [[nodiscard]] std::uint16_t equipment_shelter_fire_detection_system() const; + [[nodiscard]] std::uint16_t equipment_shelter_fire_smoke() const; + [[nodiscard]] std::uint16_t generator_shelter_fire_smoke() const; + [[nodiscard]] std::uint16_t utility_voltage_frequency() const; + [[nodiscard]] std::uint16_t site_security_alarm() const; + [[nodiscard]] std::uint16_t security_equipment() const; + [[nodiscard]] std::uint16_t security_system() const; + [[nodiscard]] std::uint16_t receiver_connected_to_antenna() const; + [[nodiscard]] std::uint16_t radome_hatch() const; + [[nodiscard]] std::uint16_t ac_unit1_filter_dirty() const; + [[nodiscard]] std::uint16_t ac_unit2_filter_dirty() const; + [[nodiscard]] float equipment_shelter_temperature() const; + [[nodiscard]] float outside_ambient_temperature() const; + [[nodiscard]] float transmitter_leaving_air_temp() const; + [[nodiscard]] float ac_unit1_discharge_air_temp() const; + [[nodiscard]] float generator_shelter_temperature() const; + [[nodiscard]] float radome_air_temperature() const; + [[nodiscard]] float ac_unit2_discharge_air_temp() const; + [[nodiscard]] float spip_15v_ps() const; + [[nodiscard]] float spip_neg_15v_ps() const; + [[nodiscard]] std::uint16_t spip_28v_ps_status() const; + [[nodiscard]] float spip_5v_ps() const; + [[nodiscard]] std::uint16_t converted_generator_fuel_level() const; + [[nodiscard]] std::uint16_t elevation_pos_dead_limit() const; + [[nodiscard]] std::uint16_t _150v_overvoltage() const; + [[nodiscard]] std::uint16_t _150v_undervoltage() const; + [[nodiscard]] std::uint16_t elevation_servo_amp_inhibit() const; + [[nodiscard]] std::uint16_t elevation_servo_amp_short_circuit() const; + [[nodiscard]] std::uint16_t elevation_servo_amp_overtemp() const; + [[nodiscard]] std::uint16_t elevation_motor_overtemp() const; + [[nodiscard]] std::uint16_t elevation_stow_pin() const; + [[nodiscard]] std::uint16_t elevation_housing_5v_ps() const; + [[nodiscard]] std::uint16_t elevation_neg_dead_limit() const; + [[nodiscard]] std::uint16_t elevation_pos_normal_limit() const; + [[nodiscard]] std::uint16_t elevation_neg_normal_limit() const; + [[nodiscard]] std::uint16_t elevation_encoder_light() const; + [[nodiscard]] std::uint16_t elevation_gearbox_oil() const; + [[nodiscard]] std::uint16_t elevation_handwheel() const; + [[nodiscard]] std::uint16_t elevation_amp_ps() const; + [[nodiscard]] std::uint16_t azimuth_servo_amp_inhibit() const; + [[nodiscard]] std::uint16_t azimuth_servo_amp_short_circuit() const; + [[nodiscard]] std::uint16_t azimuth_servo_amp_overtemp() const; + [[nodiscard]] std::uint16_t azimuth_motor_overtemp() const; + [[nodiscard]] std::uint16_t azimuth_stow_pin() const; + [[nodiscard]] std::uint16_t azimuth_housing_5v_ps() const; + [[nodiscard]] std::uint16_t azimuth_encoder_light() const; + [[nodiscard]] std::uint16_t azimuth_gearbox_oil() const; + [[nodiscard]] std::uint16_t azimuth_bull_gear_oil() const; + [[nodiscard]] std::uint16_t azimuth_handwheel() const; + [[nodiscard]] std::uint16_t azimuth_servo_amp_ps() const; + [[nodiscard]] std::uint16_t servo() const; + [[nodiscard]] std::uint16_t pedestal_interlock_switch() const; + [[nodiscard]] std::uint16_t coho_clock() const; + [[nodiscard]] std::uint16_t rf_generator_frequency_select_oscillator() const; + [[nodiscard]] std::uint16_t rf_generator_rf_stalo() const; + [[nodiscard]] std::uint16_t rf_generator_phase_shifted_coho() const; + [[nodiscard]] std::uint16_t _9v_receiver_ps() const; + [[nodiscard]] std::uint16_t _5v_receiver_ps() const; + [[nodiscard]] std::uint16_t _18v_receiver_ps() const; + [[nodiscard]] std::uint16_t neg_9v_receiver_ps() const; + [[nodiscard]] std::uint16_t _5v_single_channel_rdaiu_ps() const; + [[nodiscard]] float horizontal_short_pulse_noise() const; + [[nodiscard]] float horizontal_long_pulse_noise() const; + [[nodiscard]] float horizontal_noise_temperature() const; + [[nodiscard]] float vertical_short_pulse_noise() const; + [[nodiscard]] float vertical_long_pulse_noise() const; + [[nodiscard]] float vertical_noise_temperature() const; + [[nodiscard]] float horizontal_linearity() const; + [[nodiscard]] float horizontal_dynamic_range() const; + [[nodiscard]] float horizontal_delta_dbz0() const; + [[nodiscard]] float vertical_delta_dbz0() const; + [[nodiscard]] float kd_peak_measured() const; + [[nodiscard]] float short_pulse_horizontal_dbz0() const; + [[nodiscard]] float long_pulse_horizontal_dbz0() const; + [[nodiscard]] std::uint16_t velocity_processed() const; + [[nodiscard]] std::uint16_t width_processed() const; + [[nodiscard]] std::uint16_t velocity_rf_gen() const; + [[nodiscard]] std::uint16_t width_rf_gen() const; + [[nodiscard]] float horizontal_i0() const; + [[nodiscard]] float vertical_i0() const; + [[nodiscard]] float vertical_dynamic_range() const; + [[nodiscard]] float short_pulse_vertical_dbz0() const; + [[nodiscard]] float long_pulse_vertical_dbz0() const; + [[nodiscard]] float horizontal_power_sense() const; + [[nodiscard]] float vertical_power_sense() const; + [[nodiscard]] float zdr_offset() const; + [[nodiscard]] float clutter_suppression_delta() const; + [[nodiscard]] float clutter_suppression_unfiltered_power() const; + [[nodiscard]] float clutter_suppression_filtered_power() const; + [[nodiscard]] float vertical_linearity() const; + [[nodiscard]] std::uint16_t state_file_read_status() const; + [[nodiscard]] std::uint16_t state_file_write_status() const; + [[nodiscard]] std::uint16_t bypass_map_file_read_status() const; + [[nodiscard]] std::uint16_t bypass_map_file_write_status() const; + [[nodiscard]] std::uint16_t current_adaptation_file_read_status() const; + [[nodiscard]] std::uint16_t current_adaptation_file_write_status() const; + [[nodiscard]] std::uint16_t censor_zone_file_read_status() const; + [[nodiscard]] std::uint16_t censor_zone_file_write_status() const; + [[nodiscard]] std::uint16_t remote_vcp_file_read_status() const; + [[nodiscard]] std::uint16_t remote_vcp_file_write_status() const; + [[nodiscard]] std::uint16_t baseline_adaptation_file_read_status() const; + [[nodiscard]] std::uint16_t read_status_of_prf_sets() const; + [[nodiscard]] std::uint16_t clutter_filter_map_file_read_status() const; + [[nodiscard]] std::uint16_t clutter_filter_map_file_write_status() const; + [[nodiscard]] std::uint16_t general_disk_io_error() const; + [[nodiscard]] std::uint8_t rsp_status() const; + [[nodiscard]] std::uint8_t cpu1_temperature() const; + [[nodiscard]] std::uint8_t cpu2_temperature() const; + [[nodiscard]] std::uint16_t rsp_motherboard_power() const; + [[nodiscard]] std::uint16_t spip_comm_status() const; + [[nodiscard]] std::uint16_t hci_comm_status() const; + [[nodiscard]] std::uint16_t signal_processor_command_status() const; + [[nodiscard]] std::uint16_t ame_communication_status() const; + [[nodiscard]] std::uint16_t rms_link_status() const; + [[nodiscard]] std::uint16_t rpg_link_status() const; + [[nodiscard]] std::uint16_t interpanel_link_status() const; + [[nodiscard]] std::uint32_t performance_check_time() const; + [[nodiscard]] std::uint16_t version() const; - bool Parse(std::istream& is); + bool Parse(std::istream& is) override; static std::shared_ptr Create(Level2MessageHeader&& header, std::istream& is); private: - std::unique_ptr p; + class Impl; + std::unique_ptr p; }; -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/include/scwx/wsr88d/rda/rda_adaptation_data.hpp b/wxdata/include/scwx/wsr88d/rda/rda_adaptation_data.hpp index be4f8067..60520e83 100644 --- a/wxdata/include/scwx/wsr88d/rda/rda_adaptation_data.hpp +++ b/wxdata/include/scwx/wsr88d/rda/rda_adaptation_data.hpp @@ -2,14 +2,8 @@ #include -namespace scwx +namespace scwx::wsr88d::rda { -namespace wsr88d -{ -namespace rda -{ - -class RdaAdaptationDataImpl; class RdaAdaptationData : public Level2Message { @@ -23,200 +17,199 @@ public: RdaAdaptationData(RdaAdaptationData&&) noexcept; RdaAdaptationData& operator=(RdaAdaptationData&&) noexcept; - std::string adap_file_name() const; - std::string adap_format() const; - std::string adap_revision() const; - std::string adap_date() const; - std::string adap_time() const; - float lower_pre_limit() const; - float az_lat() const; - float upper_pre_limit() const; - float el_lat() const; - float parkaz() const; - float parkel() const; - float a_fuel_conv(unsigned i) const; - float a_min_shelter_temp() const; - float a_max_shelter_temp() const; - float a_min_shelter_ac_temp_diff() const; - float a_max_xmtr_air_temp() const; - float a_max_rad_temp() const; - float a_max_rad_temp_rise() const; - float lower_dead_limit() const; - float upper_dead_limit() const; - float a_min_gen_room_temp() const; - float a_max_gen_room_temp() const; - float spip_5v_reg_lim() const; - float spip_15v_reg_lim() const; - bool rpg_co_located() const; - bool spec_filter_installed() const; - bool tps_installed() const; - bool rms_installed() const; - uint32_t a_hvdl_tst_int() const; - uint32_t a_rpg_lt_int() const; - uint32_t a_min_stab_util_pwr_time() const; - uint32_t a_gen_auto_exer_interval() const; - uint32_t a_util_pwr_sw_req_interval() const; - float a_low_fuel_level() const; - uint32_t config_chan_number() const; - uint32_t redundant_chan_config() const; - float atten_table(unsigned i) const; - float path_losses(unsigned i) const; - float h_coupler_xmt_loss() const; - float h_coupler_cw_loss() const; - float v_coupler_xmt_loss() const; - float ame_ts_bias() const; - float v_coupler_cw_loss() const; - float pwr_sense_bias() const; - float ame_v_noise_enr() const; - float chan_cal_diff() const; - float v_ts_cw() const; - float h_rnscale(unsigned i) const; - float atmos(unsigned i) const; - float el_index(unsigned i) const; - uint32_t tfreq_mhz() const; - float base_data_tcn() const; - float refl_data_tover() const; - float tar_h_dbz0_lp() const; - float tar_v_dbz0_lp() const; - uint32_t init_phi_dp() const; - uint32_t norm_init_phi_dp() const; - float lx_lp() const; - float lx_sp() const; - float meteor_param() const; - float antenna_gain() const; - float vel_degrad_limit() const; - float wth_degrad_limit() const; - float h_noisetemp_dgrad_limit() const; - uint32_t h_min_noisetemp() const; - float v_noisetemp_dgrad_limit() const; - uint32_t v_min_noisetemp() const; - float kly_degrade_limit() const; - float ts_coho() const; - float h_ts_cw() const; - float ts_stalo() const; - float ame_h_noise_enr() const; - float xmtr_peak_pwr_high_limit() const; - float xmtr_peak_pwr_low_limit() const; - float h_dbz0_delta_limit() const; - float threshold1() const; - float threshold2() const; - float clut_supp_dgrad_lim() const; - float range0_value() const; - float xmtr_pwr_mtr_scale() const; - float v_dbz0_delta_limit() const; - float tar_h_dbz0_sp() const; - float tar_v_dbz0_sp() const; - uint32_t deltaprf() const; - uint32_t tau_sp() const; - uint32_t tau_lp() const; - uint32_t nc_dead_value() const; - uint32_t tau_rf_sp() const; - uint32_t tau_rf_lp() const; - float seg1_lim() const; - float slatsec() const; - float slonsec() const; - uint32_t slatdeg() const; - uint32_t slatmin() const; - uint32_t slondeg() const; - uint32_t slonmin() const; - char slatdir() const; - char slondir() const; - double dig_rcvr_clock_freq() const; - double coho_freq() const; - float az_correction_factor() const; - float el_correction_factor() const; - std::string site_name() const; - float ant_manual_setup_ielmin() const; - float ant_manual_setup_ielmax() const; - uint32_t ant_manual_setup_fazvelmax() const; - uint32_t ant_manual_setup_felvelmax() const; - int32_t ant_manual_setup_ignd_hgt() const; - uint32_t ant_manual_setup_irad_hgt() const; - float az_pos_sustain_drive() const; - float az_neg_sustain_drive() const; - float az_nom_pos_drive_slope() const; - float az_nom_neg_drive_slope() const; - float az_feedback_slope() const; - float el_pos_sustain_drive() const; - float el_neg_sustain_drive() const; - float el_nom_pos_drive_slope() const; - float el_nom_neg_drive_slope() const; - float el_feedback_slope() const; - float el_first_slope() const; - float el_second_slope() const; - float el_third_slope() const; - float el_droop_pos() const; - float el_off_neutral_drive() const; - float az_intertia() const; - float el_inertia() const; - float az_stow_angle() const; - float el_stow_angle() const; - float az_encoder_alignment() const; - float el_encoder_alignment() const; - std::string refined_park() const; - uint32_t rvp8nv_iwaveguide_length() const; - float v_rnscale(unsigned i) const; - float vel_data_tover() const; - float width_data_tover() const; - float doppler_range_start() const; - uint32_t max_el_index() const; - float seg2_lim() const; - float seg3_lim() const; - float seg4_lim() const; - uint32_t nbr_el_segments() const; - float h_noise_long() const; - float ant_noise_temp() const; - float h_noise_short() const; - float h_noise_tolerance() const; - float min_h_dyn_range() const; - bool gen_installed() const; - bool gen_exercise() const; - float v_noise_tolerance() const; - float min_v_dyn_range() const; - float zdr_offset_dgrad_lim() const; - float baseline_zdr_offset() const; - float v_noise_long() const; - float v_noise_short() const; - float zdr_data_tover() const; - float phi_data_tover() const; - float rho_data_tover() const; - float stalo_power_dgrad_limit() const; - float stalo_power_maint_limit() const; - float min_h_pwr_sense() const; - float min_v_pwr_sense() const; - float h_pwr_sense_offset() const; - float v_pwr_sense_offset() const; - float ps_gain_ref() const; - float rf_pallet_broad_loss() const; - float ame_ps_tolerance() const; - float ame_max_temp() const; - float ame_min_temp() const; - float rcvr_mod_max_temp() const; - float rcvr_mod_min_temp() const; - float bite_mod_max_temp() const; - float bite_mod_min_temp() const; - uint32_t default_polarization() const; - float tr_limit_dgrad_limit() const; - float tr_limit_fail_limit() const; - bool rfp_stepper_enabled() const; - float ame_current_tolerance() const; - uint32_t h_only_polarization() const; - uint32_t v_only_polarization() const; - float sun_bias() const; - float a_min_shelter_temp_warn() const; - float power_meter_zero() const; - float txb_baseline() const; - float txb_alarm_thresh() const; + [[nodiscard]] std::string adap_file_name() const; + [[nodiscard]] std::string adap_format() const; + [[nodiscard]] std::string adap_revision() const; + [[nodiscard]] std::string adap_date() const; + [[nodiscard]] std::string adap_time() const; + [[nodiscard]] float lower_pre_limit() const; + [[nodiscard]] float az_lat() const; + [[nodiscard]] float upper_pre_limit() const; + [[nodiscard]] float el_lat() const; + [[nodiscard]] float parkaz() const; + [[nodiscard]] float parkel() const; + [[nodiscard]] float a_fuel_conv(unsigned i) const; + [[nodiscard]] float a_min_shelter_temp() const; + [[nodiscard]] float a_max_shelter_temp() const; + [[nodiscard]] float a_min_shelter_ac_temp_diff() const; + [[nodiscard]] float a_max_xmtr_air_temp() const; + [[nodiscard]] float a_max_rad_temp() const; + [[nodiscard]] float a_max_rad_temp_rise() const; + [[nodiscard]] float lower_dead_limit() const; + [[nodiscard]] float upper_dead_limit() const; + [[nodiscard]] float a_min_gen_room_temp() const; + [[nodiscard]] float a_max_gen_room_temp() const; + [[nodiscard]] float spip_5v_reg_lim() const; + [[nodiscard]] float spip_15v_reg_lim() const; + [[nodiscard]] bool rpg_co_located() const; + [[nodiscard]] bool spec_filter_installed() const; + [[nodiscard]] bool tps_installed() const; + [[nodiscard]] bool rms_installed() const; + [[nodiscard]] std::uint32_t a_hvdl_tst_int() const; + [[nodiscard]] std::uint32_t a_rpg_lt_int() const; + [[nodiscard]] std::uint32_t a_min_stab_util_pwr_time() const; + [[nodiscard]] std::uint32_t a_gen_auto_exer_interval() const; + [[nodiscard]] std::uint32_t a_util_pwr_sw_req_interval() const; + [[nodiscard]] float a_low_fuel_level() const; + [[nodiscard]] std::uint32_t config_chan_number() const; + [[nodiscard]] std::uint32_t redundant_chan_config() const; + [[nodiscard]] float atten_table(unsigned i) const; + [[nodiscard]] float path_losses(unsigned i) const; + [[nodiscard]] float h_coupler_xmt_loss() const; + [[nodiscard]] float h_coupler_cw_loss() const; + [[nodiscard]] float v_coupler_xmt_loss() const; + [[nodiscard]] float ame_ts_bias() const; + [[nodiscard]] float v_coupler_cw_loss() const; + [[nodiscard]] float pwr_sense_bias() const; + [[nodiscard]] float ame_v_noise_enr() const; + [[nodiscard]] float chan_cal_diff() const; + [[nodiscard]] float v_ts_cw() const; + [[nodiscard]] float h_rnscale(unsigned i) const; + [[nodiscard]] float atmos(unsigned i) const; + [[nodiscard]] float el_index(unsigned i) const; + [[nodiscard]] std::uint32_t tfreq_mhz() const; + [[nodiscard]] float base_data_tcn() const; + [[nodiscard]] float refl_data_tover() const; + [[nodiscard]] float tar_h_dbz0_lp() const; + [[nodiscard]] float tar_v_dbz0_lp() const; + [[nodiscard]] std::uint32_t init_phi_dp() const; + [[nodiscard]] std::uint32_t norm_init_phi_dp() const; + [[nodiscard]] float lx_lp() const; + [[nodiscard]] float lx_sp() const; + [[nodiscard]] float meteor_param() const; + [[nodiscard]] float antenna_gain() const; + [[nodiscard]] float vel_degrad_limit() const; + [[nodiscard]] float wth_degrad_limit() const; + [[nodiscard]] float h_noisetemp_dgrad_limit() const; + [[nodiscard]] std::uint32_t h_min_noisetemp() const; + [[nodiscard]] float v_noisetemp_dgrad_limit() const; + [[nodiscard]] std::uint32_t v_min_noisetemp() const; + [[nodiscard]] float kly_degrade_limit() const; + [[nodiscard]] float ts_coho() const; + [[nodiscard]] float h_ts_cw() const; + [[nodiscard]] float ts_stalo() const; + [[nodiscard]] float ame_h_noise_enr() const; + [[nodiscard]] float xmtr_peak_pwr_high_limit() const; + [[nodiscard]] float xmtr_peak_pwr_low_limit() const; + [[nodiscard]] float h_dbz0_delta_limit() const; + [[nodiscard]] float threshold1() const; + [[nodiscard]] float threshold2() const; + [[nodiscard]] float clut_supp_dgrad_lim() const; + [[nodiscard]] float range0_value() const; + [[nodiscard]] float xmtr_pwr_mtr_scale() const; + [[nodiscard]] float v_dbz0_delta_limit() const; + [[nodiscard]] float tar_h_dbz0_sp() const; + [[nodiscard]] float tar_v_dbz0_sp() const; + [[nodiscard]] std::uint32_t deltaprf() const; + [[nodiscard]] std::uint32_t tau_sp() const; + [[nodiscard]] std::uint32_t tau_lp() const; + [[nodiscard]] std::uint32_t nc_dead_value() const; + [[nodiscard]] std::uint32_t tau_rf_sp() const; + [[nodiscard]] std::uint32_t tau_rf_lp() const; + [[nodiscard]] float seg1_lim() const; + [[nodiscard]] float slatsec() const; + [[nodiscard]] float slonsec() const; + [[nodiscard]] std::uint32_t slatdeg() const; + [[nodiscard]] std::uint32_t slatmin() const; + [[nodiscard]] std::uint32_t slondeg() const; + [[nodiscard]] std::uint32_t slonmin() const; + [[nodiscard]] char slatdir() const; + [[nodiscard]] char slondir() const; + [[nodiscard]] double dig_rcvr_clock_freq() const; + [[nodiscard]] double coho_freq() const; + [[nodiscard]] float az_correction_factor() const; + [[nodiscard]] float el_correction_factor() const; + [[nodiscard]] std::string site_name() const; + [[nodiscard]] float ant_manual_setup_ielmin() const; + [[nodiscard]] float ant_manual_setup_ielmax() const; + [[nodiscard]] std::uint32_t ant_manual_setup_fazvelmax() const; + [[nodiscard]] std::uint32_t ant_manual_setup_felvelmax() const; + [[nodiscard]] std::int32_t ant_manual_setup_ignd_hgt() const; + [[nodiscard]] std::uint32_t ant_manual_setup_irad_hgt() const; + [[nodiscard]] float az_pos_sustain_drive() const; + [[nodiscard]] float az_neg_sustain_drive() const; + [[nodiscard]] float az_nom_pos_drive_slope() const; + [[nodiscard]] float az_nom_neg_drive_slope() const; + [[nodiscard]] float az_feedback_slope() const; + [[nodiscard]] float el_pos_sustain_drive() const; + [[nodiscard]] float el_neg_sustain_drive() const; + [[nodiscard]] float el_nom_pos_drive_slope() const; + [[nodiscard]] float el_nom_neg_drive_slope() const; + [[nodiscard]] float el_feedback_slope() const; + [[nodiscard]] float el_first_slope() const; + [[nodiscard]] float el_second_slope() const; + [[nodiscard]] float el_third_slope() const; + [[nodiscard]] float el_droop_pos() const; + [[nodiscard]] float el_off_neutral_drive() const; + [[nodiscard]] float az_intertia() const; + [[nodiscard]] float el_inertia() const; + [[nodiscard]] float az_stow_angle() const; + [[nodiscard]] float el_stow_angle() const; + [[nodiscard]] float az_encoder_alignment() const; + [[nodiscard]] float el_encoder_alignment() const; + [[nodiscard]] std::string refined_park() const; + [[nodiscard]] std::uint32_t rvp8nv_iwaveguide_length() const; + [[nodiscard]] float v_rnscale(unsigned i) const; + [[nodiscard]] float vel_data_tover() const; + [[nodiscard]] float width_data_tover() const; + [[nodiscard]] float doppler_range_start() const; + [[nodiscard]] std::uint32_t max_el_index() const; + [[nodiscard]] float seg2_lim() const; + [[nodiscard]] float seg3_lim() const; + [[nodiscard]] float seg4_lim() const; + [[nodiscard]] std::uint32_t nbr_el_segments() const; + [[nodiscard]] float h_noise_long() const; + [[nodiscard]] float ant_noise_temp() const; + [[nodiscard]] float h_noise_short() const; + [[nodiscard]] float h_noise_tolerance() const; + [[nodiscard]] float min_h_dyn_range() const; + [[nodiscard]] bool gen_installed() const; + [[nodiscard]] bool gen_exercise() const; + [[nodiscard]] float v_noise_tolerance() const; + [[nodiscard]] float min_v_dyn_range() const; + [[nodiscard]] float zdr_offset_dgrad_lim() const; + [[nodiscard]] float baseline_zdr_offset() const; + [[nodiscard]] float v_noise_long() const; + [[nodiscard]] float v_noise_short() const; + [[nodiscard]] float zdr_data_tover() const; + [[nodiscard]] float phi_data_tover() const; + [[nodiscard]] float rho_data_tover() const; + [[nodiscard]] float stalo_power_dgrad_limit() const; + [[nodiscard]] float stalo_power_maint_limit() const; + [[nodiscard]] float min_h_pwr_sense() const; + [[nodiscard]] float min_v_pwr_sense() const; + [[nodiscard]] float h_pwr_sense_offset() const; + [[nodiscard]] float v_pwr_sense_offset() const; + [[nodiscard]] float ps_gain_ref() const; + [[nodiscard]] float rf_pallet_broad_loss() const; + [[nodiscard]] float ame_ps_tolerance() const; + [[nodiscard]] float ame_max_temp() const; + [[nodiscard]] float ame_min_temp() const; + [[nodiscard]] float rcvr_mod_max_temp() const; + [[nodiscard]] float rcvr_mod_min_temp() const; + [[nodiscard]] float bite_mod_max_temp() const; + [[nodiscard]] float bite_mod_min_temp() const; + [[nodiscard]] std::uint32_t default_polarization() const; + [[nodiscard]] float tr_limit_dgrad_limit() const; + [[nodiscard]] float tr_limit_fail_limit() const; + [[nodiscard]] bool rfp_stepper_enabled() const; + [[nodiscard]] float ame_current_tolerance() const; + [[nodiscard]] std::uint32_t h_only_polarization() const; + [[nodiscard]] std::uint32_t v_only_polarization() const; + [[nodiscard]] float sun_bias() const; + [[nodiscard]] float a_min_shelter_temp_warn() const; + [[nodiscard]] float power_meter_zero() const; + [[nodiscard]] float txb_baseline() const; + [[nodiscard]] float txb_alarm_thresh() const; - bool Parse(std::istream& is); + bool Parse(std::istream& is) override; static std::shared_ptr Create(Level2MessageHeader&& header, std::istream& is); private: - std::unique_ptr p; + class Impl; + std::unique_ptr p; }; -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/include/scwx/wsr88d/rda/rda_status_data.hpp b/wxdata/include/scwx/wsr88d/rda/rda_status_data.hpp index a4e7702a..fcd937ec 100644 --- a/wxdata/include/scwx/wsr88d/rda/rda_status_data.hpp +++ b/wxdata/include/scwx/wsr88d/rda/rda_status_data.hpp @@ -2,14 +2,8 @@ #include -namespace scwx +namespace scwx::wsr88d::rda { -namespace wsr88d -{ -namespace rda -{ - -class RdaStatusDataImpl; class RdaStatusData : public Level2Message { @@ -23,46 +17,45 @@ public: RdaStatusData(RdaStatusData&&) noexcept; RdaStatusData& operator=(RdaStatusData&&) noexcept; - uint16_t rda_status() const; - uint16_t operability_status() const; - uint16_t control_status() const; - uint16_t auxiliary_power_generator_state() const; - uint16_t average_transmitter_power() const; - float horizontal_reflectivity_calibration_correction() const; - uint16_t data_transmission_enabled() const; - uint16_t volume_coverage_pattern_number() const; - uint16_t rda_control_authorization() const; - uint16_t rda_build_number() const; - uint16_t operational_mode() const; - uint16_t super_resolution_status() const; - uint16_t clutter_mitigation_decision_status() const; - uint16_t rda_scan_and_data_flags() const; - uint16_t rda_alarm_summary() const; - uint16_t command_acknowledgement() const; - uint16_t channel_control_status() const; - uint16_t spot_blanking_status() const; - uint16_t bypass_map_generation_date() const; - uint16_t bypass_map_generation_time() const; - uint16_t clutter_filter_map_generation_date() const; - uint16_t clutter_filter_map_generation_time() const; - float vertical_reflectivity_calibration_correction() const; - uint16_t transition_power_source_status() const; - uint16_t rms_control_status() const; - uint16_t performance_check_status() const; - uint16_t alarm_codes(unsigned i) const; - uint16_t signal_processing_options() const; - uint16_t downloaded_pattern_number() const; - uint16_t status_version() const; + [[nodiscard]] std::uint16_t rda_status() const; + [[nodiscard]] std::uint16_t operability_status() const; + [[nodiscard]] std::uint16_t control_status() const; + [[nodiscard]] std::uint16_t auxiliary_power_generator_state() const; + [[nodiscard]] std::uint16_t average_transmitter_power() const; + [[nodiscard]] float horizontal_reflectivity_calibration_correction() const; + [[nodiscard]] std::uint16_t data_transmission_enabled() const; + [[nodiscard]] std::uint16_t volume_coverage_pattern_number() const; + [[nodiscard]] std::uint16_t rda_control_authorization() const; + [[nodiscard]] std::uint16_t rda_build_number() const; + [[nodiscard]] std::uint16_t operational_mode() const; + [[nodiscard]] std::uint16_t super_resolution_status() const; + [[nodiscard]] std::uint16_t clutter_mitigation_decision_status() const; + [[nodiscard]] std::uint16_t rda_scan_and_data_flags() const; + [[nodiscard]] std::uint16_t rda_alarm_summary() const; + [[nodiscard]] std::uint16_t command_acknowledgement() const; + [[nodiscard]] std::uint16_t channel_control_status() const; + [[nodiscard]] std::uint16_t spot_blanking_status() const; + [[nodiscard]] std::uint16_t bypass_map_generation_date() const; + [[nodiscard]] std::uint16_t bypass_map_generation_time() const; + [[nodiscard]] std::uint16_t clutter_filter_map_generation_date() const; + [[nodiscard]] std::uint16_t clutter_filter_map_generation_time() const; + [[nodiscard]] float vertical_reflectivity_calibration_correction() const; + [[nodiscard]] std::uint16_t transition_power_source_status() const; + [[nodiscard]] std::uint16_t rms_control_status() const; + [[nodiscard]] std::uint16_t performance_check_status() const; + [[nodiscard]] std::uint16_t alarm_codes(unsigned i) const; + [[nodiscard]] std::uint16_t signal_processing_options() const; + [[nodiscard]] std::uint16_t downloaded_pattern_number() const; + [[nodiscard]] std::uint16_t status_version() const; - bool Parse(std::istream& is); + bool Parse(std::istream& is) override; static std::shared_ptr Create(Level2MessageHeader&& header, std::istream& is); private: - std::unique_ptr p; + class Impl; + std::unique_ptr p; }; -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/source/scwx/awips/message.cpp b/wxdata/source/scwx/awips/message.cpp index 73ae88a2..f4dbe9b7 100644 --- a/wxdata/source/scwx/awips/message.cpp +++ b/wxdata/source/scwx/awips/message.cpp @@ -9,17 +9,22 @@ namespace awips static const std::string logPrefix_ = "scwx::awips::message"; static const auto logger_ = util::Logger::Create(logPrefix_); -class MessageImpl +class Message::Impl { public: - explicit MessageImpl() {}; - ~MessageImpl() = default; + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; }; -Message::Message() : p(std::make_unique()) {} +Message::Message() : p(std::make_unique()) {} Message::~Message() = default; -Message::Message(Message&&) noexcept = default; +Message::Message(Message&&) noexcept = default; Message& Message::operator=(Message&&) noexcept = default; bool Message::ValidateMessage(std::istream& is, size_t bytesRead) const diff --git a/wxdata/source/scwx/wsr88d/rda/digital_radar_data_generic.cpp b/wxdata/source/scwx/wsr88d/rda/digital_radar_data_generic.cpp index 79705a70..4004fd07 100644 --- a/wxdata/source/scwx/wsr88d/rda/digital_radar_data_generic.cpp +++ b/wxdata/source/scwx/wsr88d/rda/digital_radar_data_generic.cpp @@ -1,11 +1,7 @@ #include #include -namespace scwx -{ -namespace wsr88d -{ -namespace rda +namespace scwx::wsr88d::rda { static const std::string logPrefix_ = @@ -27,9 +23,9 @@ static const std::unordered_map strToDataBlock_ { class DigitalRadarDataGeneric::DataBlock::Impl { public: - explicit Impl(const std::string& dataBlockType, - const std::string& dataName) : - dataBlockType_ {dataBlockType}, dataName_ {dataName} + explicit Impl(std::string dataBlockType, std::string dataName) : + dataBlockType_ {std::move(dataBlockType)}, + dataName_ {std::move(dataName)} { } @@ -51,7 +47,13 @@ DigitalRadarDataGeneric::DataBlock::operator=(DataBlock&&) noexcept = default; class DigitalRadarDataGeneric::MomentDataBlock::Impl { public: - explicit Impl() {} + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; std::uint16_t numberOfDataMomentGates_ {0}; std::int16_t dataMomentRange_ {0}; @@ -89,7 +91,9 @@ DigitalRadarDataGeneric::MomentDataBlock::number_of_data_moment_gates() const units::kilometers DigitalRadarDataGeneric::MomentDataBlock::data_moment_range() const { - return units::kilometers {p->dataMomentRange_ * 0.001f}; + static constexpr float kScale_ = 0.001f; + return units::kilometers {static_cast(p->dataMomentRange_) * + kScale_}; } std::int16_t @@ -102,7 +106,9 @@ units::kilometers DigitalRadarDataGeneric::MomentDataBlock::data_moment_range_sample_interval() const { - return units::kilometers {p->dataMomentRangeSampleInterval_ * 0.001f}; + static constexpr float kScale_ = 0.001f; + return units::kilometers { + static_cast(p->dataMomentRangeSampleInterval_) * kScale_}; } std::uint16_t DigitalRadarDataGeneric::MomentDataBlock:: @@ -113,7 +119,8 @@ std::uint16_t DigitalRadarDataGeneric::MomentDataBlock:: float DigitalRadarDataGeneric::MomentDataBlock::snr_threshold() const { - return p->snrThreshold_ * 0.1f; + static constexpr float kScale_ = 0.1f; + return static_cast(p->snrThreshold_) * kScale_; } std::int16_t DigitalRadarDataGeneric::MomentDataBlock::snr_threshold_raw() const @@ -138,14 +145,14 @@ float DigitalRadarDataGeneric::MomentDataBlock::offset() const const void* DigitalRadarDataGeneric::MomentDataBlock::data_moments() const { - const void* dataMoments; + const void* dataMoments = nullptr; switch (p->dataWordSize_) { - case 8: + case 8: // NOLINT(cppcoreguidelines-avoid-magic-numbers) dataMoments = p->momentGates8_.data(); break; - case 16: + case 16: // NOLINT(cppcoreguidelines-avoid-magic-numbers) dataMoments = p->momentGates16_.data(); break; default: @@ -189,13 +196,15 @@ bool DigitalRadarDataGeneric::MomentDataBlock::Parse(std::istream& is) is.read(reinterpret_cast(&p->scale_), 4); // 20-23 is.read(reinterpret_cast(&p->offset_), 4); // 24-27 - p->numberOfDataMomentGates_ = ntohs(p->numberOfDataMomentGates_); - p->dataMomentRange_ = ntohs(p->dataMomentRange_); + p->numberOfDataMomentGates_ = ntohs(p->numberOfDataMomentGates_); + p->dataMomentRange_ = static_cast(ntohs(p->dataMomentRange_)); p->dataMomentRangeSampleInterval_ = ntohs(p->dataMomentRangeSampleInterval_); p->tover_ = ntohs(p->tover_); - p->snrThreshold_ = ntohs(p->snrThreshold_); - p->scale_ = awips::Message::SwapFloat(p->scale_); - p->offset_ = awips::Message::SwapFloat(p->offset_); + p->snrThreshold_ = static_cast(ntohs(p->snrThreshold_)); + p->scale_ = awips::Message::SwapFloat(p->scale_); + p->offset_ = awips::Message::SwapFloat(p->offset_); + + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers) if (p->numberOfDataMomentGates_ <= 1840) { @@ -209,7 +218,7 @@ bool DigitalRadarDataGeneric::MomentDataBlock::Parse(std::istream& is) { p->momentGates16_.resize(p->numberOfDataMomentGates_); is.read(reinterpret_cast(p->momentGates16_.data()), - p->numberOfDataMomentGates_ * 2); + static_cast(p->numberOfDataMomentGates_) * 2); awips::Message::SwapVector(p->momentGates16_); } else @@ -225,13 +234,21 @@ bool DigitalRadarDataGeneric::MomentDataBlock::Parse(std::istream& is) dataBlockValid = false; } + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + return dataBlockValid; } class DigitalRadarDataGeneric::VolumeDataBlock::Impl { public: - explicit Impl() {} + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; std::uint16_t lrtup_ {0}; std::uint8_t versionNumberMajor_ {0}; @@ -321,7 +338,7 @@ bool DigitalRadarDataGeneric::VolumeDataBlock::Parse(std::istream& is) p->lrtup_ = ntohs(p->lrtup_); p->latitude_ = awips::Message::SwapFloat(p->latitude_); p->longitude_ = awips::Message::SwapFloat(p->longitude_); - p->siteHeight_ = ntohs(p->siteHeight_); + p->siteHeight_ = static_cast(ntohs(p->siteHeight_)); p->feedhornHeight_ = ntohs(p->feedhornHeight_); p->calibrationConstant_ = awips::Message::SwapFloat(p->calibrationConstant_); p->horizontaShvTxPower_ = awips::Message::SwapFloat(p->horizontaShvTxPower_); @@ -333,6 +350,8 @@ bool DigitalRadarDataGeneric::VolumeDataBlock::Parse(std::istream& is) p->volumeCoveragePatternNumber_ = ntohs(p->volumeCoveragePatternNumber_); p->processingStatus_ = ntohs(p->processingStatus_); + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers) + if (p->lrtup_ >= 46) { is.read(reinterpret_cast(&p->zdrBiasEstimateWeightedMean_), @@ -345,13 +364,21 @@ bool DigitalRadarDataGeneric::VolumeDataBlock::Parse(std::istream& is) is.seekg(6, std::ios_base::cur); // 46-51 } + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + return dataBlockValid; } class DigitalRadarDataGeneric::ElevationDataBlock::Impl { public: - explicit Impl() {} + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; std::uint16_t lrtup_ {0}; std::int16_t atmos_ {0}; @@ -397,7 +424,7 @@ bool DigitalRadarDataGeneric::ElevationDataBlock::Parse(std::istream& is) is.read(reinterpret_cast(&p->calibrationConstant_), 4); // 8-11 p->lrtup_ = ntohs(p->lrtup_); - p->atmos_ = ntohs(p->atmos_); + p->atmos_ = static_cast(ntohs(p->atmos_)); p->calibrationConstant_ = awips::Message::SwapFloat(p->calibrationConstant_); return dataBlockValid; @@ -406,7 +433,13 @@ bool DigitalRadarDataGeneric::ElevationDataBlock::Parse(std::istream& is) class DigitalRadarDataGeneric::RadialDataBlock::Impl { public: - explicit Impl() {} + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; std::uint16_t lrtup_ {0}; std::uint16_t unambigiousRange_ {0}; @@ -433,7 +466,8 @@ DigitalRadarDataGeneric::RadialDataBlock::operator=( float DigitalRadarDataGeneric::RadialDataBlock::unambiguous_range() const { - return p->unambigiousRange_ / 10.0f; + static constexpr float kScale_ = 0.1f; + return static_cast(p->unambigiousRange_) * kScale_; } std::shared_ptr @@ -486,24 +520,31 @@ bool DigitalRadarDataGeneric::RadialDataBlock::Parse(std::istream& is) class DigitalRadarDataGeneric::Impl { public: - explicit Impl() {}; - ~Impl() = default; + explicit Impl() = default; + ~Impl() = default; - std::string radarIdentifier_ {}; - std::uint32_t collectionTime_ {0}; - std::uint16_t modifiedJulianDate_ {0}; - std::uint16_t azimuthNumber_ {0}; - float azimuthAngle_ {0.0f}; - std::uint8_t compressionIndicator_ {0}; - std::uint16_t radialLength_ {0}; - std::uint8_t azimuthResolutionSpacing_ {0}; - std::uint8_t radialStatus_ {0}; - std::uint8_t elevationNumber_ {0}; - std::uint8_t cutSectorNumber_ {0}; - float elevationAngle_ {0.0f}; - std::uint8_t radialSpotBlankingStatus_ {0}; - std::uint8_t azimuthIndexingMode_ {0}; - std::uint16_t dataBlockCount_ {0}; + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; + + std::string radarIdentifier_ {}; + std::uint32_t collectionTime_ {0}; + std::uint16_t modifiedJulianDate_ {0}; + std::uint16_t azimuthNumber_ {0}; + float azimuthAngle_ {0.0f}; + std::uint8_t compressionIndicator_ {0}; + std::uint16_t radialLength_ {0}; + std::uint8_t azimuthResolutionSpacing_ {0}; + std::uint8_t radialStatus_ {0}; + std::uint8_t elevationNumber_ {0}; + std::uint8_t cutSectorNumber_ {0}; + float elevationAngle_ {0.0f}; + std::uint8_t radialSpotBlankingStatus_ {0}; + std::uint8_t azimuthIndexingMode_ {0}; + std::uint16_t dataBlockCount_ {0}; + + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) std::array dataBlockPointer_ {0}; std::shared_ptr volumeDataBlock_ {nullptr}; @@ -679,6 +720,8 @@ bool DigitalRadarDataGeneric::Parse(std::istream& is) p->elevationAngle_ = SwapFloat(p->elevationAngle_); p->dataBlockCount_ = ntohs(p->dataBlockCount_); + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers) + if (p->azimuthNumber_ < 1 || p->azimuthNumber_ > 720) { logger_->warn("Invalid azimuth number: {}", p->azimuthNumber_); @@ -700,18 +743,22 @@ bool DigitalRadarDataGeneric::Parse(std::istream& is) messageValid = false; } + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + if (!messageValid) { p->dataBlockCount_ = 0; } is.read(reinterpret_cast(&p->dataBlockPointer_), - p->dataBlockCount_ * 4); + static_cast(p->dataBlockCount_) * 4); SwapArray(p->dataBlockPointer_, p->dataBlockCount_); for (uint16_t b = 0; b < p->dataBlockCount_; ++b) { + // Index already has bounds check + // NOLINTNEXTLINE(cppcoreguidelines-pro-bounds-constant-array-index) is.seekg(isBegin + std::streamoff(p->dataBlockPointer_[b]), std::ios_base::beg); @@ -784,6 +831,4 @@ DigitalRadarDataGeneric::Create(Level2MessageHeader&& header, std::istream& is) return message; } -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/source/scwx/wsr88d/rda/performance_maintenance_data.cpp b/wxdata/source/scwx/wsr88d/rda/performance_maintenance_data.cpp index fcdd19c8..647221e6 100644 --- a/wxdata/source/scwx/wsr88d/rda/performance_maintenance_data.cpp +++ b/wxdata/source/scwx/wsr88d/rda/performance_maintenance_data.cpp @@ -3,295 +3,300 @@ #include -namespace scwx -{ -namespace wsr88d -{ -namespace rda +namespace scwx::wsr88d::rda { static const std::string logPrefix_ = "scwx::wsr88d::rda::performance_maintenance_data"; static const auto logger_ = util::Logger::Create(logPrefix_); -class PerformanceMaintenanceDataImpl +class PerformanceMaintenanceData::Impl { public: - explicit PerformanceMaintenanceDataImpl() = default; - ~PerformanceMaintenanceDataImpl() = default; + explicit Impl() = default; + ~Impl() = default; + + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; // Communications - uint16_t loopBackSetStatus_ {0}; - uint32_t t1OutputFrames_ {0}; - uint32_t t1InputFrames_ {0}; - uint32_t routerMemoryUsed_ {0}; - uint32_t routerMemoryFree_ {0}; - uint16_t routerMemoryUtilization_ {0}; - uint16_t routeToRpg_ {0}; - uint16_t t1PortStatus_ {0}; - uint16_t routerDedicatedEthernetPortStatus_ {0}; - uint16_t routerCommercialEthernetPortStatus_ {0}; - uint32_t csu24HrErroredSeconds_ {0}; - uint32_t csu24HrSeverelyErroredSeconds_ {0}; - uint32_t csu24HrSeverelyErroredFramingSeconds_ {0}; - uint32_t csu24HrUnavailableSeconds_ {0}; - uint32_t csu24HrControlledSlipSeconds_ {0}; - uint32_t csu24HrPathCodingViolations_ {0}; - uint32_t csu24HrLineErroredSeconds_ {0}; - uint32_t csu24HrBurstyErroredSeconds_ {0}; - uint32_t csu24HrDegradedMinutes_ {0}; - uint32_t lanSwitchCpuUtilization_ {0}; - uint16_t lanSwitchMemoryUtilization_ {0}; - uint16_t ifdrChasisTemperature_ {0}; - uint16_t ifdrFpgaTemperature_ {0}; - uint16_t ntpStatus_ {0}; - uint16_t ipcStatus_ {0}; - uint16_t commandedChannelControl_ {0}; + std::uint16_t loopBackSetStatus_ {0}; + std::uint32_t t1OutputFrames_ {0}; + std::uint32_t t1InputFrames_ {0}; + std::uint32_t routerMemoryUsed_ {0}; + std::uint32_t routerMemoryFree_ {0}; + std::uint16_t routerMemoryUtilization_ {0}; + std::uint16_t routeToRpg_ {0}; + std::uint16_t t1PortStatus_ {0}; + std::uint16_t routerDedicatedEthernetPortStatus_ {0}; + std::uint16_t routerCommercialEthernetPortStatus_ {0}; + std::uint32_t csu24HrErroredSeconds_ {0}; + std::uint32_t csu24HrSeverelyErroredSeconds_ {0}; + std::uint32_t csu24HrSeverelyErroredFramingSeconds_ {0}; + std::uint32_t csu24HrUnavailableSeconds_ {0}; + std::uint32_t csu24HrControlledSlipSeconds_ {0}; + std::uint32_t csu24HrPathCodingViolations_ {0}; + std::uint32_t csu24HrLineErroredSeconds_ {0}; + std::uint32_t csu24HrBurstyErroredSeconds_ {0}; + std::uint32_t csu24HrDegradedMinutes_ {0}; + std::uint32_t lanSwitchCpuUtilization_ {0}; + std::uint16_t lanSwitchMemoryUtilization_ {0}; + std::uint16_t ifdrChasisTemperature_ {0}; + std::uint16_t ifdrFpgaTemperature_ {0}; + std::uint16_t ntpStatus_ {0}; + std::uint16_t ipcStatus_ {0}; + std::uint16_t commandedChannelControl_ {0}; // AME - uint16_t polarization_ {0}; - float ameInternalTemperature_ {0.0f}; - float ameReceiverModuleTemperature_ {0.0f}; - float ameBiteCalModuleTemperature_ {0.0f}; - uint16_t amePeltierPulseWidthModulation_ {0}; - uint16_t amePeltierStatus_ {0}; - uint16_t ameADConverterStatus_ {0}; - uint16_t ameState_ {0}; - float ame3_3VPsVoltage_ {0.0f}; - float ame5VPsVoltage_ {0.0f}; - float ame6_5VPsVoltage_ {0.0f}; - float ame15VPsVoltage_ {0.0f}; - float ame48VPsVoltage_ {0.0f}; - float ameStaloPower_ {0.0f}; - float peltierCurrent_ {0.0f}; - float adcCalibrationReferenceVoltage_ {0.0f}; - uint16_t ameMode_ {0}; - uint16_t amePeltierMode_ {0}; - float amePeltierInsideFanCurrent_ {0.0f}; - float amePeltierOutsideFanCurrent_ {0.0f}; - float horizontalTrLimiterVoltage_ {0.0f}; - float verticalTrLimiterVoltage_ {0.0f}; - float adcCalibrationOffsetVoltage_ {0.0f}; - float adcCalibrationGainCorrection_ {0.0f}; + std::uint16_t polarization_ {0}; + float ameInternalTemperature_ {0.0f}; + float ameReceiverModuleTemperature_ {0.0f}; + float ameBiteCalModuleTemperature_ {0.0f}; + std::uint16_t amePeltierPulseWidthModulation_ {0}; + std::uint16_t amePeltierStatus_ {0}; + std::uint16_t ameADConverterStatus_ {0}; + std::uint16_t ameState_ {0}; + float ame3_3VPsVoltage_ {0.0f}; + float ame5VPsVoltage_ {0.0f}; + float ame6_5VPsVoltage_ {0.0f}; + float ame15VPsVoltage_ {0.0f}; + float ame48VPsVoltage_ {0.0f}; + float ameStaloPower_ {0.0f}; + float peltierCurrent_ {0.0f}; + float adcCalibrationReferenceVoltage_ {0.0f}; + std::uint16_t ameMode_ {0}; + std::uint16_t amePeltierMode_ {0}; + float amePeltierInsideFanCurrent_ {0.0f}; + float amePeltierOutsideFanCurrent_ {0.0f}; + float horizontalTrLimiterVoltage_ {0.0f}; + float verticalTrLimiterVoltage_ {0.0f}; + float adcCalibrationOffsetVoltage_ {0.0f}; + float adcCalibrationGainCorrection_ {0.0f}; // RCP/SPIP Power Button Status - uint16_t rcpStatus_ {0}; - std::string rcpString_ {}; - uint16_t spipPowerButtons_ {0}; + std::uint16_t rcpStatus_ {0}; + std::string rcpString_ {}; + std::uint16_t spipPowerButtons_ {0}; // Power float masterPowerAdministratorLoad_ {0.0f}; float expansionPowerAdministratorLoad_ {0.0f}; // Transmitter - uint16_t _5VdcPs_ {0}; - uint16_t _15VdcPs_ {0}; - uint16_t _28VdcPs_ {0}; - uint16_t neg15VdcPs_ {0}; - uint16_t _45VdcPs_ {0}; - uint16_t filamentPsVoltage_ {0}; - uint16_t vacuumPumpPsVoltage_ {0}; - uint16_t focusCoilPsVoltage_ {0}; - uint16_t filamentPs_ {0}; - uint16_t klystronWarmup_ {0}; - uint16_t transmitterAvailable_ {0}; - uint16_t wgSwitchPosition_ {0}; - uint16_t wgPfnTransferInterlock_ {0}; - uint16_t maintenanceMode_ {0}; - uint16_t maintenanceRequired_ {0}; - uint16_t pfnSwitchPosition_ {0}; - uint16_t modulatorOverload_ {0}; - uint16_t modulatorInvCurrent_ {0}; - uint16_t modulatorSwitchFail_ {0}; - uint16_t mainPowerVoltage_ {0}; - uint16_t chargingSystemFail_ {0}; - uint16_t inverseDiodeCurrent_ {0}; - uint16_t triggerAmplifier_ {0}; - uint16_t circulatorTemperature_ {0}; - uint16_t spectrumFilterPressure_ {0}; - uint16_t wgArcVswr_ {0}; - uint16_t cabinetInterlock_ {0}; - uint16_t cabinetAirTemperature_ {0}; - uint16_t cabinetAirflow_ {0}; - uint16_t klystronCurrent_ {0}; - uint16_t klystronFilamentCurrent_ {0}; - uint16_t klystronVacionCurrent_ {0}; - uint16_t klystronAirTemperature_ {0}; - uint16_t klystronAirflow_ {0}; - uint16_t modulatorSwitchMaintenance_ {0}; - uint16_t postChargeRegulatorMaintenance_ {0}; - uint16_t wgPressureHumidity_ {0}; - uint16_t transmitterOvervoltage_ {0}; - uint16_t transmitterOvercurrent_ {0}; - uint16_t focusCoilCurrent_ {0}; - uint16_t focusCoilAirflow_ {0}; - uint16_t oilTemperature_ {0}; - uint16_t prfLimit_ {0}; - uint16_t transmitterOilLevel_ {0}; - uint16_t transmitterBatteryCharging_ {0}; - uint16_t highVoltageStatus_ {0}; - uint16_t transmitterRecyclingSummary_ {0}; - uint16_t transmitterInoperable_ {0}; - uint16_t transmitterAirFilter_ {0}; - std::array zeroTestBit_ {0}; - std::array oneTestBit_ {0}; - uint16_t xmtrSpipInterface_ {0}; - uint16_t transmitterSummaryStatus_ {0}; - float transmitterRfPower_ {0.0f}; - float horizontalXmtrPeakPower_ {0.0f}; - float xmtrPeakPower_ {0.0f}; - float verticalXmtrPeakPower_ {0.0f}; - float xmtrRfAvgPower_ {0.0f}; - uint32_t xmtrRecycleCount_ {0}; - float receiverBias_ {0.0f}; - float transmitImbalance_ {0.0f}; - float xmtrPowerMeterZero_ {0.0f}; + std::uint16_t _5VdcPs_ {0}; + std::uint16_t _15VdcPs_ {0}; + std::uint16_t _28VdcPs_ {0}; + std::uint16_t neg15VdcPs_ {0}; + std::uint16_t _45VdcPs_ {0}; + std::uint16_t filamentPsVoltage_ {0}; + std::uint16_t vacuumPumpPsVoltage_ {0}; + std::uint16_t focusCoilPsVoltage_ {0}; + std::uint16_t filamentPs_ {0}; + std::uint16_t klystronWarmup_ {0}; + std::uint16_t transmitterAvailable_ {0}; + std::uint16_t wgSwitchPosition_ {0}; + std::uint16_t wgPfnTransferInterlock_ {0}; + std::uint16_t maintenanceMode_ {0}; + std::uint16_t maintenanceRequired_ {0}; + std::uint16_t pfnSwitchPosition_ {0}; + std::uint16_t modulatorOverload_ {0}; + std::uint16_t modulatorInvCurrent_ {0}; + std::uint16_t modulatorSwitchFail_ {0}; + std::uint16_t mainPowerVoltage_ {0}; + std::uint16_t chargingSystemFail_ {0}; + std::uint16_t inverseDiodeCurrent_ {0}; + std::uint16_t triggerAmplifier_ {0}; + std::uint16_t circulatorTemperature_ {0}; + std::uint16_t spectrumFilterPressure_ {0}; + std::uint16_t wgArcVswr_ {0}; + std::uint16_t cabinetInterlock_ {0}; + std::uint16_t cabinetAirTemperature_ {0}; + std::uint16_t cabinetAirflow_ {0}; + std::uint16_t klystronCurrent_ {0}; + std::uint16_t klystronFilamentCurrent_ {0}; + std::uint16_t klystronVacionCurrent_ {0}; + std::uint16_t klystronAirTemperature_ {0}; + std::uint16_t klystronAirflow_ {0}; + std::uint16_t modulatorSwitchMaintenance_ {0}; + std::uint16_t postChargeRegulatorMaintenance_ {0}; + std::uint16_t wgPressureHumidity_ {0}; + std::uint16_t transmitterOvervoltage_ {0}; + std::uint16_t transmitterOvercurrent_ {0}; + std::uint16_t focusCoilCurrent_ {0}; + std::uint16_t focusCoilAirflow_ {0}; + std::uint16_t oilTemperature_ {0}; + std::uint16_t prfLimit_ {0}; + std::uint16_t transmitterOilLevel_ {0}; + std::uint16_t transmitterBatteryCharging_ {0}; + std::uint16_t highVoltageStatus_ {0}; + std::uint16_t transmitterRecyclingSummary_ {0}; + std::uint16_t transmitterInoperable_ {0}; + std::uint16_t transmitterAirFilter_ {0}; + + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers) + std::array zeroTestBit_ {0}; + std::array oneTestBit_ {0}; + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + + std::uint16_t xmtrSpipInterface_ {0}; + std::uint16_t transmitterSummaryStatus_ {0}; + float transmitterRfPower_ {0.0f}; + float horizontalXmtrPeakPower_ {0.0f}; + float xmtrPeakPower_ {0.0f}; + float verticalXmtrPeakPower_ {0.0f}; + float xmtrRfAvgPower_ {0.0f}; + std::uint32_t xmtrRecycleCount_ {0}; + float receiverBias_ {0.0f}; + float transmitImbalance_ {0.0f}; + float xmtrPowerMeterZero_ {0.0f}; // Tower/Utilities - uint16_t acUnit1CompressorShutOff_ {0}; - uint16_t acUnit2CompressorShutOff_ {0}; - uint16_t generatorMaintenanceRequired_ {0}; - uint16_t generatorBatteryVoltage_ {0}; - uint16_t generatorEngine_ {0}; - uint16_t generatorVoltFrequency_ {0}; - uint16_t powerSource_ {0}; - uint16_t transitionalPowerSource_ {0}; - uint16_t generatorAutoRunOffSwitch_ {0}; - uint16_t aircraftHazardLighting_ {0}; + std::uint16_t acUnit1CompressorShutOff_ {0}; + std::uint16_t acUnit2CompressorShutOff_ {0}; + std::uint16_t generatorMaintenanceRequired_ {0}; + std::uint16_t generatorBatteryVoltage_ {0}; + std::uint16_t generatorEngine_ {0}; + std::uint16_t generatorVoltFrequency_ {0}; + std::uint16_t powerSource_ {0}; + std::uint16_t transitionalPowerSource_ {0}; + std::uint16_t generatorAutoRunOffSwitch_ {0}; + std::uint16_t aircraftHazardLighting_ {0}; // Equipment Shelter - uint16_t equipmentShelterFireDetectionSystem_ {0}; - uint16_t equipmentShelterFireSmoke_ {0}; - uint16_t generatorShelterFireSmoke_ {0}; - uint16_t utilityVoltageFrequency_ {0}; - uint16_t siteSecurityAlarm_ {0}; - uint16_t securityEquipment_ {0}; - uint16_t securitySystem_ {0}; - uint16_t receiverConnectedToAntenna_ {0}; - uint16_t radomeHatch_ {0}; - uint16_t acUnit1FilterDirty_ {0}; - uint16_t acUnit2FilterDirty_ {0}; - float equipmentShelterTemperature_ {0.0f}; - float outsideAmbientTemperature_ {0.0f}; - float transmitterLeavingAirTemp_ {0.0f}; - float acUnit1DischargeAirTemp_ {0.0f}; - float generatorShelterTemperature_ {0.0f}; - float radomeAirTemperature_ {0.0f}; - float acUnit2DischargeAirTemp_ {0.0f}; - float spip15VPs_ {0.0f}; - float spipNeg15VPs_ {0.0f}; - uint16_t spip28VPsStatus_ {0}; - float spip5VPs_ {0.0f}; - uint16_t convertedGeneratorFuelLevel_ {0}; + std::uint16_t equipmentShelterFireDetectionSystem_ {0}; + std::uint16_t equipmentShelterFireSmoke_ {0}; + std::uint16_t generatorShelterFireSmoke_ {0}; + std::uint16_t utilityVoltageFrequency_ {0}; + std::uint16_t siteSecurityAlarm_ {0}; + std::uint16_t securityEquipment_ {0}; + std::uint16_t securitySystem_ {0}; + std::uint16_t receiverConnectedToAntenna_ {0}; + std::uint16_t radomeHatch_ {0}; + std::uint16_t acUnit1FilterDirty_ {0}; + std::uint16_t acUnit2FilterDirty_ {0}; + float equipmentShelterTemperature_ {0.0f}; + float outsideAmbientTemperature_ {0.0f}; + float transmitterLeavingAirTemp_ {0.0f}; + float acUnit1DischargeAirTemp_ {0.0f}; + float generatorShelterTemperature_ {0.0f}; + float radomeAirTemperature_ {0.0f}; + float acUnit2DischargeAirTemp_ {0.0f}; + float spip15VPs_ {0.0f}; + float spipNeg15VPs_ {0.0f}; + std::uint16_t spip28VPsStatus_ {0}; + float spip5VPs_ {0.0f}; + std::uint16_t convertedGeneratorFuelLevel_ {0}; // Antenna/Pedestal - uint16_t elevationPosDeadLimit_ {0}; - uint16_t _150VOvervoltage_ {0}; - uint16_t _150VUndervoltage_ {0}; - uint16_t elevationServoAmpInhibit_ {0}; - uint16_t elevationServoAmpShortCircuit_ {0}; - uint16_t elevationServoAmpOvertemp_ {0}; - uint16_t elevationMotorOvertemp_ {0}; - uint16_t elevationStowPin_ {0}; - uint16_t elevationHousing5VPs_ {0}; - uint16_t elevationNegDeadLimit_ {0}; - uint16_t elevationPosNormalLimit_ {0}; - uint16_t elevationNegNormalLimit_ {0}; - uint16_t elevationEncoderLight_ {0}; - uint16_t elevationGearboxOil_ {0}; - uint16_t elevationHandwheel_ {0}; - uint16_t elevationAmpPs_ {0}; - uint16_t azimuthServoAmpInhibit_ {0}; - uint16_t azimuthServoAmpShortCircuit_ {0}; - uint16_t azimuthServoAmpOvertemp_ {0}; - uint16_t azimuthMotorOvertemp_ {0}; - uint16_t azimuthStowPin_ {0}; - uint16_t azimuthHousing5VPs_ {0}; - uint16_t azimuthEncoderLight_ {0}; - uint16_t azimuthGearboxOil_ {0}; - uint16_t azimuthBullGearOil_ {0}; - uint16_t azimuthHandwheel_ {0}; - uint16_t azimuthServoAmpPs_ {0}; - uint16_t servo_ {0}; - uint16_t pedestalInterlockSwitch_ {0}; + std::uint16_t elevationPosDeadLimit_ {0}; + std::uint16_t _150VOvervoltage_ {0}; + std::uint16_t _150VUndervoltage_ {0}; + std::uint16_t elevationServoAmpInhibit_ {0}; + std::uint16_t elevationServoAmpShortCircuit_ {0}; + std::uint16_t elevationServoAmpOvertemp_ {0}; + std::uint16_t elevationMotorOvertemp_ {0}; + std::uint16_t elevationStowPin_ {0}; + std::uint16_t elevationHousing5VPs_ {0}; + std::uint16_t elevationNegDeadLimit_ {0}; + std::uint16_t elevationPosNormalLimit_ {0}; + std::uint16_t elevationNegNormalLimit_ {0}; + std::uint16_t elevationEncoderLight_ {0}; + std::uint16_t elevationGearboxOil_ {0}; + std::uint16_t elevationHandwheel_ {0}; + std::uint16_t elevationAmpPs_ {0}; + std::uint16_t azimuthServoAmpInhibit_ {0}; + std::uint16_t azimuthServoAmpShortCircuit_ {0}; + std::uint16_t azimuthServoAmpOvertemp_ {0}; + std::uint16_t azimuthMotorOvertemp_ {0}; + std::uint16_t azimuthStowPin_ {0}; + std::uint16_t azimuthHousing5VPs_ {0}; + std::uint16_t azimuthEncoderLight_ {0}; + std::uint16_t azimuthGearboxOil_ {0}; + std::uint16_t azimuthBullGearOil_ {0}; + std::uint16_t azimuthHandwheel_ {0}; + std::uint16_t azimuthServoAmpPs_ {0}; + std::uint16_t servo_ {0}; + std::uint16_t pedestalInterlockSwitch_ {0}; // RF Generator/Receiver - uint16_t cohoClock_ {0}; - uint16_t rfGeneratorFrequencySelectOscillator_ {0}; - uint16_t rfGeneratorRfStalo_ {0}; - uint16_t rfGeneratorPhaseShiftedCoho_ {0}; - uint16_t _9VReceiverPs_ {0}; - uint16_t _5VReceiverPs_ {0}; - uint16_t _18VReceiverPs_ {0}; - uint16_t neg9VReceiverPs_ {0}; - uint16_t _5VSingleChannelRdaiuPs_ {0}; - float horizontalShortPulseNoise_ {0.0f}; - float horizontalLongPulseNoise_ {0.0f}; - float horizontalNoiseTemperature_ {0.0f}; - float verticalShortPulseNoise_ {0.0f}; - float verticalLongPulseNoise_ {0.0f}; - float verticalNoiseTemperature_ {0.0f}; + std::uint16_t cohoClock_ {0}; + std::uint16_t rfGeneratorFrequencySelectOscillator_ {0}; + std::uint16_t rfGeneratorRfStalo_ {0}; + std::uint16_t rfGeneratorPhaseShiftedCoho_ {0}; + std::uint16_t _9VReceiverPs_ {0}; + std::uint16_t _5VReceiverPs_ {0}; + std::uint16_t _18VReceiverPs_ {0}; + std::uint16_t neg9VReceiverPs_ {0}; + std::uint16_t _5VSingleChannelRdaiuPs_ {0}; + float horizontalShortPulseNoise_ {0.0f}; + float horizontalLongPulseNoise_ {0.0f}; + float horizontalNoiseTemperature_ {0.0f}; + float verticalShortPulseNoise_ {0.0f}; + float verticalLongPulseNoise_ {0.0f}; + float verticalNoiseTemperature_ {0.0f}; // Calibration - float horizontalLinearity_ {0.0f}; - float horizontalDynamicRange_ {0.0f}; - float horizontalDeltaDbz0_ {0.0f}; - float verticalDeltaDbz0_ {0.0f}; - float kdPeakMeasured_ {0.0f}; - float shortPulseHorizontalDbz0_ {0.0f}; - float longPulseHorizontalDbz0_ {0.0f}; - uint16_t velocityProcessed_ {0}; - uint16_t widthProcessed_ {0}; - uint16_t velocityRfGen_ {0}; - uint16_t widthRfGen_ {0}; - float horizontalI0_ {0.0f}; - float verticalI0_ {0.0f}; - float verticalDynamicRange_ {0.0f}; - float shortPulseVerticalDbz0_ {0.0f}; - float longPulseVerticalDbz0_ {0.0f}; - float horizontalPowerSense_ {0.0f}; - float verticalPowerSense_ {0.0f}; - float zdrOffset_ {0.0f}; - float clutterSuppressionDelta_ {0.0f}; - float clutterSuppressionUnfilteredPower_ {0.0f}; - float clutterSuppressionFilteredPower_ {0.0f}; - float verticalLinearity_ {0.0f}; + float horizontalLinearity_ {0.0f}; + float horizontalDynamicRange_ {0.0f}; + float horizontalDeltaDbz0_ {0.0f}; + float verticalDeltaDbz0_ {0.0f}; + float kdPeakMeasured_ {0.0f}; + float shortPulseHorizontalDbz0_ {0.0f}; + float longPulseHorizontalDbz0_ {0.0f}; + std::uint16_t velocityProcessed_ {0}; + std::uint16_t widthProcessed_ {0}; + std::uint16_t velocityRfGen_ {0}; + std::uint16_t widthRfGen_ {0}; + float horizontalI0_ {0.0f}; + float verticalI0_ {0.0f}; + float verticalDynamicRange_ {0.0f}; + float shortPulseVerticalDbz0_ {0.0f}; + float longPulseVerticalDbz0_ {0.0f}; + float horizontalPowerSense_ {0.0f}; + float verticalPowerSense_ {0.0f}; + float zdrOffset_ {0.0f}; + float clutterSuppressionDelta_ {0.0f}; + float clutterSuppressionUnfilteredPower_ {0.0f}; + float clutterSuppressionFilteredPower_ {0.0f}; + float verticalLinearity_ {0.0f}; // File Status - uint16_t stateFileReadStatus_ {0}; - uint16_t stateFileWriteStatus_ {0}; - uint16_t bypassMapFileReadStatus_ {0}; - uint16_t bypassMapFileWriteStatus_ {0}; - uint16_t currentAdaptationFileReadStatus_ {0}; - uint16_t currentAdaptationFileWriteStatus_ {0}; - uint16_t censorZoneFileReadStatus_ {0}; - uint16_t censorZoneFileWriteStatus_ {0}; - uint16_t remoteVcpFileReadStatus_ {0}; - uint16_t remoteVcpFileWriteStatus_ {0}; - uint16_t baselineAdaptationFileReadStatus_ {0}; - uint16_t readStatusOfPrfSets_ {0}; - uint16_t clutterFilterMapFileReadStatus_ {0}; - uint16_t clutterFilterMapFileWriteStatus_ {0}; - uint16_t generalDiskIoError_ {0}; - uint8_t rspStatus_ {0}; - uint8_t cpu1Temperature_ {0}; - uint8_t cpu2Temperature_ {0}; - uint16_t rspMotherboardPower_ {0}; + std::uint16_t stateFileReadStatus_ {0}; + std::uint16_t stateFileWriteStatus_ {0}; + std::uint16_t bypassMapFileReadStatus_ {0}; + std::uint16_t bypassMapFileWriteStatus_ {0}; + std::uint16_t currentAdaptationFileReadStatus_ {0}; + std::uint16_t currentAdaptationFileWriteStatus_ {0}; + std::uint16_t censorZoneFileReadStatus_ {0}; + std::uint16_t censorZoneFileWriteStatus_ {0}; + std::uint16_t remoteVcpFileReadStatus_ {0}; + std::uint16_t remoteVcpFileWriteStatus_ {0}; + std::uint16_t baselineAdaptationFileReadStatus_ {0}; + std::uint16_t readStatusOfPrfSets_ {0}; + std::uint16_t clutterFilterMapFileReadStatus_ {0}; + std::uint16_t clutterFilterMapFileWriteStatus_ {0}; + std::uint16_t generalDiskIoError_ {0}; + std::uint8_t rspStatus_ {0}; + std::uint8_t cpu1Temperature_ {0}; + std::uint8_t cpu2Temperature_ {0}; + std::uint16_t rspMotherboardPower_ {0}; // Device Status - uint16_t spipCommStatus_ {0}; - uint16_t hciCommStatus_ {0}; - uint16_t signalProcessorCommandStatus_ {0}; - uint16_t ameCommunicationStatus_ {0}; - uint16_t rmsLinkStatus_ {0}; - uint16_t rpgLinkStatus_ {0}; - uint16_t interpanelLinkStatus_ {0}; - uint32_t performanceCheckTime_ {0}; - uint16_t version_ {0}; + std::uint16_t spipCommStatus_ {0}; + std::uint16_t hciCommStatus_ {0}; + std::uint16_t signalProcessorCommandStatus_ {0}; + std::uint16_t ameCommunicationStatus_ {0}; + std::uint16_t rmsLinkStatus_ {0}; + std::uint16_t rpgLinkStatus_ {0}; + std::uint16_t interpanelLinkStatus_ {0}; + std::uint32_t performanceCheckTime_ {0}; + std::uint16_t version_ {0}; }; PerformanceMaintenanceData::PerformanceMaintenanceData() : - Level2Message(), p(std::make_unique()) + Level2Message(), p(std::make_unique()) { } PerformanceMaintenanceData::~PerformanceMaintenanceData() = default; @@ -301,140 +306,144 @@ PerformanceMaintenanceData::PerformanceMaintenanceData( PerformanceMaintenanceData& PerformanceMaintenanceData::operator=( PerformanceMaintenanceData&&) noexcept = default; -uint16_t PerformanceMaintenanceData::loop_back_set_status() const +std::uint16_t PerformanceMaintenanceData::loop_back_set_status() const { return p->loopBackSetStatus_; } -uint32_t PerformanceMaintenanceData::t1_output_frames() const +std::uint32_t PerformanceMaintenanceData::t1_output_frames() const { return p->t1OutputFrames_; } -uint32_t PerformanceMaintenanceData::t1_input_frames() const +std::uint32_t PerformanceMaintenanceData::t1_input_frames() const { return p->t1InputFrames_; } -uint32_t PerformanceMaintenanceData::router_memory_used() const +std::uint32_t PerformanceMaintenanceData::router_memory_used() const { return p->routerMemoryUsed_; } -uint32_t PerformanceMaintenanceData::router_memory_free() const +std::uint32_t PerformanceMaintenanceData::router_memory_free() const { return p->routerMemoryFree_; } -uint16_t PerformanceMaintenanceData::router_memory_utilization() const +std::uint16_t PerformanceMaintenanceData::router_memory_utilization() const { return p->routerMemoryUtilization_; } -uint16_t PerformanceMaintenanceData::route_to_rpg() const +std::uint16_t PerformanceMaintenanceData::route_to_rpg() const { return p->routeToRpg_; } -uint16_t PerformanceMaintenanceData::t1_port_status() const +std::uint16_t PerformanceMaintenanceData::t1_port_status() const { return p->t1PortStatus_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::router_dedicated_ethernet_port_status() const { return p->routerDedicatedEthernetPortStatus_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::router_commercial_ethernet_port_status() const { return p->routerCommercialEthernetPortStatus_; } -uint32_t PerformanceMaintenanceData::csu_24hr_errored_seconds() const +std::uint32_t PerformanceMaintenanceData::csu_24hr_errored_seconds() const { return p->csu24HrErroredSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_severely_errored_seconds() const +std::uint32_t +PerformanceMaintenanceData::csu_24hr_severely_errored_seconds() const { return p->csu24HrSeverelyErroredSeconds_; } -uint32_t +std::uint32_t PerformanceMaintenanceData::csu_24hr_severely_errored_framing_seconds() const { return p->csu24HrSeverelyErroredFramingSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_unavailable_seconds() const +std::uint32_t PerformanceMaintenanceData::csu_24hr_unavailable_seconds() const { return p->csu24HrUnavailableSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_controlled_slip_seconds() const +std::uint32_t +PerformanceMaintenanceData::csu_24hr_controlled_slip_seconds() const { return p->csu24HrControlledSlipSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_path_coding_violations() const +std::uint32_t +PerformanceMaintenanceData::csu_24hr_path_coding_violations() const { return p->csu24HrPathCodingViolations_; } -uint32_t PerformanceMaintenanceData::csu_24hr_line_errored_seconds() const +std::uint32_t PerformanceMaintenanceData::csu_24hr_line_errored_seconds() const { return p->csu24HrLineErroredSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_bursty_errored_seconds() const +std::uint32_t +PerformanceMaintenanceData::csu_24hr_bursty_errored_seconds() const { return p->csu24HrBurstyErroredSeconds_; } -uint32_t PerformanceMaintenanceData::csu_24hr_degraded_minutes() const +std::uint32_t PerformanceMaintenanceData::csu_24hr_degraded_minutes() const { return p->csu24HrDegradedMinutes_; } -uint32_t PerformanceMaintenanceData::lan_switch_cpu_utilization() const +std::uint32_t PerformanceMaintenanceData::lan_switch_cpu_utilization() const { return p->lanSwitchCpuUtilization_; } -uint16_t PerformanceMaintenanceData::lan_switch_memory_utilization() const +std::uint16_t PerformanceMaintenanceData::lan_switch_memory_utilization() const { return p->lanSwitchMemoryUtilization_; } -uint16_t PerformanceMaintenanceData::ifdr_chasis_temperature() const +std::uint16_t PerformanceMaintenanceData::ifdr_chasis_temperature() const { return p->ifdrChasisTemperature_; } -uint16_t PerformanceMaintenanceData::ifdr_fpga_temperature() const +std::uint16_t PerformanceMaintenanceData::ifdr_fpga_temperature() const { return p->ifdrFpgaTemperature_; } -uint16_t PerformanceMaintenanceData::ntp_status() const +std::uint16_t PerformanceMaintenanceData::ntp_status() const { return p->ntpStatus_; } -uint16_t PerformanceMaintenanceData::ipc_status() const +std::uint16_t PerformanceMaintenanceData::ipc_status() const { return p->ipcStatus_; } -uint16_t PerformanceMaintenanceData::commanded_channel_control() const +std::uint16_t PerformanceMaintenanceData::commanded_channel_control() const { return p->commandedChannelControl_; } -uint16_t PerformanceMaintenanceData::polarization() const +std::uint16_t PerformanceMaintenanceData::polarization() const { return p->polarization_; } @@ -454,22 +463,23 @@ float PerformanceMaintenanceData::ame_bite_cal_module_temperature() const return p->ameBiteCalModuleTemperature_; } -uint16_t PerformanceMaintenanceData::ame_peltier_pulse_width_modulation() const +std::uint16_t +PerformanceMaintenanceData::ame_peltier_pulse_width_modulation() const { return p->amePeltierPulseWidthModulation_; } -uint16_t PerformanceMaintenanceData::ame_peltier_status() const +std::uint16_t PerformanceMaintenanceData::ame_peltier_status() const { return p->amePeltierStatus_; } -uint16_t PerformanceMaintenanceData::ame_a_d_converter_status() const +std::uint16_t PerformanceMaintenanceData::ame_a_d_converter_status() const { return p->ameADConverterStatus_; } -uint16_t PerformanceMaintenanceData::ame_state() const +std::uint16_t PerformanceMaintenanceData::ame_state() const { return p->ameState_; } @@ -514,12 +524,12 @@ float PerformanceMaintenanceData::adc_calibration_reference_voltage() const return p->adcCalibrationReferenceVoltage_; } -uint16_t PerformanceMaintenanceData::ame_mode() const +std::uint16_t PerformanceMaintenanceData::ame_mode() const { return p->ameMode_; } -uint16_t PerformanceMaintenanceData::ame_peltier_mode() const +std::uint16_t PerformanceMaintenanceData::ame_peltier_mode() const { return p->amePeltierMode_; } @@ -554,7 +564,7 @@ float PerformanceMaintenanceData::adc_calibration_gain_correction() const return p->adcCalibrationGainCorrection_; } -uint16_t PerformanceMaintenanceData::rcp_status() const +std::uint16_t PerformanceMaintenanceData::rcp_status() const { return p->rcpStatus_; } @@ -564,7 +574,7 @@ std::string PerformanceMaintenanceData::rcp_string() const return p->rcpString_; } -uint16_t PerformanceMaintenanceData::spip_power_buttons() const +std::uint16_t PerformanceMaintenanceData::spip_power_buttons() const { return p->spipPowerButtons_; } @@ -579,267 +589,268 @@ float PerformanceMaintenanceData::expansion_power_administrator_load() const return p->expansionPowerAdministratorLoad_; } -uint16_t PerformanceMaintenanceData::_5vdc_ps() const +std::uint16_t PerformanceMaintenanceData::_5vdc_ps() const { return p->_5VdcPs_; } -uint16_t PerformanceMaintenanceData::_15vdc_ps() const +std::uint16_t PerformanceMaintenanceData::_15vdc_ps() const { return p->_15VdcPs_; } -uint16_t PerformanceMaintenanceData::_28vdc_ps() const +std::uint16_t PerformanceMaintenanceData::_28vdc_ps() const { return p->_28VdcPs_; } -uint16_t PerformanceMaintenanceData::neg_15vdc_ps() const +std::uint16_t PerformanceMaintenanceData::neg_15vdc_ps() const { return p->neg15VdcPs_; } -uint16_t PerformanceMaintenanceData::_45vdc_ps() const +std::uint16_t PerformanceMaintenanceData::_45vdc_ps() const { return p->_45VdcPs_; } -uint16_t PerformanceMaintenanceData::filament_ps_voltage() const +std::uint16_t PerformanceMaintenanceData::filament_ps_voltage() const { return p->filamentPsVoltage_; } -uint16_t PerformanceMaintenanceData::vacuum_pump_ps_voltage() const +std::uint16_t PerformanceMaintenanceData::vacuum_pump_ps_voltage() const { return p->vacuumPumpPsVoltage_; } -uint16_t PerformanceMaintenanceData::focus_coil_ps_voltage() const +std::uint16_t PerformanceMaintenanceData::focus_coil_ps_voltage() const { return p->focusCoilPsVoltage_; } -uint16_t PerformanceMaintenanceData::filament_ps() const +std::uint16_t PerformanceMaintenanceData::filament_ps() const { return p->filamentPs_; } -uint16_t PerformanceMaintenanceData::klystron_warmup() const +std::uint16_t PerformanceMaintenanceData::klystron_warmup() const { return p->klystronWarmup_; } -uint16_t PerformanceMaintenanceData::transmitter_available() const +std::uint16_t PerformanceMaintenanceData::transmitter_available() const { return p->transmitterAvailable_; } -uint16_t PerformanceMaintenanceData::wg_switch_position() const +std::uint16_t PerformanceMaintenanceData::wg_switch_position() const { return p->wgSwitchPosition_; } -uint16_t PerformanceMaintenanceData::wg_pfn_transfer_interlock() const +std::uint16_t PerformanceMaintenanceData::wg_pfn_transfer_interlock() const { return p->wgPfnTransferInterlock_; } -uint16_t PerformanceMaintenanceData::maintenance_mode() const +std::uint16_t PerformanceMaintenanceData::maintenance_mode() const { return p->maintenanceMode_; } -uint16_t PerformanceMaintenanceData::maintenance_required() const +std::uint16_t PerformanceMaintenanceData::maintenance_required() const { return p->maintenanceRequired_; } -uint16_t PerformanceMaintenanceData::pfn_switch_position() const +std::uint16_t PerformanceMaintenanceData::pfn_switch_position() const { return p->pfnSwitchPosition_; } -uint16_t PerformanceMaintenanceData::modulator_overload() const +std::uint16_t PerformanceMaintenanceData::modulator_overload() const { return p->modulatorOverload_; } -uint16_t PerformanceMaintenanceData::modulator_inv_current() const +std::uint16_t PerformanceMaintenanceData::modulator_inv_current() const { return p->modulatorInvCurrent_; } -uint16_t PerformanceMaintenanceData::modulator_switch_fail() const +std::uint16_t PerformanceMaintenanceData::modulator_switch_fail() const { return p->modulatorSwitchFail_; } -uint16_t PerformanceMaintenanceData::main_power_voltage() const +std::uint16_t PerformanceMaintenanceData::main_power_voltage() const { return p->mainPowerVoltage_; } -uint16_t PerformanceMaintenanceData::charging_system_fail() const +std::uint16_t PerformanceMaintenanceData::charging_system_fail() const { return p->chargingSystemFail_; } -uint16_t PerformanceMaintenanceData::inverse_diode_current() const +std::uint16_t PerformanceMaintenanceData::inverse_diode_current() const { return p->inverseDiodeCurrent_; } -uint16_t PerformanceMaintenanceData::trigger_amplifier() const +std::uint16_t PerformanceMaintenanceData::trigger_amplifier() const { return p->triggerAmplifier_; } -uint16_t PerformanceMaintenanceData::circulator_temperature() const +std::uint16_t PerformanceMaintenanceData::circulator_temperature() const { return p->circulatorTemperature_; } -uint16_t PerformanceMaintenanceData::spectrum_filter_pressure() const +std::uint16_t PerformanceMaintenanceData::spectrum_filter_pressure() const { return p->spectrumFilterPressure_; } -uint16_t PerformanceMaintenanceData::wg_arc_vswr() const +std::uint16_t PerformanceMaintenanceData::wg_arc_vswr() const { return p->wgArcVswr_; } -uint16_t PerformanceMaintenanceData::cabinet_interlock() const +std::uint16_t PerformanceMaintenanceData::cabinet_interlock() const { return p->cabinetInterlock_; } -uint16_t PerformanceMaintenanceData::cabinet_air_temperature() const +std::uint16_t PerformanceMaintenanceData::cabinet_air_temperature() const { return p->cabinetAirTemperature_; } -uint16_t PerformanceMaintenanceData::cabinet_airflow() const +std::uint16_t PerformanceMaintenanceData::cabinet_airflow() const { return p->cabinetAirflow_; } -uint16_t PerformanceMaintenanceData::klystron_current() const +std::uint16_t PerformanceMaintenanceData::klystron_current() const { return p->klystronCurrent_; } -uint16_t PerformanceMaintenanceData::klystron_filament_current() const +std::uint16_t PerformanceMaintenanceData::klystron_filament_current() const { return p->klystronFilamentCurrent_; } -uint16_t PerformanceMaintenanceData::klystron_vacion_current() const +std::uint16_t PerformanceMaintenanceData::klystron_vacion_current() const { return p->klystronVacionCurrent_; } -uint16_t PerformanceMaintenanceData::klystron_air_temperature() const +std::uint16_t PerformanceMaintenanceData::klystron_air_temperature() const { return p->klystronAirTemperature_; } -uint16_t PerformanceMaintenanceData::klystron_airflow() const +std::uint16_t PerformanceMaintenanceData::klystron_airflow() const { return p->klystronAirflow_; } -uint16_t PerformanceMaintenanceData::modulator_switch_maintenance() const +std::uint16_t PerformanceMaintenanceData::modulator_switch_maintenance() const { return p->modulatorSwitchMaintenance_; } -uint16_t PerformanceMaintenanceData::post_charge_regulator_maintenance() const +std::uint16_t +PerformanceMaintenanceData::post_charge_regulator_maintenance() const { return p->postChargeRegulatorMaintenance_; } -uint16_t PerformanceMaintenanceData::wg_pressure_humidity() const +std::uint16_t PerformanceMaintenanceData::wg_pressure_humidity() const { return p->wgPressureHumidity_; } -uint16_t PerformanceMaintenanceData::transmitter_overvoltage() const +std::uint16_t PerformanceMaintenanceData::transmitter_overvoltage() const { return p->transmitterOvervoltage_; } -uint16_t PerformanceMaintenanceData::transmitter_overcurrent() const +std::uint16_t PerformanceMaintenanceData::transmitter_overcurrent() const { return p->transmitterOvercurrent_; } -uint16_t PerformanceMaintenanceData::focus_coil_current() const +std::uint16_t PerformanceMaintenanceData::focus_coil_current() const { return p->focusCoilCurrent_; } -uint16_t PerformanceMaintenanceData::focus_coil_airflow() const +std::uint16_t PerformanceMaintenanceData::focus_coil_airflow() const { return p->focusCoilAirflow_; } -uint16_t PerformanceMaintenanceData::oil_temperature() const +std::uint16_t PerformanceMaintenanceData::oil_temperature() const { return p->oilTemperature_; } -uint16_t PerformanceMaintenanceData::prf_limit() const +std::uint16_t PerformanceMaintenanceData::prf_limit() const { return p->prfLimit_; } -uint16_t PerformanceMaintenanceData::transmitter_oil_level() const +std::uint16_t PerformanceMaintenanceData::transmitter_oil_level() const { return p->transmitterOilLevel_; } -uint16_t PerformanceMaintenanceData::transmitter_battery_charging() const +std::uint16_t PerformanceMaintenanceData::transmitter_battery_charging() const { return p->transmitterBatteryCharging_; } -uint16_t PerformanceMaintenanceData::high_voltage_status() const +std::uint16_t PerformanceMaintenanceData::high_voltage_status() const { return p->highVoltageStatus_; } -uint16_t PerformanceMaintenanceData::transmitter_recycling_summary() const +std::uint16_t PerformanceMaintenanceData::transmitter_recycling_summary() const { return p->transmitterRecyclingSummary_; } -uint16_t PerformanceMaintenanceData::transmitter_inoperable() const +std::uint16_t PerformanceMaintenanceData::transmitter_inoperable() const { return p->transmitterInoperable_; } -uint16_t PerformanceMaintenanceData::transmitter_air_filter() const +std::uint16_t PerformanceMaintenanceData::transmitter_air_filter() const { return p->transmitterAirFilter_; } -uint16_t PerformanceMaintenanceData::zero_test_bit(unsigned i) const +std::uint16_t PerformanceMaintenanceData::zero_test_bit(unsigned i) const { - return p->zeroTestBit_[i]; + return p->zeroTestBit_.at(i); } -uint16_t PerformanceMaintenanceData::one_test_bit(unsigned i) const +std::uint16_t PerformanceMaintenanceData::one_test_bit(unsigned i) const { - return p->oneTestBit_[i]; + return p->oneTestBit_.at(i); } -uint16_t PerformanceMaintenanceData::xmtr_spip_interface() const +std::uint16_t PerformanceMaintenanceData::xmtr_spip_interface() const { return p->xmtrSpipInterface_; } -uint16_t PerformanceMaintenanceData::transmitter_summary_status() const +std::uint16_t PerformanceMaintenanceData::transmitter_summary_status() const { return p->transmitterSummaryStatus_; } @@ -869,7 +880,7 @@ float PerformanceMaintenanceData::xmtr_rf_avg_power() const return p->xmtrRfAvgPower_; } -uint32_t PerformanceMaintenanceData::xmtr_recycle_count() const +std::uint32_t PerformanceMaintenanceData::xmtr_recycle_count() const { return p->xmtrRecycleCount_; } @@ -889,108 +900,108 @@ float PerformanceMaintenanceData::xmtr_power_meter_zero() const return p->xmtrPowerMeterZero_; } -uint16_t PerformanceMaintenanceData::ac_unit1_compressor_shut_off() const +std::uint16_t PerformanceMaintenanceData::ac_unit1_compressor_shut_off() const { return p->acUnit1CompressorShutOff_; } -uint16_t PerformanceMaintenanceData::ac_unit2_compressor_shut_off() const +std::uint16_t PerformanceMaintenanceData::ac_unit2_compressor_shut_off() const { return p->acUnit2CompressorShutOff_; } -uint16_t PerformanceMaintenanceData::generator_maintenance_required() const +std::uint16_t PerformanceMaintenanceData::generator_maintenance_required() const { return p->generatorMaintenanceRequired_; } -uint16_t PerformanceMaintenanceData::generator_battery_voltage() const +std::uint16_t PerformanceMaintenanceData::generator_battery_voltage() const { return p->generatorBatteryVoltage_; } -uint16_t PerformanceMaintenanceData::generator_engine() const +std::uint16_t PerformanceMaintenanceData::generator_engine() const { return p->generatorEngine_; } -uint16_t PerformanceMaintenanceData::generator_volt_frequency() const +std::uint16_t PerformanceMaintenanceData::generator_volt_frequency() const { return p->generatorVoltFrequency_; } -uint16_t PerformanceMaintenanceData::power_source() const +std::uint16_t PerformanceMaintenanceData::power_source() const { return p->powerSource_; } -uint16_t PerformanceMaintenanceData::transitional_power_source() const +std::uint16_t PerformanceMaintenanceData::transitional_power_source() const { return p->transitionalPowerSource_; } -uint16_t PerformanceMaintenanceData::generator_auto_run_off_switch() const +std::uint16_t PerformanceMaintenanceData::generator_auto_run_off_switch() const { return p->generatorAutoRunOffSwitch_; } -uint16_t PerformanceMaintenanceData::aircraft_hazard_lighting() const +std::uint16_t PerformanceMaintenanceData::aircraft_hazard_lighting() const { return p->aircraftHazardLighting_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::equipment_shelter_fire_detection_system() const { return p->equipmentShelterFireDetectionSystem_; } -uint16_t PerformanceMaintenanceData::equipment_shelter_fire_smoke() const +std::uint16_t PerformanceMaintenanceData::equipment_shelter_fire_smoke() const { return p->equipmentShelterFireSmoke_; } -uint16_t PerformanceMaintenanceData::generator_shelter_fire_smoke() const +std::uint16_t PerformanceMaintenanceData::generator_shelter_fire_smoke() const { return p->generatorShelterFireSmoke_; } -uint16_t PerformanceMaintenanceData::utility_voltage_frequency() const +std::uint16_t PerformanceMaintenanceData::utility_voltage_frequency() const { return p->utilityVoltageFrequency_; } -uint16_t PerformanceMaintenanceData::site_security_alarm() const +std::uint16_t PerformanceMaintenanceData::site_security_alarm() const { return p->siteSecurityAlarm_; } -uint16_t PerformanceMaintenanceData::security_equipment() const +std::uint16_t PerformanceMaintenanceData::security_equipment() const { return p->securityEquipment_; } -uint16_t PerformanceMaintenanceData::security_system() const +std::uint16_t PerformanceMaintenanceData::security_system() const { return p->securitySystem_; } -uint16_t PerformanceMaintenanceData::receiver_connected_to_antenna() const +std::uint16_t PerformanceMaintenanceData::receiver_connected_to_antenna() const { return p->receiverConnectedToAntenna_; } -uint16_t PerformanceMaintenanceData::radome_hatch() const +std::uint16_t PerformanceMaintenanceData::radome_hatch() const { return p->radomeHatch_; } -uint16_t PerformanceMaintenanceData::ac_unit1_filter_dirty() const +std::uint16_t PerformanceMaintenanceData::ac_unit1_filter_dirty() const { return p->acUnit1FilterDirty_; } -uint16_t PerformanceMaintenanceData::ac_unit2_filter_dirty() const +std::uint16_t PerformanceMaintenanceData::ac_unit2_filter_dirty() const { return p->acUnit2FilterDirty_; } @@ -1040,7 +1051,7 @@ float PerformanceMaintenanceData::spip_neg_15v_ps() const return p->spipNeg15VPs_; } -uint16_t PerformanceMaintenanceData::spip_28v_ps_status() const +std::uint16_t PerformanceMaintenanceData::spip_28v_ps_status() const { return p->spip28VPsStatus_; } @@ -1050,198 +1061,201 @@ float PerformanceMaintenanceData::spip_5v_ps() const return p->spip5VPs_; } -uint16_t PerformanceMaintenanceData::converted_generator_fuel_level() const +std::uint16_t PerformanceMaintenanceData::converted_generator_fuel_level() const { return p->convertedGeneratorFuelLevel_; } -uint16_t PerformanceMaintenanceData::elevation_pos_dead_limit() const +std::uint16_t PerformanceMaintenanceData::elevation_pos_dead_limit() const { return p->elevationPosDeadLimit_; } -uint16_t PerformanceMaintenanceData::_150v_overvoltage() const +std::uint16_t PerformanceMaintenanceData::_150v_overvoltage() const { return p->_150VOvervoltage_; } -uint16_t PerformanceMaintenanceData::_150v_undervoltage() const +std::uint16_t PerformanceMaintenanceData::_150v_undervoltage() const { return p->_150VUndervoltage_; } -uint16_t PerformanceMaintenanceData::elevation_servo_amp_inhibit() const +std::uint16_t PerformanceMaintenanceData::elevation_servo_amp_inhibit() const { return p->elevationServoAmpInhibit_; } -uint16_t PerformanceMaintenanceData::elevation_servo_amp_short_circuit() const +std::uint16_t +PerformanceMaintenanceData::elevation_servo_amp_short_circuit() const { return p->elevationServoAmpShortCircuit_; } -uint16_t PerformanceMaintenanceData::elevation_servo_amp_overtemp() const +std::uint16_t PerformanceMaintenanceData::elevation_servo_amp_overtemp() const { return p->elevationServoAmpOvertemp_; } -uint16_t PerformanceMaintenanceData::elevation_motor_overtemp() const +std::uint16_t PerformanceMaintenanceData::elevation_motor_overtemp() const { return p->elevationMotorOvertemp_; } -uint16_t PerformanceMaintenanceData::elevation_stow_pin() const +std::uint16_t PerformanceMaintenanceData::elevation_stow_pin() const { return p->elevationStowPin_; } -uint16_t PerformanceMaintenanceData::elevation_housing_5v_ps() const +std::uint16_t PerformanceMaintenanceData::elevation_housing_5v_ps() const { return p->elevationHousing5VPs_; } -uint16_t PerformanceMaintenanceData::elevation_neg_dead_limit() const +std::uint16_t PerformanceMaintenanceData::elevation_neg_dead_limit() const { return p->elevationNegDeadLimit_; } -uint16_t PerformanceMaintenanceData::elevation_pos_normal_limit() const +std::uint16_t PerformanceMaintenanceData::elevation_pos_normal_limit() const { return p->elevationPosNormalLimit_; } -uint16_t PerformanceMaintenanceData::elevation_neg_normal_limit() const +std::uint16_t PerformanceMaintenanceData::elevation_neg_normal_limit() const { return p->elevationNegNormalLimit_; } -uint16_t PerformanceMaintenanceData::elevation_encoder_light() const +std::uint16_t PerformanceMaintenanceData::elevation_encoder_light() const { return p->elevationEncoderLight_; } -uint16_t PerformanceMaintenanceData::elevation_gearbox_oil() const +std::uint16_t PerformanceMaintenanceData::elevation_gearbox_oil() const { return p->elevationGearboxOil_; } -uint16_t PerformanceMaintenanceData::elevation_handwheel() const +std::uint16_t PerformanceMaintenanceData::elevation_handwheel() const { return p->elevationHandwheel_; } -uint16_t PerformanceMaintenanceData::elevation_amp_ps() const +std::uint16_t PerformanceMaintenanceData::elevation_amp_ps() const { return p->elevationAmpPs_; } -uint16_t PerformanceMaintenanceData::azimuth_servo_amp_inhibit() const +std::uint16_t PerformanceMaintenanceData::azimuth_servo_amp_inhibit() const { return p->azimuthServoAmpInhibit_; } -uint16_t PerformanceMaintenanceData::azimuth_servo_amp_short_circuit() const +std::uint16_t +PerformanceMaintenanceData::azimuth_servo_amp_short_circuit() const { return p->azimuthServoAmpShortCircuit_; } -uint16_t PerformanceMaintenanceData::azimuth_servo_amp_overtemp() const +std::uint16_t PerformanceMaintenanceData::azimuth_servo_amp_overtemp() const { return p->azimuthServoAmpOvertemp_; } -uint16_t PerformanceMaintenanceData::azimuth_motor_overtemp() const +std::uint16_t PerformanceMaintenanceData::azimuth_motor_overtemp() const { return p->azimuthMotorOvertemp_; } -uint16_t PerformanceMaintenanceData::azimuth_stow_pin() const +std::uint16_t PerformanceMaintenanceData::azimuth_stow_pin() const { return p->azimuthStowPin_; } -uint16_t PerformanceMaintenanceData::azimuth_housing_5v_ps() const +std::uint16_t PerformanceMaintenanceData::azimuth_housing_5v_ps() const { return p->azimuthHousing5VPs_; } -uint16_t PerformanceMaintenanceData::azimuth_encoder_light() const +std::uint16_t PerformanceMaintenanceData::azimuth_encoder_light() const { return p->azimuthEncoderLight_; } -uint16_t PerformanceMaintenanceData::azimuth_gearbox_oil() const +std::uint16_t PerformanceMaintenanceData::azimuth_gearbox_oil() const { return p->azimuthGearboxOil_; } -uint16_t PerformanceMaintenanceData::azimuth_bull_gear_oil() const +std::uint16_t PerformanceMaintenanceData::azimuth_bull_gear_oil() const { return p->azimuthBullGearOil_; } -uint16_t PerformanceMaintenanceData::azimuth_handwheel() const +std::uint16_t PerformanceMaintenanceData::azimuth_handwheel() const { return p->azimuthHandwheel_; } -uint16_t PerformanceMaintenanceData::azimuth_servo_amp_ps() const +std::uint16_t PerformanceMaintenanceData::azimuth_servo_amp_ps() const { return p->azimuthServoAmpPs_; } -uint16_t PerformanceMaintenanceData::servo() const +std::uint16_t PerformanceMaintenanceData::servo() const { return p->servo_; } -uint16_t PerformanceMaintenanceData::pedestal_interlock_switch() const +std::uint16_t PerformanceMaintenanceData::pedestal_interlock_switch() const { return p->pedestalInterlockSwitch_; } -uint16_t PerformanceMaintenanceData::coho_clock() const +std::uint16_t PerformanceMaintenanceData::coho_clock() const { return p->cohoClock_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::rf_generator_frequency_select_oscillator() const { return p->rfGeneratorFrequencySelectOscillator_; } -uint16_t PerformanceMaintenanceData::rf_generator_rf_stalo() const +std::uint16_t PerformanceMaintenanceData::rf_generator_rf_stalo() const { return p->rfGeneratorRfStalo_; } -uint16_t PerformanceMaintenanceData::rf_generator_phase_shifted_coho() const +std::uint16_t +PerformanceMaintenanceData::rf_generator_phase_shifted_coho() const { return p->rfGeneratorPhaseShiftedCoho_; } -uint16_t PerformanceMaintenanceData::_9v_receiver_ps() const +std::uint16_t PerformanceMaintenanceData::_9v_receiver_ps() const { return p->_9VReceiverPs_; } -uint16_t PerformanceMaintenanceData::_5v_receiver_ps() const +std::uint16_t PerformanceMaintenanceData::_5v_receiver_ps() const { return p->_5VReceiverPs_; } -uint16_t PerformanceMaintenanceData::_18v_receiver_ps() const +std::uint16_t PerformanceMaintenanceData::_18v_receiver_ps() const { return p->_18VReceiverPs_; } -uint16_t PerformanceMaintenanceData::neg_9v_receiver_ps() const +std::uint16_t PerformanceMaintenanceData::neg_9v_receiver_ps() const { return p->neg9VReceiverPs_; } -uint16_t PerformanceMaintenanceData::_5v_single_channel_rdaiu_ps() const +std::uint16_t PerformanceMaintenanceData::_5v_single_channel_rdaiu_ps() const { return p->_5VSingleChannelRdaiuPs_; } @@ -1311,22 +1325,22 @@ float PerformanceMaintenanceData::long_pulse_horizontal_dbz0() const return p->longPulseHorizontalDbz0_; } -uint16_t PerformanceMaintenanceData::velocity_processed() const +std::uint16_t PerformanceMaintenanceData::velocity_processed() const { return p->velocityProcessed_; } -uint16_t PerformanceMaintenanceData::width_processed() const +std::uint16_t PerformanceMaintenanceData::width_processed() const { return p->widthProcessed_; } -uint16_t PerformanceMaintenanceData::velocity_rf_gen() const +std::uint16_t PerformanceMaintenanceData::velocity_rf_gen() const { return p->velocityRfGen_; } -uint16_t PerformanceMaintenanceData::width_rf_gen() const +std::uint16_t PerformanceMaintenanceData::width_rf_gen() const { return p->widthRfGen_; } @@ -1391,145 +1405,148 @@ float PerformanceMaintenanceData::vertical_linearity() const return p->verticalLinearity_; } -uint16_t PerformanceMaintenanceData::state_file_read_status() const +std::uint16_t PerformanceMaintenanceData::state_file_read_status() const { return p->stateFileReadStatus_; } -uint16_t PerformanceMaintenanceData::state_file_write_status() const +std::uint16_t PerformanceMaintenanceData::state_file_write_status() const { return p->stateFileWriteStatus_; } -uint16_t PerformanceMaintenanceData::bypass_map_file_read_status() const +std::uint16_t PerformanceMaintenanceData::bypass_map_file_read_status() const { return p->bypassMapFileReadStatus_; } -uint16_t PerformanceMaintenanceData::bypass_map_file_write_status() const +std::uint16_t PerformanceMaintenanceData::bypass_map_file_write_status() const { return p->bypassMapFileWriteStatus_; } -uint16_t PerformanceMaintenanceData::current_adaptation_file_read_status() const +std::uint16_t +PerformanceMaintenanceData::current_adaptation_file_read_status() const { return p->currentAdaptationFileReadStatus_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::current_adaptation_file_write_status() const { return p->currentAdaptationFileWriteStatus_; } -uint16_t PerformanceMaintenanceData::censor_zone_file_read_status() const +std::uint16_t PerformanceMaintenanceData::censor_zone_file_read_status() const { return p->censorZoneFileReadStatus_; } -uint16_t PerformanceMaintenanceData::censor_zone_file_write_status() const +std::uint16_t PerformanceMaintenanceData::censor_zone_file_write_status() const { return p->censorZoneFileWriteStatus_; } -uint16_t PerformanceMaintenanceData::remote_vcp_file_read_status() const +std::uint16_t PerformanceMaintenanceData::remote_vcp_file_read_status() const { return p->remoteVcpFileReadStatus_; } -uint16_t PerformanceMaintenanceData::remote_vcp_file_write_status() const +std::uint16_t PerformanceMaintenanceData::remote_vcp_file_write_status() const { return p->remoteVcpFileWriteStatus_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::baseline_adaptation_file_read_status() const { return p->baselineAdaptationFileReadStatus_; } -uint16_t PerformanceMaintenanceData::read_status_of_prf_sets() const +std::uint16_t PerformanceMaintenanceData::read_status_of_prf_sets() const { return p->readStatusOfPrfSets_; } -uint16_t PerformanceMaintenanceData::clutter_filter_map_file_read_status() const +std::uint16_t +PerformanceMaintenanceData::clutter_filter_map_file_read_status() const { return p->clutterFilterMapFileReadStatus_; } -uint16_t +std::uint16_t PerformanceMaintenanceData::clutter_filter_map_file_write_status() const { return p->clutterFilterMapFileWriteStatus_; } -uint16_t PerformanceMaintenanceData::general_disk_io_error() const +std::uint16_t PerformanceMaintenanceData::general_disk_io_error() const { return p->generalDiskIoError_; } -uint8_t PerformanceMaintenanceData::rsp_status() const +std::uint8_t PerformanceMaintenanceData::rsp_status() const { return p->rspStatus_; } -uint8_t PerformanceMaintenanceData::cpu1_temperature() const +std::uint8_t PerformanceMaintenanceData::cpu1_temperature() const { return p->cpu1Temperature_; } -uint8_t PerformanceMaintenanceData::cpu2_temperature() const +std::uint8_t PerformanceMaintenanceData::cpu2_temperature() const { return p->cpu2Temperature_; } -uint16_t PerformanceMaintenanceData::rsp_motherboard_power() const +std::uint16_t PerformanceMaintenanceData::rsp_motherboard_power() const { return p->rspMotherboardPower_; } -uint16_t PerformanceMaintenanceData::spip_comm_status() const +std::uint16_t PerformanceMaintenanceData::spip_comm_status() const { return p->spipCommStatus_; } -uint16_t PerformanceMaintenanceData::hci_comm_status() const +std::uint16_t PerformanceMaintenanceData::hci_comm_status() const { return p->hciCommStatus_; } -uint16_t PerformanceMaintenanceData::signal_processor_command_status() const +std::uint16_t +PerformanceMaintenanceData::signal_processor_command_status() const { return p->signalProcessorCommandStatus_; } -uint16_t PerformanceMaintenanceData::ame_communication_status() const +std::uint16_t PerformanceMaintenanceData::ame_communication_status() const { return p->ameCommunicationStatus_; } -uint16_t PerformanceMaintenanceData::rms_link_status() const +std::uint16_t PerformanceMaintenanceData::rms_link_status() const { return p->rmsLinkStatus_; } -uint16_t PerformanceMaintenanceData::rpg_link_status() const +std::uint16_t PerformanceMaintenanceData::rpg_link_status() const { return p->rpgLinkStatus_; } -uint16_t PerformanceMaintenanceData::interpanel_link_status() const +std::uint16_t PerformanceMaintenanceData::interpanel_link_status() const { return p->interpanelLinkStatus_; } -uint32_t PerformanceMaintenanceData::performance_check_time() const +std::uint32_t PerformanceMaintenanceData::performance_check_time() const { return p->performanceCheckTime_; } -uint16_t PerformanceMaintenanceData::version() const +std::uint16_t PerformanceMaintenanceData::version() const { return p->version_; } @@ -1538,9 +1555,10 @@ bool PerformanceMaintenanceData::Parse(std::istream& is) { logger_->trace("Parsing Performance/Maintenance Data (Message Type 3)"); - bool messageValid = true; - size_t bytesRead = 0; + bool messageValid = true; + std::size_t bytesRead = 0; + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers): Readability p->rcpString_.resize(16); // Communications @@ -1684,10 +1702,10 @@ bool PerformanceMaintenanceData::Parse(std::istream& is) is.read(reinterpret_cast(&p->transmitterInoperable_), 2); // 184 is.read(reinterpret_cast(&p->transmitterAirFilter_), 2); // 185 is.read(reinterpret_cast(&p->zeroTestBit_[0]), - p->zeroTestBit_.size() * 2); // 186-193 + static_cast(p->zeroTestBit_.size() * 2)); // 186-193 is.read(reinterpret_cast(&p->oneTestBit_[0]), - p->oneTestBit_.size() * 2); // 194-201 - is.read(reinterpret_cast(&p->xmtrSpipInterface_), 2); // 202 + static_cast(p->oneTestBit_.size() * 2)); // 194-201 + is.read(reinterpret_cast(&p->xmtrSpipInterface_), 2); // 202 is.read(reinterpret_cast(&p->transmitterSummaryStatus_), 2); // 203 is.seekg(2, std::ios_base::cur); // 204 is.read(reinterpret_cast(&p->transmitterRfPower_), 4); // 205-206 @@ -1882,6 +1900,8 @@ bool PerformanceMaintenanceData::Parse(std::istream& is) bytesRead += 960; + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + // Communications p->loopBackSetStatus_ = ntohs(p->loopBackSetStatus_); p->t1OutputFrames_ = ntohl(p->t1OutputFrames_); @@ -2190,6 +2210,4 @@ PerformanceMaintenanceData::Create(Level2MessageHeader&& header, return message; } -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/source/scwx/wsr88d/rda/rda_adaptation_data.cpp b/wxdata/source/scwx/wsr88d/rda/rda_adaptation_data.cpp index aff8664a..05887f2a 100644 --- a/wxdata/source/scwx/wsr88d/rda/rda_adaptation_data.cpp +++ b/wxdata/source/scwx/wsr88d/rda/rda_adaptation_data.cpp @@ -1,11 +1,7 @@ #include #include -namespace scwx -{ -namespace wsr88d -{ -namespace rda +namespace scwx::wsr88d::rda { static const std::string logPrefix_ = "scwx::wsr88d::rda::rda_adaptation_data"; @@ -13,30 +9,26 @@ static const auto logger_ = util::Logger::Create(logPrefix_); struct AntManualSetup { - int32_t ielmin_; - int32_t ielmax_; - uint32_t fazvelmax_; - uint32_t felvelmax_; - int32_t igndHgt_; - uint32_t iradHgt_; - - AntManualSetup() : - ielmin_ {0}, - ielmax_ {0}, - fazvelmax_ {0}, - felvelmax_ {0}, - igndHgt_ {0}, - iradHgt_ {0} - { - } + std::int32_t ielmin_ {0}; + std::int32_t ielmax_ {0}; + std::uint32_t fazvelmax_ {0}; + std::uint32_t felvelmax_ {0}; + std::int32_t igndHgt_ {0}; + std::uint32_t iradHgt_ {0}; }; -class RdaAdaptationDataImpl +class RdaAdaptationData::Impl { public: - explicit RdaAdaptationDataImpl() = default; - ~RdaAdaptationDataImpl() = default; + explicit Impl() = default; + ~Impl() = default; + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; + + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers) std::string adapFileName_ {}; std::string adapFormat_ {}; std::string adapRevision_ {}; @@ -65,27 +57,27 @@ public: bool specFilterInstalled_ {false}; bool tpsInstalled_ {false}; bool rmsInstalled_ {false}; - uint32_t aHvdlTstInt_ {0}; - uint32_t aRpgLtInt_ {0}; - uint32_t aMinStabUtilPwrTime_ {0}; - uint32_t aGenAutoExerInterval_ {0}; - uint32_t aUtilPwrSwReqInterval_ {0}; + std::uint32_t aHvdlTstInt_ {0}; + std::uint32_t aRpgLtInt_ {0}; + std::uint32_t aMinStabUtilPwrTime_ {0}; + std::uint32_t aGenAutoExerInterval_ {0}; + std::uint32_t aUtilPwrSwReqInterval_ {0}; float aLowFuelLevel_ {0.0f}; - uint32_t configChanNumber_ {0}; - uint32_t redundantChanConfig_ {0}; + std::uint32_t configChanNumber_ {0}; + std::uint32_t redundantChanConfig_ {0}; std::array attenTable_ {0.0f}; std::map pathLosses_ {}; float vTsCw_ {0.0f}; std::array hRnscale_ {0.0f}; std::array atmos_ {0.0f}; std::array elIndex_ {0.0f}; - uint32_t tfreqMhz_ {0}; + std::uint32_t tfreqMhz_ {0}; float baseDataTcn_ {0.0f}; float reflDataTover_ {0.0f}; float tarHDbz0Lp_ {0.0f}; float tarVDbz0Lp_ {0.0f}; - uint32_t initPhiDp_ {0}; - uint32_t normInitPhiDp_ {0}; + std::uint32_t initPhiDp_ {0}; + std::uint32_t normInitPhiDp_ {0}; float lxLp_ {0.0f}; float lxSp_ {0.0f}; float meteorParam_ {0.0f}; @@ -93,9 +85,9 @@ public: float velDegradLimit_ {0.0f}; float wthDegradLimit_ {0.0f}; float hNoisetempDgradLimit_ {0.0f}; - uint32_t hMinNoisetemp_ {0}; + std::uint32_t hMinNoisetemp_ {0}; float vNoisetempDgradLimit_ {0.0f}; - uint32_t vMinNoisetemp_ {0}; + std::uint32_t vMinNoisetemp_ {0}; float klyDegradeLimit_ {0.0f}; float tsCoho_ {0.0f}; float hTsCw_ {0.0f}; @@ -112,19 +104,19 @@ public: float vDbz0DeltaLimit_ {0.0f}; float tarHDbz0Sp_ {0.0f}; float tarVDbz0Sp_ {0.0f}; - uint32_t deltaprf_ {0}; - uint32_t tauSp_ {0}; - uint32_t tauLp_ {0}; - uint32_t ncDeadValue_ {0}; - uint32_t tauRfSp_ {0}; - uint32_t tauRfLp_ {0}; + std::uint32_t deltaprf_ {0}; + std::uint32_t tauSp_ {0}; + std::uint32_t tauLp_ {0}; + std::uint32_t ncDeadValue_ {0}; + std::uint32_t tauRfSp_ {0}; + std::uint32_t tauRfLp_ {0}; float seg1Lim_ {0.0f}; float slatsec_ {0.0f}; float slonsec_ {0.0f}; - uint32_t slatdeg_ {0}; - uint32_t slatmin_ {0}; - uint32_t slondeg_ {0}; - uint32_t slonmin_ {0}; + std::uint32_t slatdeg_ {0}; + std::uint32_t slatmin_ {0}; + std::uint32_t slondeg_ {0}; + std::uint32_t slonmin_ {0}; char slatdir_ {0}; char slondir_ {0}; double digRcvrClockFreq_ {0.0}; @@ -155,16 +147,16 @@ public: float azEncoderAlignment_ {0.0f}; float elEncoderAlignment_ {0.0f}; std::string refinedPark_ {}; - uint32_t rvp8nvIwaveguideLength_ {0}; + std::uint32_t rvp8nvIwaveguideLength_ {0}; std::array vRnscale_ {0.0f}; float velDataTover_ {0.0f}; float widthDataTover_ {0.0f}; float dopplerRangeStart_ {0.0f}; - uint32_t maxElIndex_ {0}; + std::uint32_t maxElIndex_ {0}; float seg2Lim_ {0.0f}; float seg3Lim_ {0.0f}; float seg4Lim_ {0.0f}; - uint32_t nbrElSegments_ {0}; + std::uint32_t nbrElSegments_ {0}; float hNoiseLong_ {0.0f}; float antNoiseTemp_ {0.0f}; float hNoiseShort_ {0.0f}; @@ -196,22 +188,23 @@ public: float rcvrModMinTemp_ {0.0f}; float biteModMaxTemp_ {0.0f}; float biteModMinTemp_ {0.0f}; - uint32_t defaultPolarization_ {0}; + std::uint32_t defaultPolarization_ {0}; float trLimitDgradLimit_ {0.0f}; float trLimitFailLimit_ {0.0f}; bool rfpStepperEnabled_ {false}; float ameCurrentTolerance_ {0.0f}; - uint32_t hOnlyPolarization_ {0}; - uint32_t vOnlyPolarization_ {0}; + std::uint32_t hOnlyPolarization_ {0}; + std::uint32_t vOnlyPolarization_ {0}; float sunBias_ {0.0f}; float aMinShelterTempWarn_ {0.0f}; float powerMeterZero_ {0.0f}; float txbBaseline_ {0.0f}; float txbAlarmThresh_ {0.0f}; + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) }; RdaAdaptationData::RdaAdaptationData() : - Level2Message(), p(std::make_unique()) + Level2Message(), p(std::make_unique()) { } RdaAdaptationData::~RdaAdaptationData() = default; @@ -277,7 +270,7 @@ float RdaAdaptationData::parkel() const float RdaAdaptationData::a_fuel_conv(unsigned i) const { - return p->aFuelConv_[i]; + return p->aFuelConv_.at(i); } float RdaAdaptationData::a_min_shelter_temp() const @@ -360,27 +353,27 @@ bool RdaAdaptationData::rms_installed() const return p->rmsInstalled_; } -uint32_t RdaAdaptationData::a_hvdl_tst_int() const +std::uint32_t RdaAdaptationData::a_hvdl_tst_int() const { return p->aHvdlTstInt_; } -uint32_t RdaAdaptationData::a_rpg_lt_int() const +std::uint32_t RdaAdaptationData::a_rpg_lt_int() const { return p->aRpgLtInt_; } -uint32_t RdaAdaptationData::a_min_stab_util_pwr_time() const +std::uint32_t RdaAdaptationData::a_min_stab_util_pwr_time() const { return p->aMinStabUtilPwrTime_; } -uint32_t RdaAdaptationData::a_gen_auto_exer_interval() const +std::uint32_t RdaAdaptationData::a_gen_auto_exer_interval() const { return p->aGenAutoExerInterval_; } -uint32_t RdaAdaptationData::a_util_pwr_sw_req_interval() const +std::uint32_t RdaAdaptationData::a_util_pwr_sw_req_interval() const { return p->aUtilPwrSwReqInterval_; } @@ -390,19 +383,19 @@ float RdaAdaptationData::a_low_fuel_level() const return p->aLowFuelLevel_; } -uint32_t RdaAdaptationData::config_chan_number() const +std::uint32_t RdaAdaptationData::config_chan_number() const { return p->configChanNumber_; } -uint32_t RdaAdaptationData::redundant_chan_config() const +std::uint32_t RdaAdaptationData::redundant_chan_config() const { return p->redundantChanConfig_; } float RdaAdaptationData::atten_table(unsigned i) const { - return p->attenTable_[i]; + return p->attenTable_.at(i); } float RdaAdaptationData::path_losses(unsigned i) const @@ -412,41 +405,49 @@ float RdaAdaptationData::path_losses(unsigned i) const float RdaAdaptationData::h_coupler_xmt_loss() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(29); } float RdaAdaptationData::h_coupler_cw_loss() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(48); } float RdaAdaptationData::v_coupler_xmt_loss() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(49); } float RdaAdaptationData::ame_ts_bias() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(51); } float RdaAdaptationData::v_coupler_cw_loss() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(53); } float RdaAdaptationData::pwr_sense_bias() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(56); } float RdaAdaptationData::ame_v_noise_enr() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(57); } float RdaAdaptationData::chan_cal_diff() const { + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) return path_losses(70); } @@ -457,20 +458,20 @@ float RdaAdaptationData::v_ts_cw() const float RdaAdaptationData::h_rnscale(unsigned i) const { - return p->hRnscale_[i]; + return p->hRnscale_.at(i); } float RdaAdaptationData::atmos(unsigned i) const { - return p->atmos_[i]; + return p->atmos_.at(i); } float RdaAdaptationData::el_index(unsigned i) const { - return p->elIndex_[i]; + return p->elIndex_.at(i); } -uint32_t RdaAdaptationData::tfreq_mhz() const +std::uint32_t RdaAdaptationData::tfreq_mhz() const { return p->tfreqMhz_; } @@ -495,12 +496,12 @@ float RdaAdaptationData::tar_v_dbz0_lp() const return p->tarVDbz0Lp_; } -uint32_t RdaAdaptationData::init_phi_dp() const +std::uint32_t RdaAdaptationData::init_phi_dp() const { return p->initPhiDp_; } -uint32_t RdaAdaptationData::norm_init_phi_dp() const +std::uint32_t RdaAdaptationData::norm_init_phi_dp() const { return p->normInitPhiDp_; } @@ -540,7 +541,7 @@ float RdaAdaptationData::h_noisetemp_dgrad_limit() const return p->hNoisetempDgradLimit_; } -uint32_t RdaAdaptationData::h_min_noisetemp() const +std::uint32_t RdaAdaptationData::h_min_noisetemp() const { return p->hMinNoisetemp_; } @@ -550,7 +551,7 @@ float RdaAdaptationData::v_noisetemp_dgrad_limit() const return p->vNoisetempDgradLimit_; } -uint32_t RdaAdaptationData::v_min_noisetemp() const +std::uint32_t RdaAdaptationData::v_min_noisetemp() const { return p->vMinNoisetemp_; } @@ -635,32 +636,32 @@ float RdaAdaptationData::tar_v_dbz0_sp() const return p->tarVDbz0Sp_; } -uint32_t RdaAdaptationData::deltaprf() const +std::uint32_t RdaAdaptationData::deltaprf() const { return p->deltaprf_; } -uint32_t RdaAdaptationData::tau_sp() const +std::uint32_t RdaAdaptationData::tau_sp() const { return p->tauSp_; } -uint32_t RdaAdaptationData::tau_lp() const +std::uint32_t RdaAdaptationData::tau_lp() const { return p->tauLp_; } -uint32_t RdaAdaptationData::nc_dead_value() const +std::uint32_t RdaAdaptationData::nc_dead_value() const { return p->ncDeadValue_; } -uint32_t RdaAdaptationData::tau_rf_sp() const +std::uint32_t RdaAdaptationData::tau_rf_sp() const { return p->tauRfSp_; } -uint32_t RdaAdaptationData::tau_rf_lp() const +std::uint32_t RdaAdaptationData::tau_rf_lp() const { return p->tauRfLp_; } @@ -680,22 +681,22 @@ float RdaAdaptationData::slonsec() const return p->slonsec_; } -uint32_t RdaAdaptationData::slatdeg() const +std::uint32_t RdaAdaptationData::slatdeg() const { return p->slatdeg_; } -uint32_t RdaAdaptationData::slatmin() const +std::uint32_t RdaAdaptationData::slatmin() const { return p->slatmin_; } -uint32_t RdaAdaptationData::slondeg() const +std::uint32_t RdaAdaptationData::slondeg() const { return p->slondeg_; } -uint32_t RdaAdaptationData::slonmin() const +std::uint32_t RdaAdaptationData::slonmin() const { return p->slonmin_; } @@ -738,31 +739,31 @@ std::string RdaAdaptationData::site_name() const float RdaAdaptationData::ant_manual_setup_ielmin() const { constexpr float SCALE = 360.0f / 65536.0f; - return p->antManualSetup_.ielmin_ * SCALE; + return static_cast(p->antManualSetup_.ielmin_) * SCALE; } float RdaAdaptationData::ant_manual_setup_ielmax() const { constexpr float SCALE = 360.0f / 65536.0f; - return p->antManualSetup_.ielmax_ * SCALE; + return static_cast(p->antManualSetup_.ielmax_) * SCALE; } -uint32_t RdaAdaptationData::ant_manual_setup_fazvelmax() const +std::uint32_t RdaAdaptationData::ant_manual_setup_fazvelmax() const { return p->antManualSetup_.fazvelmax_; } -uint32_t RdaAdaptationData::ant_manual_setup_felvelmax() const +std::uint32_t RdaAdaptationData::ant_manual_setup_felvelmax() const { return p->antManualSetup_.felvelmax_; } -int32_t RdaAdaptationData::ant_manual_setup_ignd_hgt() const +std::int32_t RdaAdaptationData::ant_manual_setup_ignd_hgt() const { return p->antManualSetup_.igndHgt_; } -uint32_t RdaAdaptationData::ant_manual_setup_irad_hgt() const +std::uint32_t RdaAdaptationData::ant_manual_setup_irad_hgt() const { return p->antManualSetup_.iradHgt_; } @@ -877,14 +878,14 @@ std::string RdaAdaptationData::refined_park() const return p->refinedPark_; } -uint32_t RdaAdaptationData::rvp8nv_iwaveguide_length() const +std::uint32_t RdaAdaptationData::rvp8nv_iwaveguide_length() const { return p->rvp8nvIwaveguideLength_; } float RdaAdaptationData::v_rnscale(unsigned i) const { - return p->vRnscale_[i]; + return p->vRnscale_.at(i); } float RdaAdaptationData::vel_data_tover() const @@ -902,7 +903,7 @@ float RdaAdaptationData::doppler_range_start() const return p->dopplerRangeStart_; } -uint32_t RdaAdaptationData::max_el_index() const +std::uint32_t RdaAdaptationData::max_el_index() const { return p->maxElIndex_; } @@ -922,7 +923,7 @@ float RdaAdaptationData::seg4_lim() const return p->seg4Lim_; } -uint32_t RdaAdaptationData::nbr_el_segments() const +std::uint32_t RdaAdaptationData::nbr_el_segments() const { return p->nbrElSegments_; } @@ -1082,7 +1083,7 @@ float RdaAdaptationData::bite_mod_min_temp() const return p->biteModMinTemp_; } -uint32_t RdaAdaptationData::default_polarization() const +std::uint32_t RdaAdaptationData::default_polarization() const { return p->defaultPolarization_; } @@ -1107,12 +1108,12 @@ float RdaAdaptationData::ame_current_tolerance() const return p->ameCurrentTolerance_; } -uint32_t RdaAdaptationData::h_only_polarization() const +std::uint32_t RdaAdaptationData::h_only_polarization() const { return p->hOnlyPolarization_; } -uint32_t RdaAdaptationData::v_only_polarization() const +std::uint32_t RdaAdaptationData::v_only_polarization() const { return p->vOnlyPolarization_; } @@ -1146,9 +1147,10 @@ bool RdaAdaptationData::Parse(std::istream& is) { logger_->trace("Parsing RDA Adaptation Data (Message Type 18)"); - bool messageValid = true; - size_t bytesRead = 0; + bool messageValid = true; + std::size_t bytesRead = 0; + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers): Readability p->adapFileName_.resize(12); p->adapFormat_.resize(4); p->adapRevision_.resize(4); @@ -1171,7 +1173,7 @@ bool RdaAdaptationData::Parse(std::istream& is) is.read(reinterpret_cast(&p->parkel_), 4); // 64-67 is.read(reinterpret_cast(&p->aFuelConv_[0]), - p->aFuelConv_.size() * 4); // 68-111 + static_cast(p->aFuelConv_.size() * 4)); // 68-111 is.read(reinterpret_cast(&p->aMinShelterTemp_), 4); // 112-115 is.read(reinterpret_cast(&p->aMaxShelterTemp_), 4); // 116-119 @@ -1209,7 +1211,7 @@ bool RdaAdaptationData::Parse(std::istream& is) is.read(reinterpret_cast(&p->redundantChanConfig_), 4); // 224-227 is.read(reinterpret_cast(&p->attenTable_[0]), - p->attenTable_.size() * 4); // 228-643 + static_cast(p->attenTable_.size() * 4)); // 228-643 is.seekg(24, std::ios_base::cur); // 644-667 is.read(reinterpret_cast(&p->pathLosses_[7]), 4); // 668-671 @@ -1262,13 +1264,13 @@ bool RdaAdaptationData::Parse(std::istream& is) is.read(reinterpret_cast(&p->vTsCw_), 4); // 936-939 is.read(reinterpret_cast(&p->hRnscale_[0]), - p->hRnscale_.size() * 4); // 940-991 + static_cast(p->hRnscale_.size() * 4)); // 940-991 is.read(reinterpret_cast(&p->atmos_[0]), - p->atmos_.size() * 4); // 992-1043 + static_cast(p->atmos_.size() * 4)); // 992-1043 is.read(reinterpret_cast(&p->elIndex_[0]), - p->elIndex_.size() * 4); // 1044-1091 + static_cast(p->elIndex_.size() * 4)); // 1044-1091 is.read(reinterpret_cast(&p->tfreqMhz_), 4); // 1092-1095 is.read(reinterpret_cast(&p->baseDataTcn_), 4); // 1096-1099 @@ -1394,11 +1396,12 @@ bool RdaAdaptationData::Parse(std::istream& is) 4); // 8696-8699 is.read(reinterpret_cast(&p->vRnscale_[0]), - 11 * 4); // 8700-8743 + static_cast(11 * 4)); // 8700-8743 - is.read(reinterpret_cast(&p->velDataTover_), 4); // 8744-8747 - is.read(reinterpret_cast(&p->widthDataTover_), 4); // 8748-8751 - is.read(reinterpret_cast(&p->vRnscale_[11]), 2 * 4); // 8752-8759 + is.read(reinterpret_cast(&p->velDataTover_), 4); // 8744-8747 + is.read(reinterpret_cast(&p->widthDataTover_), 4); // 8748-8751 + is.read(reinterpret_cast(&p->vRnscale_[11]), + static_cast(2 * 4)); // 8752-8759 is.seekg(4, std::ios_base::cur); // 8760-8763 @@ -1468,6 +1471,8 @@ bool RdaAdaptationData::Parse(std::istream& is) bytesRead += 9468; + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) + p->lowerPreLimit_ = SwapFloat(p->lowerPreLimit_); p->azLat_ = SwapFloat(p->azLat_); p->upperPreLimit_ = SwapFloat(p->upperPreLimit_); @@ -1507,84 +1512,87 @@ bool RdaAdaptationData::Parse(std::istream& is) SwapArray(p->atmos_); SwapArray(p->elIndex_); - p->tfreqMhz_ = ntohl(p->tfreqMhz_); - p->baseDataTcn_ = SwapFloat(p->baseDataTcn_); - p->reflDataTover_ = SwapFloat(p->reflDataTover_); - p->tarHDbz0Lp_ = SwapFloat(p->tarHDbz0Lp_); - p->tarVDbz0Lp_ = SwapFloat(p->tarVDbz0Lp_); - p->initPhiDp_ = ntohl(p->initPhiDp_); - p->normInitPhiDp_ = ntohl(p->normInitPhiDp_); - p->lxLp_ = SwapFloat(p->lxLp_); - p->lxSp_ = SwapFloat(p->lxSp_); - p->meteorParam_ = SwapFloat(p->meteorParam_); - p->antennaGain_ = SwapFloat(p->antennaGain_); - p->velDegradLimit_ = SwapFloat(p->velDegradLimit_); - p->wthDegradLimit_ = SwapFloat(p->wthDegradLimit_); - p->hNoisetempDgradLimit_ = SwapFloat(p->hNoisetempDgradLimit_); - p->hMinNoisetemp_ = ntohl(p->hMinNoisetemp_); - p->vNoisetempDgradLimit_ = SwapFloat(p->vNoisetempDgradLimit_); - p->vMinNoisetemp_ = ntohl(p->vMinNoisetemp_); - p->klyDegradeLimit_ = SwapFloat(p->klyDegradeLimit_); - p->tsCoho_ = SwapFloat(p->tsCoho_); - p->hTsCw_ = SwapFloat(p->hTsCw_); - p->tsStalo_ = SwapFloat(p->tsStalo_); - p->ameHNoiseEnr_ = SwapFloat(p->ameHNoiseEnr_); - p->xmtrPeakPwrHighLimit_ = SwapFloat(p->xmtrPeakPwrHighLimit_); - p->xmtrPeakPwrLowLimit_ = SwapFloat(p->xmtrPeakPwrLowLimit_); - p->hDbz0DeltaLimit_ = SwapFloat(p->hDbz0DeltaLimit_); - p->threshold1_ = SwapFloat(p->threshold1_); - p->threshold2_ = SwapFloat(p->threshold2_); - p->clutSuppDgradLim_ = SwapFloat(p->clutSuppDgradLim_); - p->range0Value_ = SwapFloat(p->range0Value_); - p->xmtrPwrMtrScale_ = SwapFloat(p->xmtrPwrMtrScale_); - p->vDbz0DeltaLimit_ = SwapFloat(p->vDbz0DeltaLimit_); - p->tarHDbz0Sp_ = SwapFloat(p->tarHDbz0Sp_); - p->tarVDbz0Sp_ = SwapFloat(p->tarVDbz0Sp_); - p->deltaprf_ = ntohl(p->deltaprf_); - p->tauSp_ = ntohl(p->tauSp_); - p->tauLp_ = ntohl(p->tauLp_); - p->ncDeadValue_ = ntohl(p->ncDeadValue_); - p->tauRfSp_ = ntohl(p->tauRfSp_); - p->tauRfLp_ = ntohl(p->tauRfLp_); - p->seg1Lim_ = SwapFloat(p->seg1Lim_); - p->slatsec_ = SwapFloat(p->slatsec_); - p->slonsec_ = SwapFloat(p->slonsec_); - p->slatdeg_ = ntohl(p->slatdeg_); - p->slatmin_ = ntohl(p->slatmin_); - p->slondeg_ = ntohl(p->slondeg_); - p->slonmin_ = ntohl(p->slonmin_); - p->digRcvrClockFreq_ = SwapDouble(p->digRcvrClockFreq_); - p->cohoFreq_ = SwapDouble(p->cohoFreq_); - p->azCorrectionFactor_ = SwapFloat(p->azCorrectionFactor_); - p->elCorrectionFactor_ = SwapFloat(p->elCorrectionFactor_); - p->antManualSetup_.ielmin_ = ntohl(p->antManualSetup_.ielmin_); - p->antManualSetup_.ielmax_ = ntohl(p->antManualSetup_.ielmax_); + p->tfreqMhz_ = ntohl(p->tfreqMhz_); + p->baseDataTcn_ = SwapFloat(p->baseDataTcn_); + p->reflDataTover_ = SwapFloat(p->reflDataTover_); + p->tarHDbz0Lp_ = SwapFloat(p->tarHDbz0Lp_); + p->tarVDbz0Lp_ = SwapFloat(p->tarVDbz0Lp_); + p->initPhiDp_ = ntohl(p->initPhiDp_); + p->normInitPhiDp_ = ntohl(p->normInitPhiDp_); + p->lxLp_ = SwapFloat(p->lxLp_); + p->lxSp_ = SwapFloat(p->lxSp_); + p->meteorParam_ = SwapFloat(p->meteorParam_); + p->antennaGain_ = SwapFloat(p->antennaGain_); + p->velDegradLimit_ = SwapFloat(p->velDegradLimit_); + p->wthDegradLimit_ = SwapFloat(p->wthDegradLimit_); + p->hNoisetempDgradLimit_ = SwapFloat(p->hNoisetempDgradLimit_); + p->hMinNoisetemp_ = ntohl(p->hMinNoisetemp_); + p->vNoisetempDgradLimit_ = SwapFloat(p->vNoisetempDgradLimit_); + p->vMinNoisetemp_ = ntohl(p->vMinNoisetemp_); + p->klyDegradeLimit_ = SwapFloat(p->klyDegradeLimit_); + p->tsCoho_ = SwapFloat(p->tsCoho_); + p->hTsCw_ = SwapFloat(p->hTsCw_); + p->tsStalo_ = SwapFloat(p->tsStalo_); + p->ameHNoiseEnr_ = SwapFloat(p->ameHNoiseEnr_); + p->xmtrPeakPwrHighLimit_ = SwapFloat(p->xmtrPeakPwrHighLimit_); + p->xmtrPeakPwrLowLimit_ = SwapFloat(p->xmtrPeakPwrLowLimit_); + p->hDbz0DeltaLimit_ = SwapFloat(p->hDbz0DeltaLimit_); + p->threshold1_ = SwapFloat(p->threshold1_); + p->threshold2_ = SwapFloat(p->threshold2_); + p->clutSuppDgradLim_ = SwapFloat(p->clutSuppDgradLim_); + p->range0Value_ = SwapFloat(p->range0Value_); + p->xmtrPwrMtrScale_ = SwapFloat(p->xmtrPwrMtrScale_); + p->vDbz0DeltaLimit_ = SwapFloat(p->vDbz0DeltaLimit_); + p->tarHDbz0Sp_ = SwapFloat(p->tarHDbz0Sp_); + p->tarVDbz0Sp_ = SwapFloat(p->tarVDbz0Sp_); + p->deltaprf_ = ntohl(p->deltaprf_); + p->tauSp_ = ntohl(p->tauSp_); + p->tauLp_ = ntohl(p->tauLp_); + p->ncDeadValue_ = ntohl(p->ncDeadValue_); + p->tauRfSp_ = ntohl(p->tauRfSp_); + p->tauRfLp_ = ntohl(p->tauRfLp_); + p->seg1Lim_ = SwapFloat(p->seg1Lim_); + p->slatsec_ = SwapFloat(p->slatsec_); + p->slonsec_ = SwapFloat(p->slonsec_); + p->slatdeg_ = ntohl(p->slatdeg_); + p->slatmin_ = ntohl(p->slatmin_); + p->slondeg_ = ntohl(p->slondeg_); + p->slonmin_ = ntohl(p->slonmin_); + p->digRcvrClockFreq_ = SwapDouble(p->digRcvrClockFreq_); + p->cohoFreq_ = SwapDouble(p->cohoFreq_); + p->azCorrectionFactor_ = SwapFloat(p->azCorrectionFactor_); + p->elCorrectionFactor_ = SwapFloat(p->elCorrectionFactor_); + p->antManualSetup_.ielmin_ = + static_cast(ntohl(p->antManualSetup_.ielmin_)); + p->antManualSetup_.ielmax_ = + static_cast(ntohl(p->antManualSetup_.ielmax_)); p->antManualSetup_.fazvelmax_ = ntohl(p->antManualSetup_.fazvelmax_); p->antManualSetup_.felvelmax_ = ntohl(p->antManualSetup_.felvelmax_); - p->antManualSetup_.igndHgt_ = ntohl(p->antManualSetup_.igndHgt_); - p->antManualSetup_.iradHgt_ = ntohl(p->antManualSetup_.iradHgt_); - p->azPosSustainDrive_ = SwapFloat(p->azPosSustainDrive_); - p->azNegSustainDrive_ = SwapFloat(p->azNegSustainDrive_); - p->azNomPosDriveSlope_ = SwapFloat(p->azNomPosDriveSlope_); - p->azNomNegDriveSlope_ = SwapFloat(p->azNomNegDriveSlope_); - p->azFeedbackSlope_ = SwapFloat(p->azFeedbackSlope_); - p->elPosSustainDrive_ = SwapFloat(p->elPosSustainDrive_); - p->elNegSustainDrive_ = SwapFloat(p->elNegSustainDrive_); - p->elNomPosDriveSlope_ = SwapFloat(p->elNomPosDriveSlope_); - p->elNomNegDriveSlope_ = SwapFloat(p->elNomNegDriveSlope_); - p->elFeedbackSlope_ = SwapFloat(p->elFeedbackSlope_); - p->elFirstSlope_ = SwapFloat(p->elFirstSlope_); - p->elSecondSlope_ = SwapFloat(p->elSecondSlope_); - p->elThirdSlope_ = SwapFloat(p->elThirdSlope_); - p->elDroopPos_ = SwapFloat(p->elDroopPos_); - p->elOffNeutralDrive_ = SwapFloat(p->elOffNeutralDrive_); - p->azIntertia_ = SwapFloat(p->azIntertia_); - p->elInertia_ = SwapFloat(p->elInertia_); - p->azStowAngle_ = SwapFloat(p->azStowAngle_); - p->elStowAngle_ = SwapFloat(p->elStowAngle_); - p->azEncoderAlignment_ = SwapFloat(p->azEncoderAlignment_); - p->elEncoderAlignment_ = SwapFloat(p->elEncoderAlignment_); - p->rvp8nvIwaveguideLength_ = ntohl(p->rvp8nvIwaveguideLength_); + p->antManualSetup_.igndHgt_ = + static_cast(ntohl(p->antManualSetup_.igndHgt_)); + p->antManualSetup_.iradHgt_ = ntohl(p->antManualSetup_.iradHgt_); + p->azPosSustainDrive_ = SwapFloat(p->azPosSustainDrive_); + p->azNegSustainDrive_ = SwapFloat(p->azNegSustainDrive_); + p->azNomPosDriveSlope_ = SwapFloat(p->azNomPosDriveSlope_); + p->azNomNegDriveSlope_ = SwapFloat(p->azNomNegDriveSlope_); + p->azFeedbackSlope_ = SwapFloat(p->azFeedbackSlope_); + p->elPosSustainDrive_ = SwapFloat(p->elPosSustainDrive_); + p->elNegSustainDrive_ = SwapFloat(p->elNegSustainDrive_); + p->elNomPosDriveSlope_ = SwapFloat(p->elNomPosDriveSlope_); + p->elNomNegDriveSlope_ = SwapFloat(p->elNomNegDriveSlope_); + p->elFeedbackSlope_ = SwapFloat(p->elFeedbackSlope_); + p->elFirstSlope_ = SwapFloat(p->elFirstSlope_); + p->elSecondSlope_ = SwapFloat(p->elSecondSlope_); + p->elThirdSlope_ = SwapFloat(p->elThirdSlope_); + p->elDroopPos_ = SwapFloat(p->elDroopPos_); + p->elOffNeutralDrive_ = SwapFloat(p->elOffNeutralDrive_); + p->azIntertia_ = SwapFloat(p->azIntertia_); + p->elInertia_ = SwapFloat(p->elInertia_); + p->azStowAngle_ = SwapFloat(p->azStowAngle_); + p->elStowAngle_ = SwapFloat(p->elStowAngle_); + p->azEncoderAlignment_ = SwapFloat(p->azEncoderAlignment_); + p->elEncoderAlignment_ = SwapFloat(p->elEncoderAlignment_); + p->rvp8nvIwaveguideLength_ = ntohl(p->rvp8nvIwaveguideLength_); SwapArray(p->vRnscale_); @@ -1660,6 +1668,4 @@ RdaAdaptationData::Create(Level2MessageHeader&& header, std::istream& is) return message; } -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda diff --git a/wxdata/source/scwx/wsr88d/rda/rda_status_data.cpp b/wxdata/source/scwx/wsr88d/rda/rda_status_data.cpp index 50ebd596..375d46b8 100644 --- a/wxdata/source/scwx/wsr88d/rda/rda_status_data.cpp +++ b/wxdata/source/scwx/wsr88d/rda/rda_status_data.cpp @@ -1,209 +1,214 @@ #include #include -namespace scwx -{ -namespace wsr88d -{ -namespace rda +namespace scwx::wsr88d::rda { static const std::string logPrefix_ = "scwx::wsr88d::rda::rda_status_data"; static const auto logger_ = util::Logger::Create(logPrefix_); -class RdaStatusDataImpl +class RdaStatusData::Impl { public: - explicit RdaStatusDataImpl() = default; - ~RdaStatusDataImpl() = default; + explicit Impl() = default; + ~Impl() = default; - uint16_t rdaStatus_ {0}; - uint16_t operabilityStatus_ {0}; - uint16_t controlStatus_ {0}; - uint16_t auxiliaryPowerGeneratorState_ {0}; - uint16_t averageTransmitterPower_ {0}; - int16_t horizontalReflectivityCalibrationCorrection_ {0}; - uint16_t dataTransmissionEnabled_ {0}; - uint16_t volumeCoveragePatternNumber_ {0}; - uint16_t rdaControlAuthorization_ {0}; - uint16_t rdaBuildNumber_ {0}; - uint16_t operationalMode_ {0}; - uint16_t superResolutionStatus_ {0}; - uint16_t clutterMitigationDecisionStatus_ {0}; - uint16_t rdaScanAndDataFlags_ {0}; - uint16_t rdaAlarmSummary_ {0}; - uint16_t commandAcknowledgement_ {0}; - uint16_t channelControlStatus_ {0}; - uint16_t spotBlankingStatus_ {0}; - uint16_t bypassMapGenerationDate_ {0}; - uint16_t bypassMapGenerationTime_ {0}; - uint16_t clutterFilterMapGenerationDate_ {0}; - uint16_t clutterFilterMapGenerationTime_ {0}; - int16_t verticalReflectivityCalibrationCorrection_ {0}; - uint16_t transitionPowerSourceStatus_ {0}; - uint16_t rmsControlStatus_ {0}; - uint16_t performanceCheckStatus_ {0}; - std::array alarmCodes_ {0}; - uint16_t signalProcessingOptions_ {0}; - uint16_t downloadedPatternNumber_ {0}; - uint16_t statusVersion_ {0}; + Impl(const Impl&) = delete; + Impl& operator=(const Impl&) = delete; + Impl(const Impl&&) = delete; + Impl& operator=(const Impl&&) = delete; + + std::uint16_t rdaStatus_ {0}; + std::uint16_t operabilityStatus_ {0}; + std::uint16_t controlStatus_ {0}; + std::uint16_t auxiliaryPowerGeneratorState_ {0}; + std::uint16_t averageTransmitterPower_ {0}; + std::int16_t horizontalReflectivityCalibrationCorrection_ {0}; + std::uint16_t dataTransmissionEnabled_ {0}; + std::uint16_t volumeCoveragePatternNumber_ {0}; + std::uint16_t rdaControlAuthorization_ {0}; + std::uint16_t rdaBuildNumber_ {0}; + std::uint16_t operationalMode_ {0}; + std::uint16_t superResolutionStatus_ {0}; + std::uint16_t clutterMitigationDecisionStatus_ {0}; + std::uint16_t rdaScanAndDataFlags_ {0}; + std::uint16_t rdaAlarmSummary_ {0}; + std::uint16_t commandAcknowledgement_ {0}; + std::uint16_t channelControlStatus_ {0}; + std::uint16_t spotBlankingStatus_ {0}; + std::uint16_t bypassMapGenerationDate_ {0}; + std::uint16_t bypassMapGenerationTime_ {0}; + std::uint16_t clutterFilterMapGenerationDate_ {0}; + std::uint16_t clutterFilterMapGenerationTime_ {0}; + std::int16_t verticalReflectivityCalibrationCorrection_ {0}; + std::uint16_t transitionPowerSourceStatus_ {0}; + std::uint16_t rmsControlStatus_ {0}; + std::uint16_t performanceCheckStatus_ {0}; + + // NOLINTNEXTLINE(cppcoreguidelines-avoid-magic-numbers) + std::array alarmCodes_ {0}; + + std::uint16_t signalProcessingOptions_ {0}; + std::uint16_t downloadedPatternNumber_ {0}; + std::uint16_t statusVersion_ {0}; }; -RdaStatusData::RdaStatusData() : - Level2Message(), p(std::make_unique()) -{ -} +RdaStatusData::RdaStatusData() : Level2Message(), p(std::make_unique()) {} RdaStatusData::~RdaStatusData() = default; RdaStatusData::RdaStatusData(RdaStatusData&&) noexcept = default; RdaStatusData& RdaStatusData::operator=(RdaStatusData&&) noexcept = default; -uint16_t RdaStatusData::rda_status() const +std::uint16_t RdaStatusData::rda_status() const { return p->rdaStatus_; } -uint16_t RdaStatusData::operability_status() const +std::uint16_t RdaStatusData::operability_status() const { return p->operabilityStatus_; } -uint16_t RdaStatusData::control_status() const +std::uint16_t RdaStatusData::control_status() const { return p->controlStatus_; } -uint16_t RdaStatusData::auxiliary_power_generator_state() const +std::uint16_t RdaStatusData::auxiliary_power_generator_state() const { return p->auxiliaryPowerGeneratorState_; } -uint16_t RdaStatusData::average_transmitter_power() const +std::uint16_t RdaStatusData::average_transmitter_power() const { return p->averageTransmitterPower_; } float RdaStatusData::horizontal_reflectivity_calibration_correction() const { - return p->horizontalReflectivityCalibrationCorrection_ * 0.01f; + constexpr float kScale_ = 0.01f; + return static_cast(p->horizontalReflectivityCalibrationCorrection_) * + kScale_; } -uint16_t RdaStatusData::data_transmission_enabled() const +std::uint16_t RdaStatusData::data_transmission_enabled() const { return p->dataTransmissionEnabled_; } -uint16_t RdaStatusData::volume_coverage_pattern_number() const +std::uint16_t RdaStatusData::volume_coverage_pattern_number() const { return p->volumeCoveragePatternNumber_; } -uint16_t RdaStatusData::rda_control_authorization() const +std::uint16_t RdaStatusData::rda_control_authorization() const { return p->rdaControlAuthorization_; } -uint16_t RdaStatusData::rda_build_number() const +std::uint16_t RdaStatusData::rda_build_number() const { return p->rdaBuildNumber_; } -uint16_t RdaStatusData::operational_mode() const +std::uint16_t RdaStatusData::operational_mode() const { return p->operationalMode_; } -uint16_t RdaStatusData::super_resolution_status() const +std::uint16_t RdaStatusData::super_resolution_status() const { return p->superResolutionStatus_; } -uint16_t RdaStatusData::clutter_mitigation_decision_status() const +std::uint16_t RdaStatusData::clutter_mitigation_decision_status() const { return p->clutterMitigationDecisionStatus_; } -uint16_t RdaStatusData::rda_scan_and_data_flags() const +std::uint16_t RdaStatusData::rda_scan_and_data_flags() const { return p->rdaScanAndDataFlags_; } -uint16_t RdaStatusData::rda_alarm_summary() const +std::uint16_t RdaStatusData::rda_alarm_summary() const { return p->rdaAlarmSummary_; } -uint16_t RdaStatusData::command_acknowledgement() const +std::uint16_t RdaStatusData::command_acknowledgement() const { return p->commandAcknowledgement_; } -uint16_t RdaStatusData::channel_control_status() const +std::uint16_t RdaStatusData::channel_control_status() const { return p->channelControlStatus_; } -uint16_t RdaStatusData::spot_blanking_status() const +std::uint16_t RdaStatusData::spot_blanking_status() const { return p->spotBlankingStatus_; } -uint16_t RdaStatusData::bypass_map_generation_date() const +std::uint16_t RdaStatusData::bypass_map_generation_date() const { return p->bypassMapGenerationDate_; } -uint16_t RdaStatusData::bypass_map_generation_time() const +std::uint16_t RdaStatusData::bypass_map_generation_time() const { return p->bypassMapGenerationTime_; } -uint16_t RdaStatusData::clutter_filter_map_generation_date() const +std::uint16_t RdaStatusData::clutter_filter_map_generation_date() const { return p->clutterFilterMapGenerationDate_; } -uint16_t RdaStatusData::clutter_filter_map_generation_time() const +std::uint16_t RdaStatusData::clutter_filter_map_generation_time() const { return p->clutterFilterMapGenerationTime_; } float RdaStatusData::vertical_reflectivity_calibration_correction() const { - return p->verticalReflectivityCalibrationCorrection_ * 0.01f; + constexpr float kScale_ = 0.01f; + return static_cast(p->verticalReflectivityCalibrationCorrection_) * + kScale_; } -uint16_t RdaStatusData::transition_power_source_status() const +std::uint16_t RdaStatusData::transition_power_source_status() const { return p->transitionPowerSourceStatus_; } -uint16_t RdaStatusData::rms_control_status() const +std::uint16_t RdaStatusData::rms_control_status() const { return p->rmsControlStatus_; } -uint16_t RdaStatusData::performance_check_status() const +std::uint16_t RdaStatusData::performance_check_status() const { return p->performanceCheckStatus_; } -uint16_t RdaStatusData::alarm_codes(unsigned i) const +std::uint16_t RdaStatusData::alarm_codes(unsigned i) const { - return p->alarmCodes_[i]; + return p->alarmCodes_.at(i); } -uint16_t RdaStatusData::signal_processing_options() const +std::uint16_t RdaStatusData::signal_processing_options() const { return p->signalProcessingOptions_; } -uint16_t RdaStatusData::downloaded_pattern_number() const +std::uint16_t RdaStatusData::downloaded_pattern_number() const { return p->downloadedPatternNumber_; } -uint16_t RdaStatusData::status_version() const +std::uint16_t RdaStatusData::status_version() const { return p->statusVersion_; } @@ -215,6 +220,7 @@ bool RdaStatusData::Parse(std::istream& is) bool messageValid = true; size_t bytesRead = 0; + // NOLINTBEGIN(cppcoreguidelines-avoid-magic-numbers): Readability is.read(reinterpret_cast(&p->rdaStatus_), 2); // 1 is.read(reinterpret_cast(&p->operabilityStatus_), 2); // 2 is.read(reinterpret_cast(&p->controlStatus_), 2); // 3 @@ -249,7 +255,7 @@ bool RdaStatusData::Parse(std::istream& is) is.read(reinterpret_cast(&p->rmsControlStatus_), 2); // 25 is.read(reinterpret_cast(&p->performanceCheckStatus_), 2); // 26 is.read(reinterpret_cast(&p->alarmCodes_), - p->alarmCodes_.size() * 2); // 27-40 + static_cast(p->alarmCodes_.size() * 2)); // 27-40 bytesRead += 80; p->rdaStatus_ = ntohs(p->rdaStatus_); @@ -257,8 +263,8 @@ bool RdaStatusData::Parse(std::istream& is) p->controlStatus_ = ntohs(p->controlStatus_); p->auxiliaryPowerGeneratorState_ = ntohs(p->auxiliaryPowerGeneratorState_); p->averageTransmitterPower_ = ntohs(p->averageTransmitterPower_); - p->horizontalReflectivityCalibrationCorrection_ = - ntohs(p->horizontalReflectivityCalibrationCorrection_); + p->horizontalReflectivityCalibrationCorrection_ = static_cast( + ntohs(p->horizontalReflectivityCalibrationCorrection_)); p->dataTransmissionEnabled_ = ntohs(p->dataTransmissionEnabled_); p->volumeCoveragePatternNumber_ = ntohs(p->volumeCoveragePatternNumber_); p->rdaControlAuthorization_ = ntohs(p->rdaControlAuthorization_); @@ -278,15 +284,16 @@ bool RdaStatusData::Parse(std::istream& is) ntohs(p->clutterFilterMapGenerationDate_); p->clutterFilterMapGenerationTime_ = ntohs(p->clutterFilterMapGenerationTime_); - p->verticalReflectivityCalibrationCorrection_ = - ntohs(p->verticalReflectivityCalibrationCorrection_); + p->verticalReflectivityCalibrationCorrection_ = static_cast( + ntohs(p->verticalReflectivityCalibrationCorrection_)); p->transitionPowerSourceStatus_ = ntohs(p->transitionPowerSourceStatus_); p->rmsControlStatus_ = ntohs(p->rmsControlStatus_); p->performanceCheckStatus_ = ntohs(p->performanceCheckStatus_); SwapArray(p->alarmCodes_); // RDA Build 18.0 increased the size of the message from 80 to 120 bytes - if (header().message_size() * 2 > Level2MessageHeader::SIZE + 80) + if (static_cast(header().message_size()) * 2 > + Level2MessageHeader::SIZE + 80) { is.read(reinterpret_cast(&p->signalProcessingOptions_), 2); // 41 is.seekg(34, std::ios_base::cur); // 42-58 @@ -297,6 +304,8 @@ bool RdaStatusData::Parse(std::istream& is) p->signalProcessingOptions_ = ntohs(p->signalProcessingOptions_); p->statusVersion_ = ntohs(p->statusVersion_); } + + // NOLINTEND(cppcoreguidelines-avoid-magic-numbers) if (!ValidateMessage(is, bytesRead)) { @@ -320,6 +329,4 @@ RdaStatusData::Create(Level2MessageHeader&& header, std::istream& is) return message; } -} // namespace rda -} // namespace wsr88d -} // namespace scwx +} // namespace scwx::wsr88d::rda