summaryrefslogtreecommitdiff
path: root/osdmanager.h
diff options
context:
space:
mode:
Diffstat (limited to 'osdmanager.h')
-rw-r--r--osdmanager.h31
1 files changed, 17 insertions, 14 deletions
diff --git a/osdmanager.h b/osdmanager.h
index 3607d40..e199176 100644
--- a/osdmanager.h
+++ b/osdmanager.h
@@ -4,20 +4,23 @@
#include <vdr/osd.h>
class cOsdManager {
- private:
- cOsd *osd;
- public:
- cOsdManager(void);
- bool setOsd();
- void setBackground();
- void flush() {osd->Flush();};
- cPixmap *requestPixmap(int Layer, const cRect &ViewPort, const cRect &DrawPort = cRect::Null);
- void releasePixmap(cPixmap *pixmap);
- void deleteOsd() {delete osd;};
- int Width() { return osd->Width(); };
- int Height() { return osd->Height(); };
- int Top() { return osd->Top(); };
- int Left() { return osd->Left(); };
+private:
+ cOsd *osd;
+ cMutex mutex;
+public:
+ cOsdManager(void);
+ void Lock(void);
+ void Unlock(void);
+ bool CreateOsd(void);
+ void DeleteOsd(void);
+ void SetBackground(void);
+ cPixmap *CreatePixmap(int Layer, const cRect &ViewPort, const cRect &DrawPort = cRect::Null);
+ void DestroyPixmap(cPixmap *pixmap);
+ void Flush(void);
+ int Width(void) { return osd->Width(); };
+ int Height(void) { return osd->Height(); };
+ int Top(void) { return osd->Top(); };
+ int Left(void) { return osd->Left(); };
};
#endif //__TVGUIDE_OSDMANAGER_H