#ifndef MISSION_CONTROLLER_CONTROLLERDEFINITIONS_THERMALCONTROLLERDEFINITIONS_H_ #define MISSION_CONTROLLER_CONTROLLERDEFINITIONS_THERMALCONTROLLERDEFINITIONS_H_ #include #include namespace thermalControllerDefinitions { enum SetIds : uint32_t { SENSOR_TEMPERATURES, COMPONENT_TEMPERATURES }; enum PoolIds : lp_id_t { SENSOR_PLOC_HEATSPREADER, SENSOR_PLOC_MISSIONBOARD, SENSOR_4K_CAMERA, SENSOR_DAC_HEATSPREADER, SENSOR_STARTRACKER, SENSOR_RW1, SENSOR_DRO, SENSOR_SCEX, SENSOR_X8, SENSOR_HPA, SENSOR_TX_MODUL, SENSOR_MPA, SENSOR_ACU, SENSOR_PLPCDU_HEATSPREADER, SENSOR_TCS_BOARD, SENSOR_MAGNETTORQUER, COMPONENT_RW }; /** * @brief This dataset can be used to store the collected temperatures of all temperature sensors */ class SensorTemperatures : public StaticLocalDataSet<16> { public: SensorTemperatures(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, SENSOR_TEMPERATURES) {} SensorTemperatures(object_id_t objectId) : StaticLocalDataSet(sid_t(objectId, SENSOR_TEMPERATURES)) {} lp_var_t sensor_ploc_heatspreader = lp_var_t(sid.objectId, PoolIds::SENSOR_PLOC_HEATSPREADER, this); lp_var_t sensor_ploc_missionboard = lp_var_t(sid.objectId, PoolIds::SENSOR_PLOC_MISSIONBOARD, this); lp_var_t sensor_4k_camera = lp_var_t(sid.objectId, PoolIds::SENSOR_4K_CAMERA, this); lp_var_t sensor_dac_heatspreader = lp_var_t(sid.objectId, PoolIds::SENSOR_DAC_HEATSPREADER, this); lp_var_t sensor_startracker = lp_var_t(sid.objectId, PoolIds::SENSOR_STARTRACKER, this); lp_var_t sensor_rw1 = lp_var_t(sid.objectId, PoolIds::SENSOR_RW1, this); lp_var_t sensor_dro = lp_var_t(sid.objectId, PoolIds::SENSOR_DRO, this); lp_var_t sensor_scex = lp_var_t(sid.objectId, PoolIds::SENSOR_SCEX, this); lp_var_t sensor_x8 = lp_var_t(sid.objectId, PoolIds::SENSOR_X8, this); lp_var_t sensor_hpa = lp_var_t(sid.objectId, PoolIds::SENSOR_HPA, this); lp_var_t sensor_tx_modul = lp_var_t(sid.objectId, PoolIds::SENSOR_TX_MODUL, this); lp_var_t sensor_mpa = lp_var_t(sid.objectId, PoolIds::SENSOR_MPA, this); lp_var_t sensor_acu = lp_var_t(sid.objectId, PoolIds::SENSOR_ACU, this); lp_var_t sensor_plpcdu_heatspreader = lp_var_t(sid.objectId, PoolIds::SENSOR_PLPCDU_HEATSPREADER, this); lp_var_t sensor_tcs_board = lp_var_t(sid.objectId, PoolIds::SENSOR_TCS_BOARD, this); lp_var_t sensor_magnettorquer = lp_var_t(sid.objectId, PoolIds::SENSOR_MAGNETTORQUER, this); }; /** * @brief This dataset can be used to store the collected temperatures of all components */ class ComponentTemperatures : public StaticLocalDataSet<2> { public: ComponentTemperatures(HasLocalDataPoolIF* owner) : StaticLocalDataSet(owner, COMPONENT_TEMPERATURES) {} ComponentTemperatures(object_id_t objectId) : StaticLocalDataSet(sid_t(objectId, COMPONENT_TEMPERATURES)) {} lp_var_t rw = lp_var_t(sid.objectId, PoolIds::COMPONENT_RW, this); }; } // namespace thermalControllerDefinitions #endif /* MISSION_CONTROLLER_CONTROLLERDEFINITIONS_THERMALCONTROLLERDEFINITIONS_H_ */