#include "CatchFactory.h" #include #include #include #include #include #include #include #include #include #include #include #include /** * @brief Produces system objects. * @details * Build tasks by using SystemObject Interface (Interface). * Header files of all tasks must be included * Please note that an object has to implement the system object interface * if the interface validity is checked or retrieved later by using the * get(object_id) function from the ObjectManagerIF. * * Framework objects are created first. * * @ingroup init */ void Factory::produce(void) { setStaticFrameworkObjectIds(); new EventManager(objects::EVENT_MANAGER); new HealthTable(objects::HEALTH_TABLE); new InternalErrorReporter(objects::INTERNAL_ERROR_REPORTER); new LocalPoolOwnerBase (objects::TEST_LOCAL_POOL_OWNER_BASE); new HkReceiverMock(objects::HK_RECEIVER_MOCK); { PoolManager::LocalPoolConfig poolCfg = { {100, 16}, {50, 32}, {25, 64} , {15, 128}, {5, 1024} }; new PoolManager(objects::TC_STORE, poolCfg); } { PoolManager::LocalPoolConfig poolCfg = { {100, 16}, {50, 32}, {25, 64} , {15, 128}, {5, 1024} }; new PoolManager(objects::TM_STORE, poolCfg); } { PoolManager::LocalPoolConfig poolCfg = { {100, 16}, {50, 32}, {25, 64} , {15, 128}, {5, 1024} }; new PoolManager(objects::IPC_STORE, poolCfg); } } void Factory::setStaticFrameworkObjectIds() { PusServiceBase::packetSource = objects::NO_OBJECT; PusServiceBase::packetDestination = objects::NO_OBJECT; CommandingServiceBase::defaultPacketSource = objects::NO_OBJECT; CommandingServiceBase::defaultPacketDestination = objects::NO_OBJECT; VerificationReporter::messageReceiver = objects::PUS_SERVICE_1_VERIFICATION; DeviceHandlerBase::powerSwitcherId = objects::NO_OBJECT; DeviceHandlerBase::rawDataReceiverId = objects::PUS_SERVICE_2_DEVICE_ACCESS; LocalDataPoolManager::defaultHkDestination = objects::HK_RECEIVER_MOCK; DeviceHandlerFailureIsolation::powerConfirmationId = objects::NO_OBJECT; TmPacketBase::timeStamperId = objects::NO_OBJECT; }