Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:11:37

0001 // @(#)root/thread:$Id$
0002 // Author: Fons Rademakers   01/07/97
0003 
0004 /*************************************************************************
0005  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers.               *
0006  * All rights reserved.                                                  *
0007  *                                                                       *
0008  * For the licensing terms see $ROOTSYS/LICENSE.                         *
0009  * For the list of contributors see $ROOTSYS/README/CREDITS.             *
0010  *************************************************************************/
0011 
0012 #ifndef ROOT_TConditionImp
0013 #define ROOT_TConditionImp
0014 
0015 //////////////////////////////////////////////////////////////////////////
0016 //                                                                      //
0017 // TConditionImp                                                        //
0018 //                                                                      //
0019 // This class provides an abstract interface to the OS dependent        //
0020 // condition classes (TPosixCondition and TWin32Condition).             //
0021 //                                                                      //
0022 //////////////////////////////////////////////////////////////////////////
0023 
0024 #include "TObject.h"
0025 
0026 class TConditionImp : public TObject {
0027 
0028 public:
0029    TConditionImp() { }
0030    virtual ~TConditionImp() { }
0031 
0032    virtual Int_t  Wait() = 0;
0033    virtual Int_t  TimedWait(ULong_t secs, ULong_t nanoSecs = 0) = 0;
0034    virtual Int_t  Signal() = 0;
0035    virtual Int_t  Broadcast() = 0;
0036 
0037    ClassDefOverride(TConditionImp,0)  // Condition variable implementation ABC
0038 };
0039 
0040 #endif