#ifndef MISSION_CONTROLLER_THERMALCONTROLLER_H_ #define MISSION_CONTROLLER_THERMALCONTROLLER_H_ #include #include #include #include #include class ThermalController : public ExtendedControllerBase { public: static const uint16_t INVALID_TEMPERATURE = 999; ThermalController(object_id_t objectId, object_id_t parentId); ReturnValue_t initialize() override; protected: virtual ReturnValue_t handleCommandMessage(CommandMessage* message) override; virtual void performControlOperation() override; virtual ReturnValue_t initializeLocalDataPool(localpool::DataPool& localDataPoolMap, LocalDataPoolManager& poolManager) override; virtual LocalPoolDataSetBase* getDataSetHandle(sid_t sid) override; // Mode abstract functions virtual ReturnValue_t checkModeCommand(Mode_t mode, Submode_t submode, uint32_t* msToReachTheMode) override; private: thermalControllerDefinitions::SensorTemperatures sensorTemperatures; thermalControllerDefinitions::SusTemperatures susTemperatures; thermalControllerDefinitions::DeviceTemperatures deviceTemperatures; thermalControllerDefinitions::ComponentTemperatures componentTemperatures; // Temperature Sensors Max31865Definitions::Max31865Set max31865Set0; Max31865Definitions::Max31865Set max31865Set1; Max31865Definitions::Max31865Set max31865Set2; Max31865Definitions::Max31865Set max31865Set3; Max31865Definitions::Max31865Set max31865Set4; Max31865Definitions::Max31865Set max31865Set5; Max31865Definitions::Max31865Set max31865Set6; Max31865Definitions::Max31865Set max31865Set7; Max31865Definitions::Max31865Set max31865Set8; Max31865Definitions::Max31865Set max31865Set9; Max31865Definitions::Max31865Set max31865Set10; Max31865Definitions::Max31865Set max31865Set11; Max31865Definitions::Max31865Set max31865Set12; Max31865Definitions::Max31865Set max31865Set13; Max31865Definitions::Max31865Set max31865Set14; Max31865Definitions::Max31865Set max31865Set15; TMP1075::Tmp1075Dataset tmp1075Set1; TMP1075::Tmp1075Dataset tmp1075Set2; // SUS SUS::SusDataset susSet0; SUS::SusDataset susSet1; SUS::SusDataset susSet2; SUS::SusDataset susSet3; SUS::SusDataset susSet4; SUS::SusDataset susSet5; SUS::SusDataset susSet6; SUS::SusDataset susSet7; SUS::SusDataset susSet8; SUS::SusDataset susSet9; SUS::SusDataset susSet10; SUS::SusDataset susSet11; void copySensors(); void copySus(); void copyDevices(); }; #endif /* MISSION_CONTROLLER_THERMALCONTROLLER_H_ */