ROOT logo
// $Id: GCondition.h 2764 2012-06-09 03:17:46Z matevz $

// Copyright (C) 1999-2008, Matevz Tadel. All rights reserved.
// This file is part of GLED, released under GNU General Public License version 2.
// For the licensing terms see $GLEDSYS/LICENSE or http://www.gnu.org/.

#ifndef Gled_GCondition_H
#define Gled_GCondition_H

#include <Gled/GledTypes.h>
#include <Gled/GMutex.h>
#include <Gled/GTime.h>
#ifndef __CINT__
#include <pthread.h>
#endif

class GCondition : public GMutex
{
private:
#ifndef __CINT__
  pthread_cond_t	mCond;
#endif
public:
  GCondition(Init_e e=fast);
  ~GCondition();

  Int_t	Wait();
  Int_t TimedWait(GTime time);
  Int_t TimedWaitUntil(GTime time);
  Int_t	Signal();
  Int_t Broadcast();
  Int_t	LockSignal();
  Int_t LockBroadcast();

#include "GCondition.h7"
  ClassDefNV(GCondition,0);
}; // endclass GCondition

#endif
 GCondition.h:1
 GCondition.h:2
 GCondition.h:3
 GCondition.h:4
 GCondition.h:5
 GCondition.h:6
 GCondition.h:7
 GCondition.h:8
 GCondition.h:9
 GCondition.h:10
 GCondition.h:11
 GCondition.h:12
 GCondition.h:13
 GCondition.h:14
 GCondition.h:15
 GCondition.h:16
 GCondition.h:17
 GCondition.h:18
 GCondition.h:19
 GCondition.h:20
 GCondition.h:21
 GCondition.h:22
 GCondition.h:23
 GCondition.h:24
 GCondition.h:25
 GCondition.h:26
 GCondition.h:27
 GCondition.h:28
 GCondition.h:29
 GCondition.h:30
 GCondition.h:31
 GCondition.h:32
 GCondition.h:33
 GCondition.h:34
 GCondition.h:35
 GCondition.h:36
 GCondition.h:37
 GCondition.h:38
 GCondition.h:39