Files
qt-migration-legatus/qt6-after/qt6-migrated-legatus/Lts/DDS/Generic/generic_base.h
T

66 lines
1.3 KiB
C++
Executable File

#pragma once
#include <string>
#include <ddsgen_export.h>
#if BUILD_RTI
#include <dds/topic/Topic.hpp>
#include <rti/core/xtypes/DynamicTypeImpl.hpp>
#endif
class QObject;
class QMetaMethod;
namespace NGL {
class INGLLogger;
}
namespace DDS
{
template<typename T>
struct topic_type_name {
static std::string value() {
#if BUILD_RTI
return dds::topic::topic_type_name<T>::value();
#else
return "";
#endif
}
};
#if BUILD_RTI
template<>
struct topic_type_name<dds::core::xtypes::DynamicData> {
static std::string value() {
return "dds::topic::DynamicData::value()";
}
};
template<>
struct topic_type_name<rti::core::xtypes::DynamicTypeImpl> {
static std::string value() {
return "dds::topic::DynamicTypeImpl::value()";
}
};
#endif
namespace Helper
{
DDSGEN_EXPORT std::string getFunctionTopicName(const std::string &fqName);
DDSGEN_EXPORT std::string getShortTopicName(const std::string &fqName);
DDSGEN_EXPORT QMetaMethod getMethod(NGL::INGLLogger &logger,
QObject *objectToInform,
const char *slotToExecute,
const char *signalSignature,
bool bWarnOnEmptySlot = true);
}
}