examples/sensors/panoramaWithSense/accelerometercontroller.cpp
changeset 5 603d3f8b6302
equal deleted inserted replaced
3:e4ebb16b39ea 5:603d3f8b6302
       
     1 
       
     2 
       
     3 #include "accelerometercontroller.h"
       
     4 
       
     5 QAccelerometer AccelerometerController::m_accelerometer;
       
     6 
       
     7 AccelerometerController::AccelerometerController(): InputController(){
       
     8     setDataRate(&m_accelerometer);
       
     9     doConnect();
       
    10 }
       
    11 
       
    12 
       
    13 AccelerometerController::~AccelerometerController(){
       
    14     doDisconnect();
       
    15 }
       
    16 
       
    17 
       
    18 void AccelerometerController::update()
       
    19 {
       
    20     qreal accX = m_accelerometer.reading()->x();
       
    21     qreal accY= m_accelerometer.reading()->y();
       
    22     m_dx = accX*3;
       
    23     m_dy= -accY*3;
       
    24 
       
    25     updateCoordinates();
       
    26 
       
    27 }
       
    28 
       
    29 
       
    30 void AccelerometerController::updateCoordinates(){
       
    31     m_x +=m_dx;
       
    32     m_y +=m_dy;
       
    33 
       
    34 }
       
    35 
       
    36 
       
    37 
       
    38 void AccelerometerController::doConnect(){
       
    39     m_accelerometer.start();
       
    40     connect(&m_accelerometer, SIGNAL(readingChanged()), this, SLOT(update()));
       
    41 }
       
    42 
       
    43 
       
    44 void AccelerometerController::doDisconnect(){
       
    45     m_accelerometer.disconnect();
       
    46     m_accelerometer.stop();
       
    47 }