]> git.vomp.tv Git - vompclient.git/blob - vsleeptimer.h
dvbsubtitles fixup part 2
[vompclient.git] / vsleeptimer.h
1 /*
2     Copyright 2008 Thomas Steger
3
4     This file is part of VOMP.
5
6     VOMP is free software; you can redistribute it and/or modify
7     it under the terms of the GNU General Public License as published by
8     the Free Software Foundation; either version 2 of the License, or
9     (at your option) any later version.
10
11     VOMP is distributed in the hope that it will be useful,
12     but WITHOUT ANY WARRANTY; without even the implied warranty of
13     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14     GNU General Public License for more details.
15
16     You should have received a copy of the GNU General Public License
17     along with VOMP; if not, write to the Free Software
18     Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA.
19 */
20
21 #ifndef VSLEEPTIMER_H
22 #define VSLEEPTIMER_H
23
24 #include <stdio.h>
25
26 #include "boxx.h"
27 #include "timerreceiver.h"
28
29 #include "threadsystem.h"
30
31 class Sleeptimer : public Thread_TYPE
32 {
33  public:
34    Sleeptimer();
35    virtual ~Sleeptimer();
36    static Sleeptimer* getInstance();
37    const char* SetTime();
38    void shutdown();   
39    virtual void threadMethod();
40    virtual void threadPostStopCleanup() {};
41    
42  private:
43    int sec;
44    bool active;
45    static Sleeptimer* instance;
46    
47
48    
49 };
50
51
52
53
54 class VSleeptimer : public Boxx, public TimerReceiver
55 {
56   public:
57     VSleeptimer();
58     ~VSleeptimer();
59     void draw();
60     int handleCommand(int command);
61     void timercall(int clientReference);
62
63   private:
64     const char*  displaySleeptimer;
65
66 };
67
68 class VCountdown : public Boxx, public TimerReceiver
69 {
70    
71  public:
72        VCountdown();
73        ~VCountdown();
74        void draw(const char* sec);
75        void timercall(int clientReference);
76    
77 }
78 ;
79
80
81 #endif
82