90 lines
2.0 KiB
C++
Executable File
90 lines
2.0 KiB
C++
Executable File
/**
|
|
* Initialisation for Publisher
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
|
|
#include "initialisation.h"
|
|
|
|
#include <NGLLogger/NGLLoggerBootstrap.h>
|
|
#include <DDS/DDSConnector/publisher.h>
|
|
|
|
#include <ExerciseManagement/exm.hpp>
|
|
#include <ExerciseManagement/exm_enums.hpp>
|
|
#include <ParticipantManagement/ppm.hpp>
|
|
|
|
#include <QVariant>
|
|
#include <QDateTime>
|
|
|
|
namespace DataSampleGenerator
|
|
{
|
|
|
|
Initialisation::Initialisation(int domainId, int exerciseId)
|
|
: DDSConnector::DdsConnector(domainId, IDL::PartitionType::Exercise, exerciseId)
|
|
, m_isUsed(0)
|
|
, m_participantId(222)
|
|
, m_logger(NGL::NGLLoggerBootstrap::getNGLRootLogger().getNGLLogger("DataSampleGenerator.Initialisation"))
|
|
|
|
{
|
|
INFO_LOG(m_logger) << "Initialisation for partition: " << getDefaultPartition();
|
|
}
|
|
|
|
bool Initialisation::init(const QStringList &qosFileList)
|
|
{
|
|
if (!DDSConnector::DdsConnector::init(qosFileList))
|
|
return false;
|
|
|
|
// Initialisation publisher
|
|
initPublisher();
|
|
return true;
|
|
}
|
|
|
|
void Initialisation::generateTestData(const QString &type)
|
|
{
|
|
m_isUsed = !m_isUsed;
|
|
|
|
if (type == QLatin1String("ExerciseManagement::Exercise"))
|
|
{
|
|
ExerciseManagement::Exercise data;
|
|
|
|
data.id(999);
|
|
data.name("TestExe");
|
|
data.isUsed(m_isUsed);
|
|
data.partitionName("Exe999");
|
|
data.state(ExerciseManagement::ExerciseState::Started);
|
|
data.isDeleted(false);
|
|
|
|
getPublisher()->write(data);
|
|
|
|
}
|
|
else if (type == QLatin1String("ParticipantManagement::ExerciseParticipant"))
|
|
{
|
|
ParticipantManagement::Participant data;
|
|
|
|
data.id(m_participantId);
|
|
data.symbol(std::string("231"));
|
|
//data.relatedUnit(1);
|
|
|
|
data.equipmentNumber (1111);
|
|
|
|
data.isSimulated(true);
|
|
data.sampleTime(QDateTime::currentMSecsSinceEpoch());
|
|
//data.isNBCProtectionActivated(false);
|
|
|
|
getPublisher()->write(data);
|
|
|
|
data.id(m_participantId+10);
|
|
getPublisher()->write(data);
|
|
|
|
}
|
|
else
|
|
{
|
|
WARNING_LOG(m_logger) << "TopicType " << type << " not implemented.";
|
|
}
|
|
|
|
}
|
|
|
|
|
|
} // Namespace DataSampleGenerator
|