#include "hkdisplay.h" HKDisplay::HKDisplay(QWidget *parent) : QWidget(parent) { QFont font; font = QFont(this->fontInfo().family(), HK_INFORMATION_FONT_SIZE, QFont::Light); mainLayout = new QGridLayout(); setupLFRStatusWord(); setupLFRSWVersion(); setupLFR_FPGA_Version(); setupVE1E2(); setupResourcesStatistics(); setupTCStatistics(); setupAnomalyStatistics(); setupSpaceWireIFStatistics(); setupErrorCountersSpaceWire(); groupbox_lfrStatusWord->setFont(font); groupbox_lfrSWVersion->setFont(font); groupbox_lfr_FPGA_Version->setFont(font); groupbox_v_e1_e2->setFont(font); groupbox_resourceStatistics->setFont(font); groupbox_tcStatistics->setFont(font); groupbox_anomalyStatistics->setFont(font); groupbox_spacewireIFStatisctics->setFont(font); groupbox_errorCountersSpaceWire->setFont(font); mainLayout->addWidget(groupbox_lfrStatusWord, 0,0,1,1); mainLayout->addWidget(groupbox_lfrSWVersion, 0,1,1,1); mainLayout->addWidget(groupbox_lfr_FPGA_Version, 0,2,1,1); mainLayout->addWidget(groupbox_v_e1_e2, 0,3,1,1); mainLayout->addWidget(groupbox_resourceStatistics, 0,4,1,1); mainLayout->addWidget(groupbox_tcStatistics, 1,0,1,1); mainLayout->addWidget(groupbox_spacewireIFStatisctics, 1, 1, 1, 1); mainLayout->addWidget(groupbox_errorCountersSpaceWire, 1, 2, 1, 1); mainLayout->addWidget(groupbox_anomalyStatistics, 1,3,1,1); mainLayout->setColumnStretch(4, 1); mainLayout->setRowStretch(2, 1); this->setLayout(mainLayout); } void HKDisplay::setupLFRStatusWord() { groupbox_lfrStatusWord = new QGroupBox("LFR Status Word"); box_lfrStatusWord = new QVBoxLayout(); hk_lfr_mode = new QLabel("hk_lfr_mode: -"); hk_lfr_dpu_spw_enabled = new QLabel("hk_lfr_dpu_spw_enabled: -"); hk_lfr_dpu_link_state = new QLabel("hk_lfr_dpu_link_state: -"); hk_lfr_dpu_spare = new QLabel("hk_lfr_dpu_spare: -"); sy_lfr_watchdog_enabled = new QLabel("sy_lfr_watchdog_enabled: -"); hk_lfr_calib_enabled = new QLabel("hk_lfr_calib_enabled: -"); hk_lfr_reset_cause = new QLabel("hk_lfr_reset_cause: -"); box_lfrStatusWord->addWidget(hk_lfr_mode); box_lfrStatusWord->addWidget(hk_lfr_dpu_spw_enabled); box_lfrStatusWord->addWidget(hk_lfr_dpu_link_state); box_lfrStatusWord->addWidget(hk_lfr_dpu_spare); box_lfrStatusWord->addWidget(sy_lfr_watchdog_enabled); box_lfrStatusWord->addWidget(hk_lfr_calib_enabled); box_lfrStatusWord->addWidget(hk_lfr_reset_cause); box_lfrStatusWord->insertStretch(6); groupbox_lfrStatusWord->setLayout(box_lfrStatusWord); } void HKDisplay::setupLFRSWVersion() { groupbox_lfrSWVersion = new QGroupBox("LFR Software Version"); box_lfrSWVersion = new QVBoxLayout(); sy_lfr_sw_version_n1 = new QLabel("sy_lfr_sw_version_n1: -"); sy_lfr_sw_version_n2 = new QLabel("sy_lfr_sw_version_n2: -"); sy_lfr_sw_version_n3 = new QLabel("sy_lfr_sw_version_n3: -"); sy_lfr_sw_version_n4 = new QLabel("sy_lfr_sw_version_n4: -"); box_lfrSWVersion->addWidget(sy_lfr_sw_version_n1); box_lfrSWVersion->addWidget(sy_lfr_sw_version_n2); box_lfrSWVersion->addWidget(sy_lfr_sw_version_n3); box_lfrSWVersion->addWidget(sy_lfr_sw_version_n4); box_lfrSWVersion->insertStretch(4); groupbox_lfrSWVersion->setLayout(box_lfrSWVersion); } void HKDisplay::setupLFR_FPGA_Version() { groupbox_lfr_FPGA_Version = new QGroupBox("LFR FPGA Version"); box_lfr_FPGA_Version = new QVBoxLayout(); sy_lfr_fpga_version_n1 = new QLabel("sy_lfr_fpga_version_n1: -"); sy_lfr_fpga_version_n2 = new QLabel("sy_lfr_fpga_version_n2: -"); sy_lfr_fpga_version_n3 = new QLabel("sy_lfr_fpga_version_n3: -"); box_lfr_FPGA_Version->addWidget(sy_lfr_fpga_version_n1); box_lfr_FPGA_Version->addWidget(sy_lfr_fpga_version_n2); box_lfr_FPGA_Version->addWidget(sy_lfr_fpga_version_n3); box_lfr_FPGA_Version->insertStretch(3); groupbox_lfr_FPGA_Version->setLayout(box_lfr_FPGA_Version); } void HKDisplay::setupVE1E2() { groupbox_v_e1_e2 = new QGroupBox("V E1 E2 @ 16 Hz"); box_v_e1_e2 = new QVBoxLayout(); hk_lfr_sc_v_f3 = new QLabel("v_f3: -"); hk_lfr_sc_e1_f3 = new QLabel("e1_f3: -"); hk_lfr_sc_e2_f3 = new QLabel("e2_f3: -"); box_v_e1_e2->addWidget(hk_lfr_sc_v_f3); box_v_e1_e2->addWidget(hk_lfr_sc_e1_f3); box_v_e1_e2->addWidget(hk_lfr_sc_e2_f3); box_v_e1_e2->insertStretch(3); groupbox_v_e1_e2->setLayout(box_v_e1_e2); } void HKDisplay::setupResourcesStatistics() { groupbox_resourceStatistics = new QGroupBox("cpu load"); box_resourceStatistics = new QVBoxLayout(); hk_lfr_cpu_load = new QLabel("load: -"); hk_lfr_cpu_load_max = new QLabel("load max: -"); hk_lfr_cpu_load_ave = new QLabel("load ave: -"); box_resourceStatistics->addWidget(hk_lfr_cpu_load); box_resourceStatistics->addWidget(hk_lfr_cpu_load_max); box_resourceStatistics->addWidget(hk_lfr_cpu_load_ave); box_resourceStatistics->insertStretch(3); groupbox_resourceStatistics->setLayout(box_resourceStatistics); } void HKDisplay::setupTCStatistics() { groupbox_tcStatistics = new QGroupBox("TC Statistics"); box_tcStatistics = new QVBoxLayout(); hk_lfr_update_info_tc_cnt = new QLabel("hk_lfr_update_info_tc_cnt: -"); hk_lfr_update_time_tc_cnt = new QLabel("hk_lfr_update_time_tc_cnt: -"); hk_lfr_exe_tc_cnt = new QLabel("hk_lfr_exe_tc_cnt: -"); hk_lfr_rej_tc_cnt = new QLabel("hk_lfr_rej_tc_cnt: -"); hk_lfr_last_exe_tc_id = new QLabel("hk_lfr_last_exe_tc_id: -"); hk_lfr_last_exe_tc_type = new QLabel("hk_lfr_last_exe_tc_type: -"); hk_lfr_last_exe_tc_subtype = new QLabel("hk_lfr_last_exe_tc_subtype: -"); hk_lfr_last_exe_tc_time = new QLabel("hk_lfr_last_exe_tc_time: -"); hk_lfr_last_rej_tc_id = new QLabel("hk_lfr_last_rej_tc_id: -"); hk_lfr_last_rej_tc_type = new QLabel("hk_lfr_last_rej_tc_type: -"); hk_lfr_last_rej_tc_subtype = new QLabel("hk_lfr_last_rej_tc_subtype: -"); hk_lfr_last_rej_tc_time = new QLabel("hk_lfr_last_rej_tc_time: -"); box_tcStatistics->addWidget(hk_lfr_update_info_tc_cnt); box_tcStatistics->addWidget(hk_lfr_update_time_tc_cnt); box_tcStatistics->addWidget(hk_lfr_exe_tc_cnt); box_tcStatistics->addWidget(hk_lfr_rej_tc_cnt); box_tcStatistics->addWidget(hk_lfr_last_exe_tc_id); box_tcStatistics->addWidget(hk_lfr_last_exe_tc_type); box_tcStatistics->addWidget(hk_lfr_last_exe_tc_subtype); box_tcStatistics->addWidget(hk_lfr_last_exe_tc_time); box_tcStatistics->addWidget(hk_lfr_last_rej_tc_id); box_tcStatistics->addWidget(hk_lfr_last_rej_tc_type); box_tcStatistics->addWidget(hk_lfr_last_rej_tc_subtype); box_tcStatistics->addWidget(hk_lfr_last_rej_tc_time); box_tcStatistics->insertStretch(12, 1); groupbox_tcStatistics->setLayout(box_tcStatistics); } void HKDisplay::setupAnomalyStatistics() { groupbox_anomalyStatistics = new QGroupBox("Anomaly Statistics"); box_anomalyStatistics = new QVBoxLayout(); hk_lfr_le_cnt = new QLabel("hk_lfr_le_cnt: -"); hk_lfr_me_cnt = new QLabel("hk_lfr_me_cnt: -"); hk_lfr_he_cnt = new QLabel("hk_lfr_he_cnt: -"); hk_lfr_last_er_rid = new QLabel("hk_lfr_last_er_rid: -"); hk_lfr_last_er_code = new QLabel("hk_lfr_last_er_code: -"); hk_lfr_last_er_time = new QLabel("hk_lfr_last_er_time: -"); box_anomalyStatistics->addWidget(hk_lfr_le_cnt); box_anomalyStatistics->addWidget(hk_lfr_me_cnt); box_anomalyStatistics->addWidget(hk_lfr_he_cnt); box_anomalyStatistics->addWidget(hk_lfr_last_er_rid); box_anomalyStatistics->addWidget(hk_lfr_last_er_code); box_anomalyStatistics->addWidget(hk_lfr_last_er_time); box_anomalyStatistics->insertStretch(6, 1); groupbox_anomalyStatistics->setLayout(box_anomalyStatistics); } void HKDisplay::setupSpaceWireIFStatistics() { groupbox_spacewireIFStatisctics = new QGroupBox("SpaceWire IF Statistics"); box_spacewireIFStatisctics = new QVBoxLayout(); hk_lfr_dpu_spw_pkt_rcv_cnt = new QLabel("hk_lfr_dpu_spw_pkt_rcv_cnt: -"); hk_lfr_dpu_spw_pkt_sent_cnt = new QLabel("hk_lfr_dpu_spw_pkt_sent_cnt: -"); hk_lfr_dpu_spw_tick_out_cnt = new QLabel("hk_lfr_dpu_spw_tick_out_cnt: -"); hk_lfr_dpu_spw_last_timc = new QLabel("hk_lfr_dpu_spw_last_timc: -"); box_spacewireIFStatisctics->addWidget(hk_lfr_dpu_spw_pkt_rcv_cnt); box_spacewireIFStatisctics->addWidget(hk_lfr_dpu_spw_pkt_sent_cnt); box_spacewireIFStatisctics->addWidget(hk_lfr_dpu_spw_tick_out_cnt); box_spacewireIFStatisctics->addWidget(hk_lfr_dpu_spw_last_timc); box_spacewireIFStatisctics->insertStretch(5); groupbox_spacewireIFStatisctics->setLayout(box_spacewireIFStatisctics->layout()); } void HKDisplay::setupErrorCountersSpaceWire() { groupbox_errorCountersSpaceWire = new QGroupBox("SpaceWire Error Counters"); box_errorCountersSpaceWire = new QVBoxLayout(); hk_lfr_dpu_spw_parity = new QLabel("hk_lfr_dpu_spw_parity: -"); hk_lfr_dpu_spw_disconnect = new QLabel("hk_lfr_dpu_spw_disconnect: -"); hk_lfr_dpu_spw_escape = new QLabel("hk_lfr_dpu_spw_escape: -"); hk_lfr_dpu_spw_credit = new QLabel("hk_lfr_dpu_spw_credit: -"); hk_lfr_dpu_spw_write_sync = new QLabel("hk_lfr_dpu_spw_write_sync: -"); hk_lfr_dpu_spw_rx_ahb = new QLabel("hk_lfr_dpu_spw_rx_ahb: -"); hk_lfr_dpu_spw_tx_ahb = new QLabel("hk_lfr_dpu_spw_tx_ahb: -"); hk_lfr_dpu_spw_early_eop = new QLabel("hk_lfr_dpu_spw_early_eop: -"); hk_lfr_dpu_spw_invalid_addr = new QLabel("hk_lfr_dpu_spw_invalid_addr: -"); hk_lfr_dpu_spw_eep = new QLabel("hk_lfr_dpu_spw_eep: -"); hk_lfr_dpu_spw_rx_too_big = new QLabel("hk_lfr_dpu_spw_rx_too_big: -"); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_parity); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_disconnect); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_escape); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_credit); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_write_sync); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_rx_ahb); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_tx_ahb); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_early_eop); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_invalid_addr); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_eep); box_errorCountersSpaceWire->addWidget(hk_lfr_dpu_spw_rx_too_big); groupbox_errorCountersSpaceWire->setLayout(box_errorCountersSpaceWire->layout()); } void HKDisplay::displayPacket(TMPacketToRead *tmPacketToRead) { Packet_TM_LFR_HK_t *housekeepingPacket; if (tmPacketToRead->size != (PACKET_LENGTH_HK+CCSDS_TC_TM_PACKET_OFFSET+CCSDS_PROTOCOLE_EXTRA_BYTES)) { emit displayMessage("in displayPacket *** HK packet size is " + QString::number(tmPacketToRead->size) + " instead of " + QString::number(PACKET_LENGTH_HK+CCSDS_TC_TM_PACKET_OFFSET+CCSDS_PROTOCOLE_EXTRA_BYTES)); } else { housekeepingPacket = (Packet_TM_LFR_HK_t *) tmPacketToRead->Value; update_lfr_status_word( housekeepingPacket ); updateSWVersion( housekeepingPacket ); update_FPGA_version( housekeepingPacket ); update_v_e1_e2( housekeepingPacket ); updateResourceStatistics( housekeepingPacket ); updateTCStatistics( housekeepingPacket ); updateAnomalyStatistics( housekeepingPacket ); updateSpaceWireIFStatistics( housekeepingPacket ); updateErrorCountersSpaceWire( housekeepingPacket ); } } void HKDisplay::update_lfr_status_word(Packet_TM_LFR_HK_t *housekeepingPacket) { hk_lfr_mode->setText("hk_lfr_mode: " +QString::number( ( (housekeepingPacket->lfr_status_word[0] & 0xf0) >> 4 ) ) ); hk_lfr_dpu_spw_enabled->setText("hk_lfr_dpu_spw_enabled: " +QString::number( ( (housekeepingPacket->lfr_status_word[0] & 0x08) >> 3 ) ) ); hk_lfr_dpu_link_state->setText("hk_lfr_dpu_link_state: " +QString::number( ( (housekeepingPacket->lfr_status_word[0] & 0x07) >> 0 ) ) ); hk_lfr_dpu_spare->setText("hk_lfr_dpu_spare: " +QString::number( ( (housekeepingPacket->lfr_status_word[1] & 0xe0) >> 5 ) ) ); sy_lfr_watchdog_enabled->setText("sy_lfr_watchdog_enabled: " +QString::number( ( (housekeepingPacket->lfr_status_word[1] & 0x10) >> 4 ) ) ); hk_lfr_calib_enabled->setText("hk_lfr_calib_enabled: " +QString::number( ( (housekeepingPacket->lfr_status_word[1] & 0x08) >> 3 ) ) ); hk_lfr_reset_cause->setText(" hk_lfr_reset_cause: " +QString::number( ( (housekeepingPacket->lfr_status_word[1] & 0x07) >> 0 ) ) ); } void HKDisplay::updateSWVersion(Packet_TM_LFR_HK_t *housekeepingPacket) { sy_lfr_sw_version_n1->setText("sy_lfr_sw_version_n1: " +QString::number( housekeepingPacket->lfr_sw_version[0] ) ); sy_lfr_sw_version_n2->setText("sy_lfr_sw_version_n2: " +QString::number( housekeepingPacket->lfr_sw_version[1] ) ); sy_lfr_sw_version_n3->setText("sy_lfr_sw_version_n3: " +QString::number( housekeepingPacket->lfr_sw_version[2] ) ); sy_lfr_sw_version_n4->setText("sy_lfr_sw_version_n4: " +QString::number( housekeepingPacket->lfr_sw_version[3] ) ); } void HKDisplay::update_FPGA_version(Packet_TM_LFR_HK_t *housekeepingPacket) { sy_lfr_fpga_version_n1->setText("sy_lfr_fpga_version_n1: " +QString::number( housekeepingPacket->lfr_fpga_version[0] ) ); sy_lfr_fpga_version_n2->setText("sy_lfr_fpga_version_n2: " +QString::number( housekeepingPacket->lfr_fpga_version[1] ) ); sy_lfr_fpga_version_n3->setText("sy_lfr_fpga_version_n3: " +QString::number( housekeepingPacket->lfr_fpga_version[2] ) ); } void HKDisplay::update_v_e1_e2(Packet_TM_LFR_HK_t *housekeepingPacket) { short v; short e1; short e2; v = (short) (housekeepingPacket->hk_lfr_sc_v_f3[0] << 8) + housekeepingPacket->hk_lfr_sc_v_f3[1]; e1 = (short) (housekeepingPacket->hk_lfr_sc_e1_f3[0] << 8) + housekeepingPacket->hk_lfr_sc_e1_f3[1]; e2 = (short) (housekeepingPacket->hk_lfr_sc_e2_f3[0] << 8) + housekeepingPacket->hk_lfr_sc_e2_f3[1]; hk_lfr_sc_v_f3->setText( "v_f3: " + QString::number( v ) ); hk_lfr_sc_e1_f3->setText("e1_f3: " + QString::number( e1 ) ); hk_lfr_sc_e2_f3->setText("e2_f3: " + QString::number( e2 ) ); } void HKDisplay::updateResourceStatistics(Packet_TM_LFR_HK_t *housekeepingPacket) { unsigned char cpu_load; unsigned char cpu_load_max; unsigned char cpu_load_ave; cpu_load = housekeepingPacket->hk_lfr_cpu_load; cpu_load_max = housekeepingPacket->hk_lfr_cpu_load_max; cpu_load_ave = housekeepingPacket->hk_lfr_cpu_load_aver; hk_lfr_cpu_load->setText( "load: " + QString::number( cpu_load ) ); hk_lfr_cpu_load_max->setText( "load max: " + QString::number( cpu_load_max ) ); hk_lfr_cpu_load_ave->setText( "load ave: " + QString::number( cpu_load_ave ) ); } void HKDisplay::updateTCStatistics(Packet_TM_LFR_HK_t *housekeepingPacket) { // TC Statistics hk_lfr_update_info_tc_cnt->setText("hk_lfr_update_info_tc_cnt: " + QString::number( housekeepingPacket->hk_lfr_update_info_tc_cnt[0] * 256 + housekeepingPacket->hk_lfr_update_info_tc_cnt[1]) ); hk_lfr_update_time_tc_cnt->setText("hk_lfr_update_time_tc_cnt: " + QString::number( housekeepingPacket->hk_lfr_update_time_tc_cnt[0] * 256 + housekeepingPacket->hk_lfr_update_time_tc_cnt[1]) ); hk_lfr_exe_tc_cnt->setText("hk_lfr_exe_tc_cnt: " + QString::number( housekeepingPacket->hk_lfr_exe_tc_cnt[0] * 256 + housekeepingPacket->hk_lfr_exe_tc_cnt[1]) ); hk_lfr_rej_tc_cnt->setText("hk_lfr_rej_tc_cnt: " + QString::number( housekeepingPacket->hk_lfr_rej_tc_cnt[0] * 256 + housekeepingPacket->hk_lfr_rej_tc_cnt[1]) ); hk_lfr_last_exe_tc_id->setText("hk_lfr_last_exe_tc_id: " + QString::number( housekeepingPacket->hk_lfr_last_exe_tc_id[0] * 256 + housekeepingPacket->hk_lfr_last_exe_tc_id[1], 16) ); hk_lfr_last_exe_tc_type->setText("hk_lfr_last_exe_tc_type: " + QString::number( housekeepingPacket->hk_lfr_last_exe_tc_type[0] * 256 + housekeepingPacket->hk_lfr_last_exe_tc_type[1]) ); hk_lfr_last_exe_tc_subtype->setText("hk_lfr_last_exe_tc_subtype: " + QString::number( housekeepingPacket->hk_lfr_last_exe_tc_subtype[0] * 256 + housekeepingPacket->hk_lfr_last_exe_tc_subtype[1]) ); hk_lfr_last_exe_tc_time->setText("hk_lfr_last_exe_tc_time: " + QString::number( (housekeepingPacket->hk_lfr_last_exe_tc_time[0] << 24) + (housekeepingPacket->hk_lfr_last_exe_tc_time[1] << 16) + (housekeepingPacket->hk_lfr_last_exe_tc_time[2] << 8) + (housekeepingPacket->hk_lfr_last_exe_tc_time[3]), 16 ) ); hk_lfr_last_rej_tc_id->setText("hk_lfr_last_rej_tc_id: " + QString::number( housekeepingPacket->hk_lfr_last_rej_tc_id[0] * 256 + housekeepingPacket->hk_lfr_last_rej_tc_id[1], 16) ); hk_lfr_last_rej_tc_type->setText("hk_lfr_last_rej_tc_type: " + QString::number( housekeepingPacket->hk_lfr_last_rej_tc_type[0] * 256 + housekeepingPacket->hk_lfr_last_rej_tc_type[1]) ); hk_lfr_last_rej_tc_subtype->setText("hk_lfr_last_rej_tc_subtype: " + QString::number( housekeepingPacket->hk_lfr_last_rej_tc_subtype[0] * 256 + housekeepingPacket->hk_lfr_last_rej_tc_subtype[1]) ); hk_lfr_last_rej_tc_time->setText("hk_lfr_last_rej_tc_time: " + QString::number( (housekeepingPacket->hk_lfr_last_rej_tc_time[0] << 24) + (housekeepingPacket->hk_lfr_last_rej_tc_time[1] << 16) + (housekeepingPacket->hk_lfr_last_rej_tc_time[2] << 8) + (housekeepingPacket->hk_lfr_last_rej_tc_time[3]), 16 ) ); } void HKDisplay::updateAnomalyStatistics(Packet_TM_LFR_HK_t *housekeepingPacket) { // Anomaly Statistics hk_lfr_le_cnt->setText("hk_lfr_le_cnt: " + QString::number( housekeepingPacket->hk_lfr_le_cnt[0] * 256 + housekeepingPacket->hk_lfr_le_cnt[1]) ); hk_lfr_me_cnt->setText("hk_lfr_me_cnt: " + QString::number( housekeepingPacket->hk_lfr_me_cnt[0] * 256 + housekeepingPacket->hk_lfr_me_cnt[1]) ); hk_lfr_he_cnt->setText("hk_lfr_he_cnt: " + QString::number( housekeepingPacket->hk_lfr_he_cnt[0] * 256 + housekeepingPacket->hk_lfr_he_cnt[1]) ); hk_lfr_last_er_rid->setText("hk_lfr_last_er_rid: " + QString::number( housekeepingPacket->hk_lfr_last_er_rid[0] * 256 + housekeepingPacket->hk_lfr_last_er_rid[1]) ); hk_lfr_last_er_code->setText("hk_lfr_last_er_code: " + QString::number( housekeepingPacket->hk_lfr_last_er_code) ); hk_lfr_last_er_time->setText("hk_lfr_last_er_time: " + QString::number( (housekeepingPacket->hk_lfr_last_er_time[0] << 24) + (housekeepingPacket->hk_lfr_last_er_time[1] << 16) + (housekeepingPacket->hk_lfr_last_er_time[2] << 8) + (housekeepingPacket->hk_lfr_last_er_time[3]), 16 ) ); } void HKDisplay::updateSpaceWireIFStatistics(Packet_TM_LFR_HK_t *housekeepingPacket) { hk_lfr_dpu_spw_pkt_rcv_cnt->setText("hk_lfr_dpu_spw_pkt_rcv_cnt: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_pkt_rcv_cnt[0] * 256 + housekeepingPacket->hk_lfr_dpu_spw_pkt_rcv_cnt[1]) ); hk_lfr_dpu_spw_pkt_sent_cnt->setText("hk_lfr_dpu_spw_pkt_sent_cnt: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_pkt_sent_cnt[0] * 256 + housekeepingPacket->hk_lfr_dpu_spw_pkt_sent_cnt[1]) ); hk_lfr_dpu_spw_tick_out_cnt->setText("hk_lfr_dpu_spw_tick_out_cnt: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_tick_out_cnt) ); hk_lfr_dpu_spw_last_timc->setText("hk_lfr_dpu_spw_last_timc: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_last_timc) ); } void HKDisplay::updateErrorCountersSpaceWire(Packet_TM_LFR_HK_t *housekeepingPacket) { hk_lfr_dpu_spw_parity->setText("hk_lfr_dpu_spw_parity: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_parity) ); hk_lfr_dpu_spw_disconnect->setText("hk_lfr_dpu_spw_disconnect: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_disconnect) ); hk_lfr_dpu_spw_escape->setText("hk_lfr_dpu_spw_escape: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_escape) ); hk_lfr_dpu_spw_credit->setText("hk_lfr_dpu_spw_credit: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_credit) ); hk_lfr_dpu_spw_write_sync->setText("hk_lfr_dpu_spw_write_sync: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_write_sync) ); hk_lfr_dpu_spw_rx_ahb->setText("hk_lfr_dpu_spw_rx_ahb: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_rx_ahb) ); hk_lfr_dpu_spw_tx_ahb->setText("hk_lfr_dpu_spw_tx_ahb: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_tx_ahb) ); hk_lfr_dpu_spw_early_eop->setText("hk_lfr_dpu_spw_early_eop: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_early_eop) ); hk_lfr_dpu_spw_invalid_addr->setText("hk_lfr_dpu_spw_invalid_addr: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_invalid_addr) ); hk_lfr_dpu_spw_eep->setText("hk_lfr_dpu_spw_eep: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_eep) ); hk_lfr_dpu_spw_rx_too_big->setText("hk_lfr_dpu_spw_rx_too_big: " + QString::number( housekeepingPacket->hk_lfr_dpu_spw_rx_too_big) ); }