summaryrefslogtreecommitdiffstats
path: root/src/plugins/sensors/eandroid/eandroidambientlightsensor.cpp
blob: 212733cb0652d35002291b6ad0e0295bd3c087f0 (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
29
#include "eandroidambientlightsensor.h"

EAndroidAmbientLightSensor::EAndroidAmbientLightSensor(int type, QSensor *sensor)
    : EAndroidBaseSensor(type, sensor)
{
    setReading<QAmbientLightReading>(&m_reading);
}

EAndroidAmbientLightSensor::~EAndroidAmbientLightSensor()
{
}

void EAndroidAmbientLightSensor::processEvent(sensors_event_t &event)
{
    const int lightLevelLux = event.light;

    if (lightLevelLux < 10)
        m_reading.setLightLevel(QAmbientLightReading::Dark);
    else if (lightLevelLux < 80)
        m_reading.setLightLevel(QAmbientLightReading::Twilight);
    else if (lightLevelLux < 400)
        m_reading.setLightLevel(QAmbientLightReading::Light);
    else if (lightLevelLux < 2500)
        m_reading.setLightLevel(QAmbientLightReading::Bright);
    else
        m_reading.setLightLevel(QAmbientLightReading::Sunny);

    newReadingAvailable();
}