#ifndef ROOT_TGLLockable_H
#define ROOT_TGLLockable_H
#include <Rtypes.h>
class TGLLockable
{
public:
   enum ELock { kUnlocked,    
                kDrawLock,    
                kSelectLock,  
                kModifyLock   
              };
private:
   TGLLockable(const TGLLockable&);            
   TGLLockable& operator=(const TGLLockable&); 
protected:
   
   mutable ELock     fLock;        
public:
   TGLLockable();
   virtual ~TGLLockable() {}
   virtual const char* LockIdStr() const { return "<unknown>"; }
   Bool_t TakeLock(ELock lock)    const;
   Bool_t ReleaseLock(ELock lock) const;
   Bool_t IsLocked()    const { return (fLock != kUnlocked); }
   ELock  CurrentLock() const { return fLock; }
   Bool_t IsDrawOrSelectLock() const { return fLock == kDrawLock || fLock == kSelectLock; }
   static const char * LockName(ELock lock);
   static Bool_t       LockValid(ELock lock);
   ClassDef(TGLLockable, 0) 
}; 
#endif
This page has been automatically generated. If you have any comments or suggestions about the page layout send a mail to ROOT support, or contact the developers with any questions or problems regarding ROOT.