+#include "Condition.h"\r
+\r
+Condition::Condition(Mutex *mutex) {\r
+ //std::cout << "Create Condition." << std::endl;\r
+ _mutex = mutex;\r
+ _condition = new pthread_cond_t;\r
+ pthread_cond_init(_condition, NULL);\r
+}\r
+\r
+\r
+Condition::~Condition() {\r
+ //std::cout << "Delete Condition." << std::endl;\r
+ pthread_cond_destroy(_condition);\r
+ delete _condition;\r
+ //std::cout << "Deleted Condition." << std::endl;\r
+}\r
+\r
+\r
+void Condition::notify() {\r
+ pthread_cond_signal(_condition);\r
+}\r
+\r
+\r
+void Condition::notifyAll() {\r
+ pthread_cond_broadcast(_condition);\r
+}\r
+\r
+\r
+void Condition::wait() {\r
+ pthread_cond_wait(_condition, _mutex->getPThreadMutex());\r
+}\r