79 lines
1.8 KiB
C++
Executable File
79 lines
1.8 KiB
C++
Executable File
/**
|
|
* @RDE_HEADER@
|
|
* GenericBase (used as Base for all Generic<Items>)
|
|
*
|
|
* Items can be:
|
|
* - DataReaderObject (DRO)
|
|
* - DataWriterObject (DWO)
|
|
* - DynamicDataReaderObject (DDRO)
|
|
* - DataTopicClient (DTC)
|
|
* - DataTopicServer (DTS)
|
|
*
|
|
* $Id$
|
|
* $HeadURL$
|
|
* $Author$
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <dds/core/xtypes/DynamicData.hpp>
|
|
#include <dds/core/xtypes/DynamicType.hpp>
|
|
#include <dds/topic/Topic.hpp>
|
|
|
|
#include <string>
|
|
#include <DDS/Generic/ddsgen_export.h>
|
|
|
|
class QObject;
|
|
class QMetaMethod;
|
|
|
|
namespace NGL {
|
|
class INGLLogger;
|
|
}
|
|
|
|
namespace DDS
|
|
{
|
|
|
|
template<typename T>
|
|
struct topic_type_name {
|
|
static std::string value() {
|
|
return dds::topic::topic_type_name<T>::value();
|
|
}
|
|
};
|
|
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()";
|
|
}
|
|
};
|
|
|
|
|
|
namespace Helper
|
|
{
|
|
DDSGEN_EXPORT std::string getFunctionTopicName(const std::string &fqName);
|
|
DDSGEN_EXPORT std::string getShortTopicName(const std::string &fqName);
|
|
|
|
/**
|
|
* @brief
|
|
* getMethod checks if the given object has a slot with the given name (slotToExecute)
|
|
* and if the signature is correct.
|
|
*
|
|
* @param objectToInform
|
|
* @param slotToExecute
|
|
* @param signalSignature
|
|
* @return QMetaMethod
|
|
*/
|
|
DDSGEN_EXPORT QMetaMethod getMethod(NGL::INGLLogger &logger,
|
|
QObject *objectToInform,
|
|
const char *slotToExecute,
|
|
const char *signalSignature,
|
|
bool bWarnOnEmptySlot = true);
|
|
}
|
|
|
|
}
|