QIfFeatureInterface Class

QIfFeatureInterface defines the base class for all backends. More...

Public Functions

QIfFeatureInterface(QObject *parent = nullptr)
virtual void initialize() = 0


void errorChanged(QIfAbstractFeature::Error error, const QString &message = QString())
void initializationDone()

Protected Functions

QIfFeatureInterface(QObjectPrivate &dd, QObject *parent = nullptr)

Detailed Description

To implement a backend for a specific feature you need to derive from this class. There's a one-to-one mapping between a spezialized feature API and its corresponding feature interface class.

The feature interface class specifies which functions and signals need to be implemented by a backend to work with a specific feature.

This base class contains the generic error handling, which is common between all interfaces.

See the full example backend implementation from src/plugins/ifvehiclefunctions/climate_simulator.

See also QIfAbstractFeature and QIfServiceInterface.

Member Function Documentation

QIfFeatureInterface::QIfFeatureInterface(QObject *parent = nullptr)

Default-constructs an instance of QIfFeatureInterface.

[protected] QIfFeatureInterface::QIfFeatureInterface(QObjectPrivate &dd, QObject *parent = nullptr)

Default-constructs an instance of QIfFeatureInterface.

[signal] void QIfFeatureInterface::errorChanged(QIfAbstractFeature::Error error, const QString &message = QString())

The signal is emitted when error occurs in the backend. Error message is optional.

[signal] void QIfFeatureInterface::initializationDone()

The signal is emitted once the current backend state has been sent to the feature after a call to initialize()

See also initialize.

[pure virtual] void QIfFeatureInterface::initialize()

Initializes the backend. This function is called after a feature connected to the backend. It is expected that this function will inform about the current state of the backend by emitting signals with the current status.

The last signal which needs to be sent is the initializationDone() signal.

See also initializationDone().

© 2022 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.