summaryrefslogtreecommitdiffstats
path: root/src/qtmsensors/qsensor.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/qtmsensors/qsensor.h')
-rw-r--r--src/qtmsensors/qsensor.h254
1 files changed, 0 insertions, 254 deletions
diff --git a/src/qtmsensors/qsensor.h b/src/qtmsensors/qsensor.h
deleted file mode 100644
index b8a0291a..00000000
--- a/src/qtmsensors/qsensor.h
+++ /dev/null
@@ -1,254 +0,0 @@
-/****************************************************************************
-**
-** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
-** All rights reserved.
-** Contact: Nokia Corporation (qt-info@nokia.com)
-**
-** This file is part of the QtSensors module of the Qt Toolkit.
-**
-** $QT_BEGIN_LICENSE:LGPL$
-** GNU Lesser General Public License Usage
-** This file may be used under the terms of the GNU Lesser General Public
-** License version 2.1 as published by the Free Software Foundation and
-** appearing in the file LICENSE.LGPL included in the packaging of this
-** file. Please review the following information to ensure the GNU Lesser
-** General Public License version 2.1 requirements will be met:
-** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
-**
-** In addition, as a special exception, Nokia gives you certain additional
-** rights. These rights are described in the Nokia Qt LGPL Exception
-** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
-**
-** GNU General Public License Usage
-** Alternatively, this file may be used under the terms of the GNU General
-** Public License version 3.0 as published by the Free Software Foundation
-** and appearing in the file LICENSE.GPL included in the packaging of this
-** file. Please review the following information to ensure the GNU General
-** Public License version 3.0 requirements will be met:
-** http://www.gnu.org/copyleft/gpl.html.
-**
-** Other Usage
-** Alternatively, this file may be used in accordance with the terms and
-** conditions contained in a signed written agreement between you and Nokia.
-**
-**
-**
-**
-**
-** $QT_END_LICENSE$
-**
-****************************************************************************/
-
-#ifndef QTM_QSENSOR_H
-#define QTM_QSENSOR_H
-
-#include <QtCore/QObject>
-#include <QtCore/QByteArray>
-#include <QtCore/QMetaType>
-#include <QtCore/QVariant>
-#include <QtCore/QPair>
-
-#include "qtmsensorsglobal.h"
-
-QT_BEGIN_NAMESPACE
-QTM_BEGIN_NAMESPACE
-
-class QSensorPrivate;
-class QSensorReading;
-class QSensorReadingPrivate;
-class QSensorFilter;
-
-// This type is no longer used in the API but third party apps may be using it
-typedef quint64 qtimestamp;
-
-typedef QPair<int,int> qrange;
-typedef QList<qrange> qrangelist;
-struct qoutputrange
-{
- qreal minimum;
- qreal maximum;
- qreal accuracy;
-};
-typedef QList<qoutputrange> qoutputrangelist;
-
-class QTM_SENSORS_EXPORT QSensor : public QObject
-{
- friend class QSensorBackend;
-
- Q_OBJECT
- Q_PROPERTY(QByteArray sensorid READ identifier WRITE setIdentifier)
- Q_PROPERTY(QByteArray type READ type)
- Q_PROPERTY(bool connectedToBackend READ isConnectedToBackend)
- Q_PROPERTY(qrangelist availableDataRates READ availableDataRates)
- Q_PROPERTY(int dataRate READ dataRate WRITE setDataRate)
- Q_PROPERTY(QSensorReading* reading READ reading NOTIFY readingChanged)
- Q_PROPERTY(bool busy READ isBusy)
- Q_PROPERTY(bool active READ isActive WRITE setActive NOTIFY activeChanged)
- Q_PROPERTY(qoutputrangelist outputRanges READ outputRanges)
- Q_PROPERTY(int outputRange READ outputRange WRITE setOutputRange)
- Q_PROPERTY(QString description READ description)
- Q_PROPERTY(int error READ error NOTIFY sensorError)
-#ifdef Q_QDOC
- Q_PROPERTY(int maxBufferSize)
- Q_PROPERTY(int efficientBufferSize)
- Q_PROPERTY(int bufferSize)
-#endif
-public:
- explicit QSensor(const QByteArray &type, QObject *parent = 0);
- virtual ~QSensor();
-
- QByteArray identifier() const;
- void setIdentifier(const QByteArray &identifier);
-
- QByteArray type() const;
-
- Q_INVOKABLE bool connectToBackend();
- bool isConnectedToBackend() const;
-
- bool isBusy() const;
-
- void setActive(bool active);
- bool isActive() const;
-
- qrangelist availableDataRates() const;
- int dataRate() const;
- void setDataRate(int rate);
-
- qoutputrangelist outputRanges() const;
- int outputRange() const;
- void setOutputRange(int index);
-
- QString description() const;
- int error() const;
-
- // Filters modify the reading
- void addFilter(QSensorFilter *filter);
- void removeFilter(QSensorFilter *filter);
- QList<QSensorFilter*> filters() const;
-
- // The readings are exposed via this object
- QSensorReading *reading() const;
-
- // Information about available sensors
- // These functions are implemented in qsensormanager.cpp
- static QList<QByteArray> sensorTypes();
- static QList<QByteArray> sensorsForType(const QByteArray &type);
- static QByteArray defaultSensorForType(const QByteArray &type);
-
- // These are here so we can catch dynamic properties and share
- // them with the non-legacy sensor that is being wrapped
- void setProperty(const char *name, const QVariant &value);
- QVariant property(const char *name) const;
-
-public Q_SLOTS:
- // Start receiving values from the sensor
- bool start();
-
- // Stop receiving values from the sensor
- void stop();
-
-Q_SIGNALS:
- void busyChanged();
- void activeChanged();
- void readingChanged();
- void sensorError(int error);
- void availableSensorsChanged();
-
-protected:
- // called by the back end
- QSensorPrivate *d_func() const { return d.data(); }
-
-private:
- void registerInstance();
-
- QScopedPointer<QSensorPrivate> d;
- Q_DISABLE_COPY(QSensor)
-};
-
-class QTM_SENSORS_EXPORT QSensorFilter
-{
- friend class QSensor;
-public:
- virtual bool filter(QSensorReading *reading) = 0;
-protected:
- QSensorFilter();
- ~QSensorFilter();
- virtual void setSensor(QSensor *sensor);
- QSensor *m_sensor;
-};
-
-class QTM_SENSORS_EXPORT QSensorReading : public QObject
-{
- friend class QSensorBackend;
-
- Q_OBJECT
- Q_PROPERTY(quint64 timestamp READ timestamp)
-public:
- virtual ~QSensorReading();
-
- quint64 timestamp() const;
- void setTimestamp(quint64 timestamp);
-
- // Access properties of sub-classes by numeric index
- // For name-based access use QObject::property()
- int valueCount() const;
- QVariant value(int index) const;
-
-protected:
- explicit QSensorReading(QObject *parent, QSensorReadingPrivate *d);
- QScopedPointer<QSensorReadingPrivate> *d_ptr() { return &d; }
- virtual void copyValuesFrom(QSensorReading *other);
-
-private:
- QScopedPointer<QSensorReadingPrivate> d;
- Q_DISABLE_COPY(QSensorReading)
-};
-
-#undef DECLARE_READING
-#undef DECLARE_READING_D
-#undef IMPLEMENT_READING
-#undef IMPLEMENT_READING_D
-
-#define DECLARE_READING(classname)\
- DECLARE_READING_D(classname, classname ## Private)
-
-#define DECLARE_READING_D(classname, pclassname)\
- public:\
- classname(QObject *parent = 0);\
- virtual ~classname();\
- void copyValuesFrom(QSensorReading *other);\
- private:\
- QScopedPointer<pclassname> d;
-
-#define IMPLEMENT_READING(classname)\
- IMPLEMENT_READING_D(classname, classname ## Private)
-
-#define IMPLEMENT_READING_D(classname, pclassname)\
- classname::classname(QObject *parent)\
- : QSensorReading(parent, 0)\
- , d(new pclassname)\
- {}\
- classname::~classname() {}\
- void classname::copyValuesFrom(QSensorReading *_other)\
- {\
- /* No need to verify types, only called by QSensorBackend */\
- classname *other = static_cast<classname *>(_other);\
- pclassname *my_ptr = d.data();\
- pclassname *other_ptr = other->d.data();\
- /* Do a direct copy of the private class */\
- *(my_ptr) = *(other_ptr);\
- /* We need to copy the parent too */\
- QSensorReading::copyValuesFrom(_other);\
- }
-
-QTM_END_NAMESPACE
-QT_END_NAMESPACE
-
-#if 0
-Q_DECLARE_METATYPE(QTM_PREPEND_NAMESPACE(qrange))
-Q_DECLARE_METATYPE(QTM_PREPEND_NAMESPACE(qrangelist))
-Q_DECLARE_METATYPE(QTM_PREPEND_NAMESPACE(qoutputrangelist))
-#endif
-
-#endif
-