#pragma once #include <fsfw/controller/ExtendedControllerBase.h> #include <mission/com/syrlinksDefs.h> #include <mission/tcs/Max31865Definitions.h> #include "Max31865Dummy.h" #include "Tmp1075Dummy.h" class TemperatureSensorInserter : public ExecutableObjectIF, public SystemObject { public: using Max31865DummyMap = std::map<object_id_t, Max31865Dummy*>; using Tmp1075DummyMap = std::map<object_id_t, Tmp1075Dummy*>; explicit TemperatureSensorInserter(object_id_t objectId, Max31865DummyMap tempSensorDummies_, std::optional<Tmp1075DummyMap> tempTmpSensorDummies_); ReturnValue_t initialize() override; ReturnValue_t initializeAfterTaskCreation() override; protected: ReturnValue_t performOperation(uint8_t opCode) override; private: Max31865DummyMap max31865DummyMap; std::optional<Tmp1075DummyMap> tmp1075DummyMap; enum TestCase { NONE = 0, COLD_SYRLINKS = 1, COLD_HPA = 2, COLD_MGT = 3, COLD_STR = 4, COLD_STR_CONSECUTIVE = 5, COLD_CAMERA = 6, COLD_PLOC_CONSECUTIVE = 7, COLD_PLOC_STAYS_COLD = 8, COLD_CAMERA_STAYS_COLD = 9 }; int iteration = 0; uint32_t cycles = 0; bool tempsWereInitialized = false; TestCase testCase = TestCase::NONE; // void noise(); };