Files
qt5-legatus-legacy/Lts/Tools/DdsView/nglsettings.h
T
2026-08-13 18:33:10 +02:00

60 lines
1.7 KiB
C++
Executable File

/**
* @RDE_HEADER@
* Settings for zwmsqt
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
#include <DDS/Generic/topic_description.h>
#include <nglsettings/nglsettings_settings.h>
#include <QMap>
struct TopicDescriptionEx : public DDSGeneric::TopicDescription
{
TopicDescriptionEx() = default;
explicit TopicDescriptionEx(const DDSGeneric::TopicDescription &td)
: DDSGeneric::TopicDescription(td)
{}
QString serviceName;
};
class NGLSettings : public NGL::Settings
{
NGLSettings();
public:
// QString --> TopicName
QMap<QString, QStringList> infoValues();
void setInfoValues(const QMap<QString, QStringList> &map);
int ddsDomain() const;
void setDdsDomain(int domainId);
static NGLSettings *instance();
/* Temporary "globally" accessible Values */
// <TopicNAME, Description>
QMap<std::string, TopicDescriptionEx> m_dtTypes;
QMap<std::string, TopicDescriptionEx> m_ftTypes;
// DataTopics
QMap<std::string, TopicDescriptionEx> dataTopics() const;
bool hasDataTopic(const std::string &name) const;
TopicDescriptionEx dataTopic(const std::string &topicName) const;
TopicDescriptionEx dataTopic(const QString &topicName) const { return dataTopic(topicName.toStdString()); }
void insertDataTopic(const TopicDescriptionEx &td);
// FunctionTopics
QMap<std::string, TopicDescriptionEx> functionTopics() const;
bool hasFunctionTopic(const std::string &name) const;
TopicDescriptionEx functionTopic(const std::string &topicName) const;
void insertFunctionTopic(const TopicDescriptionEx &td);
TopicDescriptionEx topicFromTopicName(const std::string &topicName) const;
TopicDescriptionEx topicFromTopicName(const QString &topicName) const { return topicFromTopicName(topicName.toStdString()); }
};