condition.h
Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027 #ifndef CONDITION_H
00028 #define CONDITION_H
00029
00030 #include <glib.h>
00031
00032 namespace pdf
00033 {
00034
00035 class Cond
00036 {
00037 public:
00038 Cond()
00039 : cond_(0)
00040 {
00041 cond_ = g_cond_new();
00042 }
00043
00044 ~Cond()
00045 {
00046 g_cond_free(cond_);
00047 }
00048
00049 void signal()
00050 {
00051
00052 g_cond_signal(cond_);
00053 }
00054
00055 void wait(GMutex* m)
00056 {
00057 if (m != 0)
00058 {
00059 g_cond_wait(cond_, m);
00060 }
00061 }
00062
00063 private:
00064 GCond* cond_;
00065 };
00066
00067 };
00068
00069 #endif
00070