class HIndexTable: public TObject

_HADES_CLASS_DESCRIPTION

HIndexTable

  This class handles an index table with an entry per
  possible HLocation. In such a way that, given a HLocation,it returns
  an index.

  You can also iterate on the index table (on the locations) using the
 functions gotoBegin(),gotoLocation() and next().

  You can also access the indexes as if they were lineally distributed,


Function Members (Methods)

public:
HIndexTable()
HIndexTable(const HIndexTable&)
virtual~HIndexTable()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
Bool_tcheckLocation(HLocation& aLoc)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidClear(Option_t* opt = "")
virtual TObject*TObject::Clone(const char* newname = "") const
virtual Int_tTObject::Compare(const TObject* obj) const
virtual voidTObject::Copy(TObject& object) const
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual voidTObject::Error(const char* method, const char* msgfmt) const
virtual voidTObject::Execute(const char* method, const char* params, Int_t* error = 0)
virtual voidTObject::Execute(TMethod* method, TObjArray* params, Int_t* error = 0)
virtual voidTObject::ExecuteEvent(Int_t event, Int_t px, Int_t py)
virtual voidTObject::Fatal(const char* method, const char* msgfmt) const
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
HPairListI*getCompactTable()
TArrayI*getDimensions()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
Int_tgetEntries()
virtual const char*TObject::GetIconName() const
Int_tgetIndex(HLocation& aLoc)
Int_tgetIndex(UInt_t linAddr)
virtual const char*TObject::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Int_tgotoBegin()
Int_tgotoLocation(HLocation& aLoc)
virtual Bool_tTObject::HandleTimer(TTimer* timer)
virtual ULong_tTObject::Hash() const
virtual voidTObject::Info(const char* method, const char* msgfmt) const
virtual Bool_tTObject::InheritsFrom(const char* classname) const
virtual Bool_tTObject::InheritsFrom(const TClass* cl) const
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
virtual Bool_tTObject::IsFolder() const
Bool_tTObject::IsOnHeap() const
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
Int_tnext()
virtual Bool_tTObject::Notify()
static voidTObject::operator delete(void* ptr)
static voidTObject::operator delete(void* ptr, void* vp)
static voidTObject::operator delete[](void* ptr)
static voidTObject::operator delete[](void* ptr, void* vp)
void*TObject::operator new(size_t sz)
void*TObject::operator new(size_t sz, void* vp)
void*TObject::operator new[](size_t sz)
void*TObject::operator new[](size_t sz, void* vp)
HIndexTable&operator=(const HIndexTable&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidsetDimensions(Int_t nDim, Int_t* sizes)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidsetIndex(HLocation& aLoc, Int_t idx)
voidsetIndex(Int_t linAddr, Int_t idx)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidStreamer(TBuffer& b)
voidStreamerNVirtual(TBuffer& b)
virtual voidTObject::SysError(const char* method, const char* msgfmt) const
Bool_tTObject::TestBit(UInt_t f) const
Int_tTObject::TestBits(UInt_t f) const
virtual voidTObject::UseCurrentStyle()
virtual voidTObject::Warning(const char* method, const char* msgfmt) const
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0)
virtual Int_tTObject::Write(const char* name = 0, Int_t option = 0, Int_t bufsize = 0) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

public:
enum TObject::EStatusBits { kCanDelete
kMustCleanup
kObjInCanvas
kIsReferenced
kHasUUID
kCannotPick
kNoContextMenu
kInvalidObject
};
enum TObject::[unnamed] { kIsOnHeap
kNotDeleted
kZombie
kBitMask
kSingleKey
kOverwrite
kWriteDelete
};
protected:
HPairListIfCompactTableTable of linear addres -- index pairs
Int_tfCurrentPos!Current position in the table for iterations.
TArrayIfIndexArray!Index matrix
TArrayIfSizesSizes of the dimensions of the index matrix

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HIndexTable(const HIndexTable& )
Default constructor
~HIndexTable(void)
Destructor
void setDimensions(Int_t nDim, Int_t* sizes)
Sets the number of dimensions of the table and its corresponding
sizes.

Input:
 nDim ---> number of indexes to define an entry
 sizes --> max values of those indexes.
void Clear(Option_t* opt = "")
Resets all the indexes in the table.
Int_t i;
 for (i=0;i<fIndexArray.fN;i++) fIndexArray.fArray[i]=-1;
Bool_t checkLocation(HLocation& aLoc)
Checks if there is an entry in the index table for this location
Int_t gotoLocation(HLocation& aLoc)
This function along with HIndexTable::next allows iteration on the index
table through all the indexes corresponding to the location aLoc

gotoLocation positions a cursor at the index given by aLoc. It should be called
before any call to HIndexTable::next()

Return value:
  The number of positions corresponding to the given location.
Int_t gotoBegin(void)
This function positions the cursor for iterating on the HIndexTable at its
 very beggining.
Int_t next(void)
This function along with HIndexTable::gotoLocation allows iteration on the index
table.

next advances to the next location by incrementing a cursor. It returns
the index associated to the current location (the location before advancing)
void Streamer(TBuffer& b)
 Stream an object of class HIndexTable.
HIndexTable(const HIndexTable& )
Int_t getIndex(HLocation &aLoc)
{ return (fIndexArray[aLoc.getLinearIndex(&fSizes)]); }
void setIndex(HLocation &aLoc,Int_t idx)
TArrayI * getDimensions(void)
{return &fSizes;}
Int_t getIndex(UInt_t linAddr)
void setIndex(Int_t linAddr,Int_t idx)
Int_t getEntries(void)
{ return fIndexArray.fN; }
HPairListI* getCompactTable(void)
{return &fCompactTable;}

Last change: Sat May 22 12:58:10 2010
Last generated: 2010-05-22 12:58

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.