#pragma once #include #include #include #include #include #include class HousekeepingHelper; class GeneratesHousekeepingIF; using HousekeepingSetId_t = uint32_t; class HousekeepingSet : public HasTmTcParametersIF, public SerializeIF { friend class ParameterIF; public: #ifdef FSFW_INTROSPECTION HousekeepingSet(GeneratesHousekeepingIF* owner); void setEnum(EnumIF* theEnum); #else HousekeepingSet(GeneratesHousekeepingIF* owner, HousekeepingSetId_t id); #endif HousekeepingSetId_t getId() const { return id; } void report(const Action* action = nullptr); std::vector const* getParameters() override; protected: HousekeepingHelper* helper; HousekeepingSetId_t id; #ifdef FSFW_INTROSPECTION const char* description; #endif std::vector parameterList; void registerParameter(ParameterIF* parameter) override; };