diff options
author | lordjaxom <lordjaxom> | 2004-12-12 19:53:30 +0000 |
---|---|---|
committer | lordjaxom <lordjaxom> | 2004-12-12 19:53:30 +0000 |
commit | 3b0999969632e2820b846ca8adcef6b346ff7441 (patch) | |
tree | 1582ed7db886839ea06c226e228eade0516f60c2 /render.h | |
parent | e4c359b5c303cecfc49fb82799805da9fee8dadb (diff) | |
download | vdr-plugin-text2skin-3b0999969632e2820b846ca8adcef6b346ff7441.tar.gz vdr-plugin-text2skin-3b0999969632e2820b846ca8adcef6b346ff7441.tar.bz2 |
1.0-pre3v1.0-pre3
Diffstat (limited to 'render.h')
-rw-r--r-- | render.h | 25 |
1 files changed, 19 insertions, 6 deletions
@@ -1,5 +1,5 @@ /* - * $Id: render.h,v 1.5 2004/12/08 18:47:37 lordjaxom Exp $ + * $Id: render.h,v 1.6 2004/12/10 21:46:46 lordjaxom Exp $ */ #ifndef VDR_TEXT2SKIN_RENDER_H @@ -45,8 +45,11 @@ private: // update thread bool mActive; + cCondVar mDoUpdate; - cMutex mMutex; + cMutex mDoUpdateMutex; + //cCondVar mDoneUpdate; + //cMutex mDoneUpdateMutex; cCondVar mStarted; int mUpdateIn; @@ -55,8 +58,8 @@ private: protected: // Update thread - void Lock(void) { mMutex.Lock(); } - void Unlock(void) { mMutex.Unlock(); } + //void Lock(void) { mMutex.Lock(); } + //void Unlock(void) { mMutex.Unlock(); } virtual void Action(void); // Drawing operations @@ -115,9 +118,19 @@ public: inline void cText2SkinRender::Flush(bool Force) { if (mDirty || Force) { - Lock(); + //mDoneUpdateMutex.Lock(); + + mDoUpdateMutex.Lock(); mDoUpdate.Broadcast(); - Unlock(); + mDoUpdateMutex.Unlock(); + + //if (mActive) { + //Dprintf("flush wait\n"); + //mDoneUpdate.Wait(mDoneUpdateMutex); + //Dprintf("flush wait done\n"); + //} + //mDoneUpdateMutex.Unlock(); + mDirty = false; } } |