added documentation
This commit is contained in:
parent
8a8abd6c76
commit
f0ff732329
5 changed files with 19 additions and 5 deletions
|
|
@ -7,10 +7,15 @@ EnergySaver::EnergySaver(QObject *parent) : QObject(parent)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Create instance if necessary and set timeout interval.
|
||||||
|
* @param interval Timer interval in seconds
|
||||||
|
* @see EnergySaver::instance
|
||||||
|
*/
|
||||||
void EnergySaver::init(int interval)
|
void EnergySaver::init(int interval)
|
||||||
{
|
{
|
||||||
EnergySaver* saver = instance();
|
EnergySaver* saver = instance();
|
||||||
saver->initTimer(interval);
|
saver->initTimer(interval*1000);
|
||||||
saver->restartTimer();
|
saver->restartTimer();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,6 +4,12 @@
|
||||||
#include <QObject>
|
#include <QObject>
|
||||||
#include <QTimer>
|
#include <QTimer>
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Class handling energy saving options.
|
||||||
|
*
|
||||||
|
* Shut down RaspberryPi if no mouse input is detected and music player
|
||||||
|
* has not been active or a certain time interval.
|
||||||
|
*/
|
||||||
class EnergySaver : public QObject
|
class EnergySaver : public QObject
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
|
|
@ -12,7 +18,8 @@ protected:
|
||||||
EnergySaver(QObject *parent = 0);
|
EnergySaver(QObject *parent = 0);
|
||||||
|
|
||||||
public:
|
public:
|
||||||
static void init(int intervall);
|
|
||||||
|
static void init(int interval);
|
||||||
static EnergySaver *instance();
|
static EnergySaver *instance();
|
||||||
|
|
||||||
public slots:
|
public slots:
|
||||||
|
|
|
||||||
|
|
@ -5,7 +5,7 @@
|
||||||
#include <QEvent>
|
#include <QEvent>
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @brief Catches all mouse event and reports them via signal.
|
* @brief Catches all mouse events and reports them via signal.
|
||||||
*
|
*
|
||||||
* Based on
|
* Based on
|
||||||
* https://stackoverflow.com/questions/46173105/how-can-i-reset-a-timer-every-time-i-receive-a-touch-event-from-a-qml-page
|
* https://stackoverflow.com/questions/46173105/how-can-i-reset-a-timer-every-time-i-receive-a-touch-event-from-a-qml-page
|
||||||
|
|
|
||||||
|
|
@ -26,6 +26,7 @@ MusicController::MusicController(QObject *parent) : QObject(parent)
|
||||||
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::lengthChanged, mModel, &MusicModel::onLengthChanged);
|
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::lengthChanged, mModel, &MusicModel::onLengthChanged);
|
||||||
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::timeChanged, mModel, &MusicModel::onTimeChanged);
|
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::timeChanged, mModel, &MusicModel::onTimeChanged);
|
||||||
|
|
||||||
|
// hand over player signals to energy saver in order to determine player activity.
|
||||||
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::timeChanged, EnergySaver::instance(), &EnergySaver::restartTimer);
|
connect(mPlayer->mediaPlayer(), &VlcMediaPlayer::timeChanged, EnergySaver::instance(), &EnergySaver::restartTimer);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -33,8 +33,9 @@ int main(int argc, char *argv[])
|
||||||
// install MouseEventSpy and energy saver used for auto
|
// install MouseEventSpy and energy saver used for auto
|
||||||
// shut down of RaspberryPi if not used for a predefined time.
|
// shut down of RaspberryPi if not used for a predefined time.
|
||||||
MouseEventSpy::init();
|
MouseEventSpy::init();
|
||||||
EnergySaver::init(10000);
|
EnergySaver::init(10);
|
||||||
QObject::connect(MouseEventSpy::instance(), &MouseEventSpy::mouseEventDetected, EnergySaver::instance(), &EnergySaver::restartTimer);
|
QObject::connect(MouseEventSpy::instance(), &MouseEventSpy::mouseEventDetected,
|
||||||
|
EnergySaver::instance(), &EnergySaver::restartTimer);
|
||||||
engine.load(QUrl("qrc:/main.qml"));
|
engine.load(QUrl("qrc:/main.qml"));
|
||||||
|
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue