widget/qt/mozqorientationsensorfilter.h
author Paul Adenot <paul@paul.cx>
Mon, 10 Jun 2013 19:32:28 +0200
changeset 134533 116e84abedcab28ebb66e5cecd9ddb54df3a2d92
parent 118764 ed46fb258e5394e0d90ee569d2102a9e45906f73
permissions -rw-r--r--
Bug 865244 - Expose the maximum channel count in the AudioStream. r=kinetik

/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
/* vim: set ts=4 et sw=4 tw=80: */
/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

#ifndef MOZQORIENTATIONMODULE_H
#define MOZQORIENTATIONMODULE_H

#include <QtSensors/QOrientationReading>
#include <QtSensors/QOrientationFilter>
#include <QObject>
#include <QTransform>


class MozQOrientationSensorFilter : public QObject
                                  , public QtMobility::QOrientationFilter
{
    Q_OBJECT

public:
    MozQOrientationSensorFilter()
    {
        mWindowRotationAngle = 0;
    }

    virtual ~MozQOrientationSensorFilter(){}

    virtual bool filter(QtMobility::QOrientationReading* reading);

    static int GetWindowRotationAngle();
    static QTransform& GetRotationTransform();

Q_SIGNALS:
    void orientationChanged();

private:
    bool filter(QtMobility::QSensorReading *reading)
    {
        return filter(static_cast<QtMobility::QOrientationReading*>(reading));
    }

    static int mWindowRotationAngle;
    static QTransform mWindowRotationTransform;
};

#endif