This repository has been archived on 2020-04-08. You can view files and clone it, but cannot push or open issues or pull requests.
Files
YASMIN/sensors/SensorFactory.h
2016-07-15 15:00:49 +02:00

48 lines
905 B
C++

#ifndef SENSORFACTORY_H
#define SENSORFACTORY_H
#include "Sensor.h"
#include "WiFiSensor.h"
#include "dummy/WiFiSensorDummy.h"
#include "linux/WiFiSensorLinux.h"
#include "android/WiFiSensorAndroid.h"
#include "AccelerometerSensor.h"
#include "dummy/AccelerometerSensorDummy.h"
#include "android/AccelerometerSensorAndroid.h"
#include "StepSensor.h"
class SensorFactory {
public:
/** get the WiFi sensor */
static WiFiSensor& getWiFi() {
#ifdef ANDROID
return WiFiSensorAndroid::get();
#else
return WiFiSensorDummy::get();
#endif
}
/** get the Accelerometer sensor */
static AccelerometerSensor& getAccelerometer() {
#ifdef ANDROID
return AccelerometerSensor::get();
#else
return AccelerometerSensorDummy::get();
#endif
}
/** get the Step sensor */
static StepSensor& getSteps() {
static StepSensor steps(getAccelerometer());
return steps;
}
};
#endif // SENSORFACTORY_H