61 lines
1.8 KiB
C++
61 lines
1.8 KiB
C++
#include "ObjectFactory.h"
|
|
#include "OBSWConfig.h"
|
|
#include <objects/systemObjectList.h>
|
|
|
|
#include <mission/utility/TmFunnel.h>
|
|
#include <mission/core/GenericFactory.h>
|
|
|
|
#if OBSW_ADD_LWIP_COMPONENTS == 1
|
|
#include "example_common/stm32h7/networking/UdpTcLwIpPollingTask.h"
|
|
#include "example_common/stm32h7/networking/TmTcLwIpUdpBridge.h"
|
|
#endif /* OBSW_ADD_LWIP_COMPONENTS == 1 */
|
|
|
|
#include "example_common/stm32h7/STM32TestTask.h"
|
|
|
|
#include <fsfw/datapoollocal/LocalDataPoolManager.h>
|
|
#include <fsfw/monitoring/MonitoringMessageContent.h>
|
|
#include <fsfw/storagemanager/PoolManager.h>
|
|
#include <fsfw/tmtcpacket/pus/tm.h>
|
|
#include <fsfw/tmtcservices/CommandingServiceBase.h>
|
|
#include <fsfw/tmtcservices/PusServiceBase.h>
|
|
|
|
void ObjectFactory::produce(void* args) {
|
|
/* Located inside GenericFactory source file */
|
|
Factory::setStaticFrameworkObjectIds();
|
|
|
|
#if OBSW_ADD_CORE_COMPONENTS == 1
|
|
{
|
|
LocalPool::LocalPoolConfig poolCfg = {
|
|
{100, 32}, {30, 64}, {10, 128}, {2, 1024}
|
|
};
|
|
new PoolManager(objects::TC_STORE, poolCfg);
|
|
}
|
|
|
|
{
|
|
LocalPool::LocalPoolConfig poolCfg = {
|
|
{100, 32}, {30, 64}, {10, 128}, {2, 1024}
|
|
};
|
|
new PoolManager(objects::TM_STORE, poolCfg);
|
|
}
|
|
|
|
{
|
|
LocalPool::LocalPoolConfig poolCfg = {
|
|
{100, 32}, {30, 64}, {10, 128}, {2, 1024}
|
|
};
|
|
new PoolManager(objects::IPC_STORE, poolCfg);
|
|
}
|
|
|
|
#if OBSW_ADD_LWIP_COMPONENTS == 1
|
|
/* UDP Server */
|
|
new TmTcLwIpUdpBridge(objects::UDP_BRIDGE,
|
|
objects::CCSDS_DISTRIBUTOR, objects::TM_STORE, objects::TC_STORE);
|
|
new UdpTcLwIpPollingTask(objects::UDP_POLLING_TASK, objects::UDP_BRIDGE);
|
|
#endif /* OBSW_ADD_LWIP_COMPONENTS == 1 */
|
|
#endif /* OBSW_ADD_CORE_COMPONENTS == 1 */
|
|
|
|
ObjectFactory::produceGenericObjects();
|
|
|
|
/* Test Device Handler */
|
|
new STM32TestTask(objects::TEST_TASK, false, true);
|
|
}
|