eive-obsw/bsp_rpi/ObjectFactory.cpp

49 lines
1.5 KiB
C++
Raw Normal View History

2020-09-30 17:17:01 +02:00
#include "ObjectFactory.h"
2021-01-14 00:40:30 +01:00
#include <bsp_rpi/boardtest/SpiTest.h>
#include <fsfw/datapoollocal/LocalDataPoolManager.h>
2020-09-30 17:17:01 +02:00
2020-11-20 18:27:07 +01:00
#include <objects/systemObjectList.h>
#include <OBSWConfig.h>
#include <tmtc/apid.h>
#include <tmtc/pusIds.h>
2020-09-30 17:17:01 +02:00
2020-11-20 18:27:07 +01:00
#include <fsfw/tmtcservices/CommandingServiceBase.h>
#include <fsfw/tmtcservices/PusServiceBase.h>
2020-09-30 17:17:01 +02:00
#include <fsfw/osal/linux/TmTcUnixUdpBridge.h>
#include <fsfw/tmtcpacket/pus/TmPacketStored.h>
2020-11-20 18:27:07 +01:00
#include <fsfw/osal/linux/TcUnixUdpPollingTask.h>
2020-09-30 17:17:01 +02:00
2020-11-20 18:27:07 +01:00
#include <mission/core/GenericFactory.h>
#include <mission/utility/TmFunnel.h>
2020-09-30 17:17:01 +02:00
2020-11-20 18:27:07 +01:00
void Factory::setStaticFrameworkObjectIds() {
2020-09-30 17:17:01 +02:00
PusServiceBase::packetSource = objects::PUS_PACKET_DISTRIBUTOR;
PusServiceBase::packetDestination = objects::TM_FUNNEL;
CommandingServiceBase::defaultPacketSource = objects::PUS_PACKET_DISTRIBUTOR;
CommandingServiceBase::defaultPacketDestination = objects::TM_FUNNEL;
TmFunnel::downlinkDestination = objects::UDP_BRIDGE;
// No storage object for now.
TmFunnel::storageDestination = objects::NO_OBJECT;
2020-12-29 02:16:39 +01:00
LocalDataPoolManager::defaultHkDestination = objects::NO_OBJECT;
2020-09-30 17:17:01 +02:00
VerificationReporter::messageReceiver = objects::PUS_SERVICE_1_VERIFICATION;
TmPacketStored::timeStamperId = objects::TIME_STAMPER;
}
void ObjectFactory::produce(){
Factory::setStaticFrameworkObjectIds();
2020-11-20 18:27:07 +01:00
ObjectFactory::produceGenericObjects();
2020-09-30 17:17:01 +02:00
new TmTcUnixUdpBridge(objects::UDP_BRIDGE,
objects::CCSDS_PACKET_DISTRIBUTOR,
objects::TM_STORE, objects::TC_STORE);
new TcUnixUdpPollingTask(objects::UDP_POLLING_TASK, objects::UDP_BRIDGE);
2021-01-14 00:40:30 +01:00
new SpiTest(objects::SPI_TEST);
2020-09-30 17:17:01 +02:00
}