Logo ROOT   6.30.04
Reference Guide
 All Namespaces Files Pages
TProcessUUID.h
Go to the documentation of this file.
1 // @(#)root/cont:$Id$
2 // Author: Rene Brun 06/07/2002
3 
4 /*************************************************************************
5  * Copyright (C) 1995-2000, Rene Brun and Fons Rademakers. *
6  * All rights reserved. *
7  * *
8  * For the licensing terms see $ROOTSYS/LICENSE. *
9  * For the list of contributors see $ROOTSYS/README/CREDITS. *
10  *************************************************************************/
11 
12 #ifndef ROOT_TProcessUUID
13 #define ROOT_TProcessUUID
14 
15 
16 //////////////////////////////////////////////////////////////////////////
17 // //
18 // TProcessUUID //
19 // //
20 // TProcessID managing UUIDs //
21 // //
22 //////////////////////////////////////////////////////////////////////////
23 
24 
25 #include "TProcessID.h"
26 
27 class THashList;
28 class TBits;
29 class TUUID;
30 class TObjString;
31 
32 class TProcessUUID : public TProcessID {
33 
34 private:
35  TProcessUUID(const TProcessID&); // TProcessUUID are not copiable.
36  TProcessUUID &operator=(const TProcessUUID&); // TProcessUUID are not copiable.
37 
38 protected:
39  TList *fUUIDs; //Global list of TUUIDs
40  TBits *fActive; //Table of active UUIDs
41 
42 public:
43 
44  TProcessUUID();
45  virtual ~TProcessUUID();
46  UInt_t AddUUID(TUUID &uuid, TObject *obj);
47  UInt_t AddUUID(const char *uuids);
48  TObjString *FindUUID(UInt_t number) const;
49  TBits *GetActive() const {return fActive;}
50  TList *GetUUIDs() const {return fUUIDs;}
51  void RemoveUUID(UInt_t number);
52 
53  ClassDef(TProcessUUID,1) //TProcessID managing UUIDs
54 };
55 
56 #endif