QIfFeatureInterface Class

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

Public Functions

virtual void initialize() = 0

Signals

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

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

[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().

© 2021 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.