blob: 2d83c4dae29d1ceae36cde7df77b1a4f4517702a [file] [log] [blame]
Dees_Troy2f9117a2013-02-17 19:52:09 -06001/*
2 Copyright 2012 bigbiff/Dees_Troy TeamWin
3 This file is part of TWRP/TeamWin Recovery Project.
4
5 TWRP is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 3 of the License, or
8 (at your option) any later version.
9
10 TWRP is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with TWRP. If not, see <http://www.gnu.org/licenses/>.
17*/
18
19#ifndef __BLANKTIMER_HEADER_HPP
20#define __BLANKTIMER_HEADER_HPP
21
22#include <pthread.h>
23#include <sys/time.h>
24
25using namespace std;
26
27class blanktimer {
28 public:
29 blanktimer(void);
30 int setTimerThread(void);
31 void resetTimerAndUnblank(void);
32 void setTime(int newtime);
33
34 private:
Dees_Troy70237dc2013-02-28 21:31:48 +000035 void setConBlank(int blank);
Dees_Troy2f9117a2013-02-17 19:52:09 -060036 void setTimer(void);
37 timespec getTimer(void);
38 int getBrightness(void);
39 int setBrightness(int brightness);
40 int setBlankTimer(void);
41 int setClockTimer(void);
42 typedef int (blanktimer::*ThreadPtr)(void);
43 typedef void* (*PThreadPtr)(void*);
Dees_Troy70237dc2013-02-28 21:31:48 +000044 pthread_mutex_t conblankmutex;
Dees_Troy2f9117a2013-02-17 19:52:09 -060045 pthread_mutex_t timermutex;
46 int conblank;
47 timespec btimer;
48 unsigned long long sleepTimer;
49 int orig_brightness;
Dees_Troy2f9117a2013-02-17 19:52:09 -060050};
51
52extern blanktimer blankTimer;
53
54#endif // __BLANKTIMER_HEADER_HPP