class HMatrixCategory: public HCategory

_HADES_CLASS_DESCRIPTION

HMatrixCategory

  In this particular HCategory all the objects belonging to the category
 are stored in a matrix-like fashion; so before start using the category it
 is needed to indicate the number of indexes in this matrix and the range of
 each index

  When the matrix category is stored in a tree it creates one superbranch
 holding one subbranch per data member in the objects held by the category.
 All the objects held by the category are stored through that superbranch.


Function Members (Methods)

public:
HMatrixCategory()
HMatrixCategory(const HMatrixCategory&)
HMatrixCategory(const Text_t* className, Int_t nSizes, Int_t* sizes, Float_t fillRate = 0.1)
virtual~HMatrixCategory()
voidTObject::AbstractMethod(const char* method) const
virtual voidactivateBranch(TTree* tree, Int_t splitLevel)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidBrowse(TBrowser* b)
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 Bool_tfilter(HFilter& aFilter)
virtual Bool_tfilter(HLocation& aLoc, HFilter& aFilter)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Int_tHCategory::getBranchingLevel()
Cat_tHCategory::getCategory()
TObject*HCategory::getCatHeader()
virtual TClass*getClass()
virtual const Text_t*getClassName()
const TCollection*getCollection()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual Int_tgetEntries()
virtual const char*TObject::GetIconName() const
virtual Int_tgetIndex(HLocation& aLoc)
virtual Int_tgetIndex(TObject* pObj)
virtual const char*TObject::GetName() const
virtual TObject*&getNewSlot(HLocation& aLoc, Int_t* pIndex = 0)
virtual TObject*getObject(HLocation& aLoc)
virtual TObject*getObject(Int_t index)
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
Int_tgetSize(Int_t aIdx)
TArrayI*getSizes()
virtual TObject*&getSlot(HLocation& aLoc, Int_t* pIndex = 0)
virtual const char*TObject::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
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_tHCategory::IsFolder() const
Bool_tTObject::IsOnHeap() const
Bool_tHCategory::IsPersistent()
virtual Bool_tisSelfSplitable()
virtual Bool_tTObject::IsSortable() const
Bool_tTObject::IsZombie() const
virtual voidTObject::ls(Option_t* option = "") const
virtual voidmakeBranch(TBranch* parent)
virtual TIterator*MakeIterator(Option_t* opt = "catIter", Bool_t dir = kIterForward)
TIterator*HCategory::MakeReverseIterator()
voidTObject::MayNotUse(const char* method) const
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)
HMatrixCategory&operator=(const HMatrixCategory&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Bool_tquery(TCollection* aCol, HFilter& aFilter)
virtual Bool_tquery(TCollection* aCol, HLocation& aLoc)
virtual Bool_tquery(TCollection* aCol, HLocation& aLoc, HFilter& aFilter)
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)
voidHCategory::setBranchingLevel(Int_t nLevel)
voidHCategory::setCategory(Cat_t aCat)
voidHCategory::setCatHeader(TObject* fObj)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidHCategory::setPersistency(Bool_t per)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidsetup(const Text_t* className, Int_t nSizes, Int_t* sizes, Float_t fillRate = 0.1)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual voidHCategory::sort()
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:
Int_tHCategory::fBranchingLevelNumber of levels for the data in the category
Cat_tHCategory::fCatIdentifier for this category
TClonesArray*fDataContainer for the data in the Matrix category;
TObject*HCategory::fHeaderCategory header.
HIndexTable*fIndexTableTable of the position in fData of data objects
Int_tfNDataObjsNumber of data objects actually stored.
Bool_tHCategory::fPersistency! Indicates whether this category is stored in output.

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HMatrixCategory(const HMatrixCategory& )
Default constructor
HMatrixCategory(const Text_t* className, Int_t nSizes, Int_t* sizes, Float_t fillRate = 0.1)
 Creates a HMatrixCategory holding objects of class "className" clasified
by nSizes indexes (giving their location) whose maximun values are the
indicated in the vector "sizes".

 However it only allocates memory for fillRate*(maximun number of objects)
data objects.
~HMatrixCategory(void)
Destructor
void setup(const Text_t* className, Int_t nSizes, Int_t* sizes, Float_t fillRate = 0.1)
This method sets up a category.

Input:
  className ---> a string with the name of the object's class stored in
                 the category
  nSizes ---> Number of indexes needed to access an object (fBranchingLevel)
  sizes ---> a vector of ints containing the maximum value for each of the
             indexes before.
  fillRate---> Expected fill factor in the category
               (number of slots used)/(maximun number of slots)
const Text_t * getClassName(void)
Returns the class' name of the objects held by the category
TClass * getClass(void)
TArrayI * getSizes(void)
returns an array of ints with the maximun value for the indexes used to
get an object
Int_t getSize(Int_t aIdx)
Returns the maximun value of the index aIdx
void activateBranch(TTree* tree, Int_t splitLevel)
Activates the branches in tree matching the appropiate names.
void makeBranch(TBranch* parent)
This function should not be called, since HMatrixCategory is not self
splittable
Bool_t isSelfSplitable(void)
Determines if the category can be automatically split or it has
its own splitting algorithm (in this last case the function makeBranch is
called for splitting).

returns kFALSE
TObject *& getNewSlot(HLocation& aLoc, Int_t* pIndex = 0)
Should not be used for HMatrixCategory
TObject *& getSlot(HLocation& aLoc, Int_t* pIndex = 0)
Returns a memory address corresponding to the HLocation aLoc, where a new
object can be instantiated
TObject * getObject(HLocation &aLoc)
Returns the object at the HLocation aLoc (see HCategory)
TObject * getObject(Int_t index)
Returns the object at index in internal TClonesArray
Bool_t query(TCollection *aCol,HFilter &aFilter)
Puts all objects in the category which pass the HFilter aFilter in the
collection pointed by aCol.
Bool_t query(TCollection *aCol,HLocation &aLoc)
Puts all objects in the category corresponding to the HLocation aLoc in
the collection pointed by aCol
Bool_t query(TCollection* aCol, HLocation& aLoc, HFilter& aFilter)
Puts all the objects in the category passing the HFilter aFilter and
corresponding to the HLocation aLoc into the collection pointed by aCol
Bool_t filter(HFilter& aFilter)
see HCategory
Bool_t filter(HLocation& aLoc, HFilter& aFilter)
see HCategory
TIterator * MakeIterator(Option_t* opt = "catIter", Bool_t dir = kIterForward)
Returns an iterator, which iterates in the direction dir and (as default)
throuhg the whole category.
void Clear(Option_t* opt = "")
 see HCategory
void Browse(TBrowser* b)
Browse objects in this category
void Streamer(TBuffer& b)
 Stream an object of class HMatrixCategory.
HMatrixCategory(const HMatrixCategory& )
const TCollection* getCollection()
{return fData;}
Int_t getEntries()
{return fData->GetEntriesFast();}
Int_t getIndex(HLocation &aLoc)
{return fIndexTable->getIndex(aLoc);}
Int_t getIndex(TObject* pObj)
{return fData->IndexOf(pObj);}

Last change: Sat May 22 12:59:27 2010
Last generated: 2010-05-22 12:59

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.