class HPidHistogramsCont: public HPidParCont

_HADES_CLASS_DESCRIPTION


 HPidHistogramsCont

 Container for define set of histograms with interface for easy access
 of values from them.
 The histograms are organized in an array with access:
 (pid, index)
 The user (class) defines maximum number of histograms for one id (max index).
 The container is stored using normal Pid containers scheme.

 Technical warning: copy functions not implemented !!!


Function Members (Methods)

public:
HPidHistogramsCont()
HPidHistogramsCont(const Char_t* name, const Char_t* title, const Char_t* context, Int_t iHistsPerPart = 1)
virtual~HPidHistogramsCont()
voidTObject::AbstractMethod(const char* method) const
Bool_taddHistogram(Int_t iPartId, const TH1* pHist)
Bool_taddHistogram(Int_t iPartId, Int_t iOffset, Int_t iSector, const TH1* pHist)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual Bool_tcheckContext(Int_t nMomAlgInd)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidclear()
virtual voidTNamed::Clear(Option_t* option = "")
virtual TObject*TNamed::Clone(const char* newname = "") const
virtual Int_tTNamed::Compare(const TObject* obj) const
virtual voidTNamed::Copy(TObject& named) const
voidHParSet::copyComment(HParSet& r)
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual voiddetachHistograms()
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual voidDraw(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 voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
Int_tfindParticleIndex(Int_t iPartId) const
TObjArray&getArray()
const Char_t*HParSet::getAuthor() const
const Char_t*HParSet::getDescription() const
const Text_t*HParSet::getDetectorName()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TH1*getHistogram(Int_t iPartId, Int_t iOffset, Int_t iSector) const
Int_tgetHistsPerPart() const
virtual const char*TObject::GetIconName() const
Int_tHParSet::getInputVersion(Int_t i)
virtual const char*TNamed::GetName() const
Int_tgetNHistograms() const
Int_tgetNParticles() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
const Char_t*HParSet::getParamContext() const
virtual Bool_tgetParams(HParamList* pl)
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
Stat_tgetValue(Int_t iPartId, Float_t fX, Float_t fY = 0.0f, Float_t fZ = 0.0f) const
Stat_tgetValue(Int_t iPartId, Int_t iOffset, Int_t iSector, Float_t fX, Float_t fY = 0.0f, Float_t fZ = 0.0f) const
Bool_tgetWarnings() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
Bool_tHParSet::hasChanged()
virtual ULong_tTNamed::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 Bool_tHPidParCont::init()
virtual Bool_tHPidParCont::init(HParIo* inp)
virtual Bool_tHPidParCont::init(HParIo* inp, Int_t*)
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_tTNamed::IsSortable() const
Bool_tHParSet::isStatic()
Bool_tTObject::IsZombie() const
virtual voidTNamed::ls(Option_t* option = "") const
static Bool_tHPidParCont::makePidParIo()
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)
HPidParCont&HPidParCont::operator=(const HPidParCont&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidprint()
virtual voidPrint(Option_t* p = "")
virtual voidHParCond::printParams()
virtual voidputParams(HParamList* pl)
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidremoveHistogram(Int_t iPartId, Int_t iOffset = 0, Int_t iSector = 0)
voidTObject::ResetBit(UInt_t f)
voidHParSet::resetInputVersions()
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(basic_ostream<char,char_traits<char> >& out, Option_t* option = "")
voidHParSet::setAuthor(const Char_t* s)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
voidHParSet::setChanged(Bool_t flag = kTRUE)
virtual voidsetContext(Int_t nMomAlgInd)
voidHParSet::setDescription(const Char_t* s)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidHParSet::setInputVersion(Int_t v = -1, Int_t i = 0)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidHParSet::setParamContext(const Char_t*)
voidHParSet::setStatic(Bool_t flag = kTRUE)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
voidsetWarnings(Bool_t b = kTRUE)
virtual voidShowMembers(TMemberInspector& insp, char* parent)
virtual Int_tTNamed::Sizeof() const
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_tHPidParCont::write(HParIo* io)
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()
private:
Int_tgetIndex(Int_t iPart, Int_t iOffset, Int_t iSector) const
Bool_tresize(Int_t iNPSet)
voidsetDefault()

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:
TStringHParSet::authorAuthor of parameters
Bool_tHParSet::changed! flag is kTRUE if parameters have changed
TStringHParSet::descriptionDescription of parameters
Text_tHParSet::detName[10]! name of the detector the container belongs to
TStringTNamed::fNameobject identifier
TStringTNamed::fTitleobject title
TStringHParSet::paramContextContext/purpose for parameters and conditions
Bool_tHParSet::status! static flag
Int_tHParSet::versions[3]! versions of container in the 2 possible inputs
private:
TObjArrayaHistograms
TArrayIaParticles
Bool_tbOk!
Bool_tbWarnings!
Int_tiHistsPerPart
Int_tiNParticles

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HPidHistogramsCont(void)
 empty constructor for reading from Stream
HPidHistogramsCont(const Char_t* name, const Char_t* title, const Char_t* context, Int_t iHistsPerPart = 1)
 Constructor.
 Makes the array for particle ids and historgams
 The iNParticles and iHistsPerPart must be > 0
 If the parameters are wrong, or there is no memory an error is printed
 and the bOk flag is set off.
void setDefault(void)
 function called in constructors for clearnig memory befor it is used
~HPidHistogramsCont(void)
 Remove all histograms and delete arrays
Bool_t resize(Int_t iNPSet)
 Change the size of the arrays and copy old contains if exists
 The histograms, which will not be included into new array are NOT DELETED !!!
void clear(void)
 Delete the histograms and set all particle ids to default values (-1)
 The arrays of particle ids and histograms are not removed
void detachHistograms(void)
 Deteach histograms from the file by calling hist->SetDirectory(NULL)
void putParams(HParamList* pl)
 Put params into HParamList
Bool_t getParams(HParamList* pl)
 Get params from HParamList
Int_t findParticleIndex(Int_t iPartId) const
 Return the index of particle id iPart in the array.
 If the partcle id is not set -1 is returned
Bool_t addHistogram(Int_t iPartId, Int_t iOffset, Int_t iSector, const TH1* pHist)
 A !!! COPY !!! of histogram pHist is stored in the position for proper
 iPartId and iOffset (both >= 0). If the position of iOffset is out of bounds
 or iPartId is not on the array yet and there is no space in the array for the
 new entry the error is reported and kFALSE returned.
 If on the position there is already a histogram it is deleted and warning
 is printed
 check the configuration
void removeHistogram(Int_t iPartId, Int_t iOffset = 0, Int_t iSector = 0)
 Removes histogram for the given particle id and offset
TH1* getHistogram(Int_t iPartId, Int_t iOffset, Int_t iSector) const
 Return a pointer to the histogram for given iPartId and iOffset
 In case of out of bounds parameters the error is reported and NULL returned
Stat_t getValue(Int_t iPartId, Int_t iOffset, Int_t iSector, Float_t fX, Float_t fY = 0.0f, Float_t fZ = 0.0f) const
 Returns value from the histogram corresponding to given parameters.
 If the address of the histogram is out of bounds or histogram
 is not set in the array a warning is reported and -1.0f returned.
 Otherwise the returned value is calculated in a way:
 pHist->GetBinContent(pHist->FindBin((fX, fY, fZ))
 If (fX, fY, fZ) is out of range of the histogram, then the value from
 the "closest" bin is returned
void print(void)
 Print information about the histograms in the container
void Draw(Option_t* option = "")
Bool_t checkContext(Int_t nMomAlgInd)
Check the context name and compare with current momentum alg. index
return kTRUE if context corresponds to right momentum algorithm
Possible substrings in contex name are:
 KICK123
 KICK
 SPLINE
 REFT
 RUNGEKUTTA
momentum alg. indices are defined in piddef.h
void setContext(Int_t nMomAlgInd)
void Streamer(TBuffer& b)
 Stream an object of class HPidHistogramsCont.
 Default Streamer created by Cint + detachHistograms() after reading
Int_t getIndex(Int_t iPart, Int_t iOffset, Int_t iSector) const
TObjArray & getArray()
{return aHistograms;}
Int_t getNParticles(void)
{ return iNParticles; }
Int_t getHistsPerPart(void)
{ return iHistsPerPart; }
Int_t getNHistograms(void)
{ return iNParticles * iHistsPerPart; }
Bool_t addHistogram(Int_t iPartId, Int_t iOffset, Int_t iSector, const TH1* pHist)
{ return addHistogram(iPartId, 0, 0, pHist); }
Stat_t getValue(Int_t iPartId, Int_t iOffset, Int_t iSector, Float_t fX, Float_t fY = 0.0f, Float_t fZ = 0.0f) const
TH1*            getHistogram(Int_t iPartId, Int_t iOffset = 0) const;
{ return getValue(iPartId, 0, 0, fX, fY, fZ); }
void setWarnings(Bool_t b = kTRUE)
{ bWarnings = b; }
Bool_t getWarnings(void)
{ return bWarnings; }
void Print(Option_t* p = "")
{ print(); }

Author: Marcin Jaskula 10/10/2002
Last change: Sat May 22 13:07:08 2010
Last generated: 2010-05-22 13:07

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.