#ifndef MISSION_CONTROLLER_THERMALCONTROLLER_H_ #define MISSION_CONTROLLER_THERMALCONTROLLER_H_ #include #include class ThermalController : public ExtendedControllerBase { public: ThermalController(object_id_t objectId, object_id_t parentId); ReturnValue_t perform(); 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::ComponentTemperatures componentTemperatures; }; #endif /* MISSION_CONTROLLER_THERMALCONTROLLER_H_ */