#ifndef MISSION_CONTROLLER_CONTROLLERDEFINITIONS_ACSCTRLDEFINITIONS_H_ #define MISSION_CONTROLLER_CONTROLLERDEFINITIONS_ACSCTRLDEFINITIONS_H_ #include #include #include namespace acsctrl { enum SetIds : uint32_t { MGM_SENSOR_DATA, SUS_SENSOR_DATA }; enum PoolIds : lp_id_t { MGM_0_LIS3_UT, MGM_1_RM3100_UT, MGM_2_LIS3_UT, MGM_3_RM3100_UT, MGM_IMTQ_CAL_NT, MGM_IMTQ_CAL_ACT_STATUS, SUS_0_N_LOC_XFYFZM_PT_XF, SUS_6_R_LOC_XFYBZM_PT_XF, SUS_1_N_LOC_XBYFZM_PT_XB, SUS_7_R_LOC_XBYBZM_PT_XB, SUS_2_N_LOC_XFYBZB_PT_YB, SUS_8_R_LOC_XBYBZB_PT_YB, SUS_3_N_LOC_XFYBZF_PT_YF, SUS_9_R_LOC_XBYBZB_PT_YF, SUS_4_N_LOC_XMYFZF_PT_ZF, SUS_10_N_LOC_XMYBZF_PT_ZF, SUS_5_N_LOC_XFYMZB_PT_ZB, SUS_11_R_LOC_XBYMZB_PT_ZB, }; static constexpr uint8_t MGM_SET_ENTRIES = 10; static constexpr uint8_t SUS_SET_ENTRIES = 12; /** * @brief This dataset can be used to store the collected temperatures of all temperature sensors */ class MgmData : public StaticLocalDataSet { public: MgmData(HasLocalDataPoolIF* hkOwner) : StaticLocalDataSet(hkOwner, MGM_SENSOR_DATA) {} // The ACS board measurement are in floating point uT lp_vec_t mgm0Lis3 = lp_vec_t(sid.objectId, MGM_0_LIS3_UT, this); lp_vec_t mgm1Rm3100 = lp_vec_t(sid.objectId, MGM_1_RM3100_UT, this); lp_vec_t mgm2Lis3 = lp_vec_t(sid.objectId, MGM_2_LIS3_UT, this); lp_vec_t mgm3Rm3100 = lp_vec_t(sid.objectId, MGM_3_RM3100_UT, this); // The IMTQ measurements are in integer nT lp_vec_t imtqCal = lp_vec_t(sid.objectId, MGM_IMTQ_CAL_NT, this); lp_var_t actuationCalStatus = lp_var_t(sid.objectId, MGM_IMTQ_CAL_ACT_STATUS, this); private: }; class SusData : public StaticLocalDataSet { public: SusData(HasLocalDataPoolIF* hkOwner) : StaticLocalDataSet(hkOwner, SUS_SENSOR_DATA) {} private: }; } // namespace acsctrl #endif /* MISSION_CONTROLLER_CONTROLLERDEFINITIONS_ACSCTRLDEFINITIONS_H_ */