[-]
[+]
|
Changed |
_service:tar_git:sensorfw.changes
|
|
[-]
[+]
|
Changed |
_service:tar_git:sensorfw-qt5-hybris.spec
^
|
|
[-]
[+]
|
Changed |
_service
^
|
@@ -2,6 +2,6 @@
<service name="tar_git">
<param name="url">https://git.merproject.org/mer-core/sensorfw.git</param>
<param name="branch">master</param>
- <param name="revision">HEAD</param>
+ <param name="revision">7af22d7d77a8c9aca2bd8029a5337e4428ab5239</param>
</service>
</services>
\ No newline at end of file
|
[-]
[+]
|
Deleted |
_service:tar_git:hybris-libsensorfw-qt5-0.10.1.tar.bz2/config/60-sensor-selection-oeverrides.conf
^
|
@@ -1,25 +0,0 @@
-[available]
-
-; Sensors that are disabled by default.
-; -> Enable as appropriate
-
-;humiditysensor=True
-;magnetometersensor=True
-;pressuresensor=True
-;rotationsensor=True
-;stepcountersensor=True
-;tapsensor=True
-;temperaturesensor=True
-
-; Sensors that should/can be enabled/disabled based on
-; hw settings config - or are enabled if sensorfwd is
-; built without ssu-sysinfo support.
-; -> Override as appropriate.
-
-;accelerometersensor=False
-;alssensor=False
-;compasssensor=False
-;gyroscopesensor=False
-;lidsensor=False
-;orientationsensor=False
-;proximitysensor=False
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisaccelerometer/hybrisaccelerometeradaptor.cpp
^
|
@@ -44,20 +44,19 @@
bool HybrisAccelerometerAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "Hybris AccelAdaptor start\n";
return true;
}
void HybrisAccelerometerAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "Hybris AccelAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisalsadaptor/hybrisalsadaptor.cpp
^
|
@@ -52,11 +52,10 @@
bool HybrisAlsAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "Hybris HybrisAlsAdaptor start\n";
return true;
}
@@ -120,9 +119,9 @@
void HybrisAlsAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "Hybris HybrisAlsAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisgyroscopeadaptor/hybrisgyroscopeadaptor.cpp
^
|
@@ -51,20 +51,19 @@
bool HybrisGyroscopeAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "HybrisGyroscopeAdaptor start\n";
return true;
}
void HybrisGyroscopeAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() &&!powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "HybrisGyroscopeAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrismagnetometeradaptor/hybrismagnetometeradaptor.cpp
^
|
@@ -48,20 +48,19 @@
bool HybrisMagnetometerAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() &&!powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "HybrisMagnetometerAdaptor start\n";
return true;
}
void HybrisMagnetometerAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "HybrisMagnetometerAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisorientationadaptor/hybrisorientationadaptor.cpp
^
|
@@ -64,20 +64,19 @@
bool HybrisOrientationAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "Hybris OrientationAdaptor start\n";
return true;
}
void HybrisOrientationAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "Hybris OrientationAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrispressureadaptor/hybrispressureadaptor.cpp
^
|
@@ -50,20 +50,19 @@
bool HybrisPressureAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "Hybris HybrisPressureAdaptor start\n";
return true;
}
void HybrisPressureAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "Hybris HybrisPressureAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisproximityadaptor/hybrisproximityadaptor.cpp
^
|
@@ -57,10 +57,10 @@
bool HybrisProximityAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "HybrisProximityAdaptor start\n";
return true;
}
@@ -127,9 +127,9 @@
void HybrisProximityAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "HybrisProximityAdaptor stop\n";
}
@@ -138,7 +138,7 @@
ProximityData *d = buffer->nextSlot();
d->timestamp_ = quint64(data.timestamp * .001);
bool near = false;
- if (data.distance < maxRange) {
+ if (data.distance < maxRange()) {
near = true;
}
d->withinProximity_ = near;
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/adaptors/hybrisstepcounteradaptor/hybrisstepcounteradaptor.cpp
^
|
@@ -56,11 +56,10 @@
bool HybrisStepCounterAdaptor::startSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "1");
if (!(HybrisAdaptor::startSensor()))
return false;
-
+ if (isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "1");
sensordLogD() << "Hybris HybrisStepCounterAdaptor start\n";
return true;
}
@@ -72,9 +71,9 @@
void HybrisStepCounterAdaptor::stopSensor()
{
- if(!powerStatePath.isEmpty())
- writeToFile(powerStatePath, "0");
HybrisAdaptor::stopSensor();
+ if (!isRunning() && !powerStatePath.isEmpty())
+ writeToFile(powerStatePath, "0");
sensordLogD() << "Hybris HybrisStepCounterAdaptor stop\n";
}
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/config/20-sensors-default.conf
^
|
@@ -23,14 +23,26 @@
; lidsensor=Feature_CoverSensor
lidsensor=False
-; To avoid revisiting config files for all old ports, the defaults
-; added sensors should be set "False" by default here, and to "True"
-; in device specific override config as appropriate.
+; Some sensors that are in theory supported by sensorfwd do not have
+; a suitable hybris adaptors, and thus it makes no sense to list them
+; as being available regardless of the hw / android hal status.
+tapsensor=False
+temperaturesensor=False
+; Sensors that have not been available in any officially supported
+; devices -> hide by default.
humiditysensor=False
-magnetometersensor=False
-pressuresensor=False
-rotationsensor=False
stepcountersensor=False
-tapsensor=False
-temperaturesensor=False
+
+; To minimize chances of regression, sensors that have been available at
+; least in one officially supported device -> do not hide by default.
+; (sensor loading should fail, so false positive should cause only
+; cosmetic issues on 1st use after bootup)
+
+magnetometersensor=True
+pressuresensor=True
+rotationsensor=True
+
+; To avoid revisiting config files for all old ports in the future, the
+; defaults for added sensors should be set "False" by default here, and
+; to "True" in device specific override config as appropriate.
|
[-]
[+]
|
Added |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/config/60-sensors-DEVICE.conf
^
|
@@ -0,0 +1,29 @@
+[available]
+
+; Sensors that are enabled by default.
+; -> Disable as appropriate
+
+;magnetometersensor=False
+;pressuresensor=False
+;rotationsensor=False
+
+; Sensors that are disabled by default.
+; -> Enable as appropriate
+
+;humiditysensor=True
+;stepcountersensor=True
+;tapsensor=True
+;temperaturesensor=True
+
+; Sensors that should/can be enabled/disabled based on
+; hw settings config - or are enabled if sensorfwd is
+; built without ssu-sysinfo support.
+; -> Override as appropriate.
+
+;accelerometersensor=False
+;alssensor=False
+;compasssensor=False
+;gyroscopesensor=False
+;lidsensor=False
+;orientationsensor=False
+;proximitysensor=False
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/core/hybrisadaptor.cpp
^
|
@@ -34,221 +34,430 @@
#include <time.h>
#include <signal.h>
+/* Older devices probably have old android hal and thus do
+ * not define sensor all sensor types that have been added
+ * later on -> In order to both use symbolic names and
+ * compile for all devices we need to fill in holes that
+ * android hal for some particular device might have.
+ */
+#ifndef SENSOR_TYPE_META_DATA
+#define SENSOR_TYPE_META_DATA (0)
+#endif
#ifndef SENSOR_TYPE_ACCELEROMETER
-#define SENSOR_TYPE_ACCELEROMETER (1)
+#define SENSOR_TYPE_ACCELEROMETER (1)
+#endif
+#ifndef SENSOR_TYPE_GEOMAGNETIC_FIELD
+#define SENSOR_TYPE_GEOMAGNETIC_FIELD (2) // alias for SENSOR_TYPE_MAGNETIC_FIELD
#endif
#ifndef SENSOR_TYPE_MAGNETIC_FIELD
-#define SENSOR_TYPE_MAGNETIC_FIELD (2)
+#define SENSOR_TYPE_MAGNETIC_FIELD (2) // alias for SENSOR_TYPE_GEOMAGNETIC_FIELD
#endif
#ifndef SENSOR_TYPE_ORIENTATION
-#define SENSOR_TYPE_ORIENTATION (3)
+#define SENSOR_TYPE_ORIENTATION (3)
#endif
#ifndef SENSOR_TYPE_GYROSCOPE
-#define SENSOR_TYPE_GYROSCOPE (4)
+#define SENSOR_TYPE_GYROSCOPE (4)
#endif
#ifndef SENSOR_TYPE_LIGHT
-#define SENSOR_TYPE_LIGHT (5)
+#define SENSOR_TYPE_LIGHT (5)
#endif
#ifndef SENSOR_TYPE_PRESSURE
-#define SENSOR_TYPE_PRESSURE (6)
+#define SENSOR_TYPE_PRESSURE (6)
#endif
#ifndef SENSOR_TYPE_TEMPERATURE
-#define SENSOR_TYPE_TEMPERATURE (7)
+#define SENSOR_TYPE_TEMPERATURE (7)
#endif
#ifndef SENSOR_TYPE_PROXIMITY
-#define SENSOR_TYPE_PROXIMITY (8)
+#define SENSOR_TYPE_PROXIMITY (8)
#endif
#ifndef SENSOR_TYPE_GRAVITY
-#define SENSOR_TYPE_GRAVITY (9)
+#define SENSOR_TYPE_GRAVITY (9)
#endif
#ifndef SENSOR_TYPE_LINEAR_ACCELERATION
-#define SENSOR_TYPE_LINEAR_ACCELERATION (10)
+#define SENSOR_TYPE_LINEAR_ACCELERATION (10)
#endif
#ifndef SENSOR_TYPE_ROTATION_VECTOR
-#define SENSOR_TYPE_ROTATION_VECTOR (11)
+#define SENSOR_TYPE_ROTATION_VECTOR (11)
#endif
#ifndef SENSOR_TYPE_RELATIVE_HUMIDITY
-#define SENSOR_TYPE_RELATIVE_HUMIDITY (12)
+#define SENSOR_TYPE_RELATIVE_HUMIDITY (12)
#endif
#ifndef SENSOR_TYPE_AMBIENT_TEMPERATURE
-#define SENSOR_TYPE_AMBIENT_TEMPERATURE (13)
+#define SENSOR_TYPE_AMBIENT_TEMPERATURE (13)
+#endif
+#ifndef SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED
+#define SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED (14)
+#endif
+#ifndef SENSOR_TYPE_GAME_ROTATION_VECTOR
+#define SENSOR_TYPE_GAME_ROTATION_VECTOR (15)
+#endif
+#ifndef SENSOR_TYPE_GYROSCOPE_UNCALIBRATED
+#define SENSOR_TYPE_GYROSCOPE_UNCALIBRATED (16)
+#endif
+#ifndef SENSOR_TYPE_SIGNIFICANT_MOTION
+#define SENSOR_TYPE_SIGNIFICANT_MOTION (17)
+#endif
+#ifndef SENSOR_TYPE_STEP_DETECTOR
+#define SENSOR_TYPE_STEP_DETECTOR (18)
#endif
-//#define SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED (14)
-//#define SENSOR_TYPE_GAME_ROTATION_VECTOR (15)
-//#define SENSOR_TYPE_GYROSCOPE_UNCALIBRATED (16)
-//#define SENSOR_TYPE_SIGNIFICANT_MOTION (17)
-//#define SENSOR_TYPE_STEP_DETECTOR (18)
#ifndef SENSOR_TYPE_STEP_COUNTER
-#define SENSOR_TYPE_STEP_COUNTER (19)
+#define SENSOR_TYPE_STEP_COUNTER (19)
#endif
-//#define SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR (20)
-
-Q_GLOBAL_STATIC(HybrisManager, hybrisManager)
-
-HybrisManager::HybrisManager(QObject *parent)
- : QObject(parent)
- , device(NULL)
- , sensorList(NULL)
- , module(NULL)
- , sensorsCount(0)
- , sensorMap()
- , registeredAdaptors()
- , adaptorReaderTid(0)
-{
- init();
+#ifndef SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR
+#define SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR (20)
+#endif
+#ifndef SENSOR_TYPE_HEART_RATE
+#define SENSOR_TYPE_HEART_RATE (21)
+#endif
+#ifndef SENSOR_TYPE_TILT_DETECTOR
+#define SENSOR_TYPE_TILT_DETECTOR (22)
+#endif
+#ifndef SENSOR_TYPE_WAKE_GESTURE
+#define SENSOR_TYPE_WAKE_GESTURE (23)
+#endif
+#ifndef SENSOR_TYPE_GLANCE_GESTURE
+#define SENSOR_TYPE_GLANCE_GESTURE (24)
+#endif
+#ifndef SENSOR_TYPE_PICK_UP_GESTURE
+#define SENSOR_TYPE_PICK_UP_GESTURE (25)
+#endif
+#ifndef SENSOR_TYPE_WRIST_TILT_GESTURE
+#define SENSOR_TYPE_WRIST_TILT_GESTURE (26)
+#endif
+
+/* ========================================================================= *
+ * UTILITIES
+ * ========================================================================= */
+
+static char const *
+sensorTypeName(int type)
+{
+ switch (type) {
+ case SENSOR_TYPE_META_DATA: return "META_DATA";
+ case SENSOR_TYPE_ACCELEROMETER: return "ACCELEROMETER";
+ case SENSOR_TYPE_GEOMAGNETIC_FIELD: return "GEOMAGNETIC_FIELD";
+ case SENSOR_TYPE_ORIENTATION: return "ORIENTATION";
+ case SENSOR_TYPE_GYROSCOPE: return "GYROSCOPE";
+ case SENSOR_TYPE_LIGHT: return "LIGHT";
+ case SENSOR_TYPE_PRESSURE: return "PRESSURE";
+ case SENSOR_TYPE_TEMPERATURE: return "TEMPERATURE";
+ case SENSOR_TYPE_PROXIMITY: return "PROXIMITY";
+ case SENSOR_TYPE_GRAVITY: return "GRAVITY";
+ case SENSOR_TYPE_LINEAR_ACCELERATION: return "LINEAR_ACCELERATION";
+ case SENSOR_TYPE_ROTATION_VECTOR: return "ROTATION_VECTOR";
+ case SENSOR_TYPE_RELATIVE_HUMIDITY: return "RELATIVE_HUMIDITY";
+ case SENSOR_TYPE_AMBIENT_TEMPERATURE: return "AMBIENT_TEMPERATURE";
+ case SENSOR_TYPE_MAGNETIC_FIELD_UNCALIBRATED: return "MAGNETIC_FIELD_UNCALIBRATED";
+ case SENSOR_TYPE_GAME_ROTATION_VECTOR: return "GAME_ROTATION_VECTOR";
+ case SENSOR_TYPE_GYROSCOPE_UNCALIBRATED: return "GYROSCOPE_UNCALIBRATED";
+ case SENSOR_TYPE_SIGNIFICANT_MOTION: return "SIGNIFICANT_MOTION";
+ case SENSOR_TYPE_STEP_DETECTOR: return "STEP_DETECTOR";
+ case SENSOR_TYPE_STEP_COUNTER: return "STEP_COUNTER";
+ case SENSOR_TYPE_GEOMAGNETIC_ROTATION_VECTOR: return "GEOMAGNETIC_ROTATION_VECTOR";
+ case SENSOR_TYPE_HEART_RATE: return "HEART_RATE";
+ case SENSOR_TYPE_TILT_DETECTOR: return "TILT_DETECTOR";
+ case SENSOR_TYPE_WAKE_GESTURE: return "WAKE_GESTURE";
+ case SENSOR_TYPE_GLANCE_GESTURE: return "GLANCE_GESTURE";
+ case SENSOR_TYPE_PICK_UP_GESTURE: return "PICK_UP_GESTURE";
+ case SENSOR_TYPE_WRIST_TILT_GESTURE: return "WRIST_TILT_GESTURE";
+ }
+
+ static char buf[32];
+ snprintf(buf, sizeof buf, "type%d", type);
+ return buf;
}
-HybrisManager::~HybrisManager()
+static void ObtainTemporaryWakeLock()
{
- closeAllSensors();
- if (adaptorReaderTid) {
- sensordLogD() << "Canceling hal reader thread";
- int err = pthread_cancel(adaptorReaderTid);
- if( err ) {
- sensordLogC() << "Failed to cancel hal reader thread";
- }
- else {
- sensordLogD() << "Waiting for hal reader thread to exit";
- void *ret = 0;
- struct timespec tmo = { 0, 0};
- clock_gettime(CLOCK_REALTIME, &tmo);
- tmo.tv_sec += 3;
- err = pthread_timedjoin_np(adaptorReaderTid, &ret, &tmo);
- if( err ) {
- sensordLogC() << "Hal reader thread did not exit";
- } else {
- sensordLogD() << "Hal reader thread terminated";
- adaptorReaderTid = 0;
- }
+ static bool triedToOpen = false;
+ static int wakeLockFd = -1;
+
+ if (!triedToOpen) {
+ triedToOpen = true;
+ wakeLockFd = ::open("/sys/power/wake_lock", O_RDWR);
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/core/hybrisadaptor.h
^
|
@@ -34,50 +34,70 @@
class HybrisAdaptor;
+struct HybrisSensorState
+{
+ HybrisSensorState();
+ ~HybrisSensorState();
+
+ int m_minDelay;
+ int m_maxDelay;
+ int m_delay;
+ int m_active;
+ sensors_event_t m_fallbackEvent;
+};
+
class HybrisManager : public QObject
{
Q_OBJECT
public:
- explicit HybrisManager(QObject *parent = 0);
static HybrisManager *instance();
- virtual ~HybrisManager();
-
- int handleForType(int sensorType);
- int maxRange(int sensorType);
- int minDelay(int sensorType);
- int resolution(int sensorType);
-
- bool setDelay(int handle, int interval);
- void startReader(HybrisAdaptor *adaptor);
- void stopReader(HybrisAdaptor *adaptor);
-
- bool resumeReader(HybrisAdaptor *adaptor);
- void standbyReader(HybrisAdaptor *adaptor);
-
- bool openSensors();
- bool closeSensors();
-
- void registerAdaptor(HybrisAdaptor * adaptor);
- void processSample(const sensors_event_t& data);
+ explicit HybrisManager(QObject *parent = 0);
+ virtual ~HybrisManager();
-protected:
- // methods
- void init();
- void closeAllSensors();
+ /* - - - - - - - - - - - - - - - - - - - *
+ * android sensor hal functions
+ * - - - - - - - - - - - - - - - - - - - */
+
+ sensors_event_t *halEventForHandle(int handle) const;
+ int halIndexForHandle(int handle) const;
+ int halIndexForType (int sensorType) const;
+ int halHandleForType (int sensorType) const;
+ float halGetMaxRange (int handle) const;
+ float halGetResolution (int handle) const;
+ int halGetMinDelay (int handle) const;
+ int halGetMaxDelay (int handle) const;
+ int halGetDelay (int handle) const;
+ bool halSetDelay (int handle, int delay_ms);
+ bool halGetActive (int handle) const;
+ bool halSetActive (int handle, bool active);
+
+ /* - - - - - - - - - - - - - - - - - - - *
+ * HybrisManager <--> sensorfwd
+ * - - - - - - - - - - - - - - - - - - - */
+
+ void startReader (HybrisAdaptor *adaptor);
+ void stopReader (HybrisAdaptor *adaptor);
+ void registerAdaptor (HybrisAdaptor * adaptor);
+ void processSample (const sensors_event_t& data);
+private:
// fields
- struct sensors_poll_device_t* device;
- struct sensor_t const* sensorList;
- struct sensors_module_t* module;
- int sensorsCount;
- QMap <int, int> sensorMap; //type, index
- QMap <int, HybrisAdaptor *> registeredAdaptors; //type, obj
- pthread_t adaptorReaderTid;
+ bool m_initialized;
+ QMap <int, HybrisAdaptor *> m_registeredAdaptors; // type -> obj
+ struct sensors_module_t *m_halModule;
+ struct sensors_poll_device_t *m_halDevice;
+ int m_halSensorCount;
+ const struct sensor_t *m_halSensorArray; // [m_halSensorCount]
+ HybrisSensorState *m_halSensorState; // [m_halSensorCount]
+ QMap <int, int> m_halIndexOfType; // type -> index
+ QMap <int, int> m_halIndexOfHandle; // handle -> index
+ pthread_t m_halEventReaderTid;
+
friend class HybrisAdaptorReader;
private:
- static void *adaptorReaderThread(void *aptr);
+ static void *halEventReaderThread(void *aptr);
};
class HybrisAdaptor : public DeviceAdaptor
@@ -87,47 +107,44 @@
virtual ~HybrisAdaptor();
virtual void init();
- bool addSensorType(int type);
+
virtual bool startAdaptor();
- bool isRunning() const;
+ bool isRunning() const;
virtual void stopAdaptor();
+ void evaluateSensor();
virtual bool startSensor();
virtual void stopSensor();
virtual bool standby();
-
virtual bool resume();
- qreal maxRange;
- qint32 minDelay;
- qreal resolution;
+ virtual void sendInitialData();
friend class HybrisManager;
- int sensorHandle;
- int sensorType;
- int cachedInterval;
-
- virtual void sendInitialData() {}
protected:
virtual void processSample(const sensors_event_t& data) = 0;
+ qreal minRange() const;
+ qreal maxRange() const;
+ qreal resolution() const;
+
+ unsigned int minInterval() const;
+ unsigned int maxInterval() const;
+
virtual unsigned int interval() const;
virtual bool setInterval(const unsigned int value, const int sessionId);
virtual unsigned int evaluateIntervalRequests(int& sessionId) const;
static bool writeToFile(const QByteArray& path, const QByteArray& content);
private:
- void stopReaderThread();
- bool startReaderThread();
-
- QList<int> sensorIds;
- unsigned int interval_;
- bool inStandbyMode_;
- volatile bool running_;
- bool shouldBeRunning_;
+ bool m_inStandbyMode;
+ volatile bool m_isRunning;
+ bool m_shouldBeRunning;
+ int m_sensorHandle;
+ int m_sensorType;
};
#endif // HybrisAdaptor_H
|
[-]
[+]
|
Changed |
_service:tar_git:hybris-libsensorfw-qt5-0.10.6.tar.bz2/core/logging.h
^
|
@@ -29,9 +29,9 @@
#include <QDebug>
-#define sensordLogT() (qDebug())
-#define sensordLogD() (qInfo())
-#define sensordLogW() (qWarning())
-#define sensordLogC() (qCritical())
+#define sensordLogT(ARGS_...) (qDebug(ARGS_))
+#define sensordLogD(ARGS_...) (qInfo(ARGS_))
+#define sensordLogW(ARGS_...) (qWarning(ARGS_))
+#define sensordLogC(ARGS_...) (qCritical(ARGS_))
#endif //LOGGING_H
|