XNSim/XNCore/XNDDSManager.cpp

46 lines
989 B
C++
Executable File

#include "XNDDSManager.h"
XNDDSManager::XNDDSManager() : XNBaseFrameObject(new XNDDSManagerPrivate())
{
SetUniqueId(8);
SetObjectName("XNDDSManager");
}
XNDDSManager::~XNDDSManager()
{
}
XNDDSManager::XNDDSManager(PrivateType *p) : XNBaseFrameObject(p)
{
}
bool XNDDSManager::Initialize()
{
T_D();
d->_status = XNFrameObjectStatus::Initialized;
d->participant_ = nullptr;
d->topics_.clear();
LOG_INFO("XNDDSManager Initialize Success!");
return true;
}
bool XNDDSManager::PrepareForExecute()
{
T_D();
d->_status = XNFrameObjectStatus::Ready;
LOG_INFO("XNDDSManager is prepared!");
return true;
}
void XNDDSManager::SetDomainID(uint32_t domainID)
{
T_D();
FAST_DDS_MACRO::DomainParticipantQos participantQos;
participantQos.name("XNDDSManager");
d->participant_ = FAST_DDS_MACRO::DomainParticipantFactory::get_instance()->create_participant(
domainID, participantQos);
if (d->participant_ == nullptr) {
LOG_ERROR("0x2130 Create DomainParticipant Failed!");
}
}