Class DdsDoublePublisher

Inheritance Relationships

Base Type

  • public QObject

Class Documentation

class DdsDoublePublisher : public QObject

Publisher for DDS type Real as a QML element.

This class is a QML element and enables QML applications to publish a DDS signal type from a writable QML property.

Public Functions

explicit DdsDoublePublisher(QObject *parent = nullptr)

Constructor.

The initialization is deferred to an init() function.

Parameters

parent[in] QObject pointer.

virtual ~DdsDoublePublisher()

Destructor.

double value() const

Property accessor for Real value as QML property.

Returns

Real value as double.

void init(QtToDds *dds, const QString &topic, double start_value, bool send_first)

Initializes DDS writer and sets initial value.

Parameters
  • dds[in] Pointer to QtToDds instance.

  • topic[in] Name of DDS topic to publish.

  • start_value[in] Initial value of the signal.

  • send_first[in] Whether to forcefully send the initial value.

Public Slots

void setValue(double value)

Write function for the QML property, publishes value on DDS.

This slot publishes the double value onto the DDS topic. It also emits a valueChanged().

Note

It only publishes or emits a signal if the QML property value has changed!

Parameters

value[in] New double value.

void publish()

Publish on DDS the value already set.

Signals

void valueChanged(double value)

DDS value has has changed.

This signal is connected to the QML DdsDoublePublisher::value property.

Parameters

value[out] New Real value.

Properties

double value

DDS Real as double QML property.

Private Members

std::unique_ptr<sinspekto::Writer<fkin::Real>> m_writer

The DDS writer wrapper class.