Files
qt5-legatus-legacy/Lts/DDS/FTS/generic_fts_internal.h
T
2026-08-13 18:33:10 +02:00

40 lines
1.0 KiB
C++
Executable File

/**
* @RDE_HEADER@
* Generic Function Topic Server (FTS Replier)
* $Id$
* $HeadURL$
* $Author$
*/
#pragma once
#include "generic_fts.h"
#include <DDS/FTS/ddsfts_export.h>
#include <DDS/Generic/wait_set_handler.h>
#include <dds/sub/qos/DataReaderQos.hpp>
#include <dds/pub/qos/DataWriterQos.hpp>
#include <QObject>
namespace FTS
{
class DDSFTS_EXPORT GenericFtsInternal : public QObject
, protected DDSGeneric::WaitSetHandler::CallbackInterface
{
Q_OBJECT
protected:
GenericFtsInternal() = default;
static void printDefaultQos(NGL::INGLLogger &logger);
static dds::sub::qos::DataReaderQos readerQos(NGL::INGLLogger &logger);
static dds::pub::qos::DataWriterQos writerQos(NGL::INGLLogger &logger);
protected:
// those two functions are executed in another thread
void dataAvailable() override;
virtual bool enqueueRequests() = 0; // returns true when valid data could be read (so waitForRequests should be invoked)
protected Q_SLOTS:
virtual void processRequests() = 0;
};
} // namespace FTS