summaryrefslogtreecommitdiffstats
path: root/doc/src/snippets/sensors/plugin.cpp
blob: a4855659caf94ee746c0bcfbe0858edc50e5756f (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#include "mybackend.h"
#include <qsensorplugin.h>
#include <qsensormanager.h>

const char *MyBackend::id = "mybackend";

//! [Plugin]
class MyPluginClass : public QObject, QSensorPluginInterface, public QSensorBackendFactory
{
    Q_OBJECT
    Q_INTERFACES(QtMobility::QSensorPluginInterface)
public:
    void registerSensors()
    {
        QSensorManager::registerBackend(QAccelerometer::type, MyBackend::id, this);
    }

    QSensorBackend *createBackend(QSensor *sensor)
    {
        if (sensor->identifier() == MyBackend::id)
            return new MyBackend(sensor);
        return 0;
    }
};
//! [Plugin]

//Q_EXPORT_PLUGIN2(libmy_plugin_file_name, MyPluginClass);
#include "plugin.moc"