00001 // @(#)root/thread:$Id: TConditionImp.h 20882 2007-11-19 11:31:26Z rdm $ 00002 // Author: Fons Rademakers 01/07/97 00003 00004 /************************************************************************* 00005 * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. * 00006 * All rights reserved. * 00007 * * 00008 * For the licensing terms see $ROOTSYS/LICENSE. * 00009 * For the list of contributors see $ROOTSYS/README/CREDITS. * 00010 *************************************************************************/ 00011 00012 #ifndef ROOT_TConditionImp 00013 #define ROOT_TConditionImp 00014 00015 00016 ////////////////////////////////////////////////////////////////////////// 00017 // // 00018 // TConditionImp // 00019 // // 00020 // This class provides an abstract interface to the OS dependent // 00021 // condition classes (TPosixCondition and TWin32Condition). // 00022 // // 00023 ////////////////////////////////////////////////////////////////////////// 00024 00025 #ifndef ROOT_Rtypes 00026 #include "Rtypes.h" 00027 #endif 00028 #ifndef ROOT_TObject 00029 #include "TObject.h" 00030 #endif 00031 00032 00033 class TConditionImp : public TObject { 00034 00035 public: 00036 TConditionImp() { } 00037 virtual ~TConditionImp() { } 00038 00039 virtual Int_t Wait() = 0; 00040 virtual Int_t TimedWait(ULong_t secs, ULong_t nanoSecs = 0) = 0; 00041 virtual Int_t Signal() = 0; 00042 virtual Int_t Broadcast() = 0; 00043 00044 ClassDef(TConditionImp,0) // Condition variable implementation ABC 00045 }; 00046 00047 #endif