library: libCore
#include "TProcessUUID.h"

TProcessUUID


class description - source file - inheritance tree (.pdf)

class TProcessUUID : public TProcessID

Inheritance Chart:
TObject
<-
TNamed
<-
TProcessID
<-
TProcessUUID

    public:
TProcessUUID() TProcessUUID(const TProcessUUID&) virtual ~TProcessUUID() UInt_t AddUUID(TUUID& uuid, TObject* obj) UInt_t AddUUID(const char* uuids) static TClass* Class() TObjString* FindUUID(UInt_t number) const TBits* GetActive() const THashList* GetUUIDs() const virtual TClass* IsA() const TProcessUUID& operator=(const TProcessUUID&) void RemoveUUID(UInt_t number) virtual void ShowMembers(TMemberInspector& insp, char* parent) virtual void Streamer(TBuffer& b) void StreamerNVirtual(TBuffer& b)

Data Members


    protected:
THashList* fUUIDs Global list of TUUIDs TBits* fActive Table of active UUIDs

Class Description

 TProcessUUID

 This class is a specialized TProcessID managing the list of UUIDs.
 In addition to TProcessID, this object has the following members:
   - fUUIDs  : a THashlist of TUUIDs in string format (using a TObjString)
   - fActive : a TBits table with one bit per TUUID in the table
 When a new TUUID is entered into the list fUUIDs, it is assigned
 the first free slot in the list of bits and the TUUID UUIDNumber
 is set to this slot number.
 When a TUUID is removed from the list, the corresponding bit
 is reset in fActive.
 The object corresponding to a TUUID at slot I can be found
 via fObjects->At(I).
 One can use two mechanisms to find the object corresponding to a TUUID:
  1- the input is the TUUID.AsString. One can find the corresponding
     TObjString object objs in fUUIDs via THashList::FindObject(name).
     The slot number is then objs->GetUniqueID().
  2- The input is the UUIDNumber. The slot number is UIUIDNumber

 When a TRef points to an object having a TUUID, both the TRef and the
 referenced object have their bit kHasUUID set. In this case, the pointer
 TProcessID *fPID in TRef points to the unique object TProcessUUID.
 The TRef uniqueID is directly the UUIDNumber=slot number.



TProcessUUID() : TProcessID()

~TProcessUUID()

UInt_t AddUUID(TUUID &uuid, TObject *obj)
 Add uuid to the table of UUIDs
 The TObject *obj has its uniqueID set to the UUID number
 return entry number in the table

UInt_t AddUUID(const char *uuids)
 Add uuid with name uuids to the table of UUIDs
 return entry number in the table

TObjString* FindUUID(UInt_t number) const
Find the TObjString by slot number

void RemoveUUID(UInt_t number)
Remove entry number in the list of uuids



Inline Functions


               TBits* GetActive() const
           THashList* GetUUIDs() const
              TClass* Class()
              TClass* IsA() const
                 void ShowMembers(TMemberInspector& insp, char* parent)
                 void Streamer(TBuffer& b)
                 void StreamerNVirtual(TBuffer& b)
         TProcessUUID TProcessUUID(const TProcessUUID&)
        TProcessUUID& operator=(const TProcessUUID&)


Author: Rene Brun 06/07/2002
Last update: root/base:$Name: $:$Id: TProcessUUID.cxx,v 1.1 2002/07/09 21:17:02 brun Exp $
Copyright (C) 1995-2001, Rene Brun and Fons Rademakers. *


ROOT page - Class index - Class Hierarchy - Top of the page

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.