ROOT logo
HYDRA - THE HADES ANALYSIS PACKAGE » RUNTIMEDB » HParamList

class HParamList: public TObject

_HADES_CLASS_DESCRIPTION


  HParamObj

  Class for parameters stored in binary format in Oracle and used as list
  elements in HParamList::paramList.

  The overloaded constructors and fill-functions accept single values or arrays of type
    UChar_t, Int_t, UInt_t, Float_t, Double_t, char_t, Text_t.
  The arguments for arrays are
      the name of the parameter
      the pointer to the array
      the length of the array
  The data are automatically converted to an UChar_t array.
  For classes also the class version is stored, for ROOT classes also the TStreamerInfo.

  The input and output data format of UInt_t variables or arrays is HEX format
    with leadings zeros, for example 0x0000ffff.



  HParamList

  Class for the generic Oracle and ASCII interface for parameter containers
  derived from HParCond

  The class contains a list to stores objects of type HParamObj
  The list objects store the name, the value, the parameter type and some
  additional information depending for the object type.

  All add/addObject functions add an initialized parameter to the list for
  writing. The functions create a new list element and copy the data into
  this object.
  Add functions:
    1. accepted basic types: Int_t, UInt_t, Float_t, Double_t, UChar_t
    2. accepted ROOT arrays: TArrayI, TArrayF, TArrayD, TArrayC
    3. accepted string: Text_t*
       This can be any text, for example also numbers in hexadecimal or
       scientific format. The number of characters must be specified (default 1).
  AddObject function:
    Accepts classes derived from TObject.
    The persistent data elements are streamed into an UChar_t array using the
    class streamer. For ROOT classes, for example histograms, the ROOT streamer
    info is stored in an additional binary array.

  All fill/fillObject functions convert the data in the list element back
  to the type of the parameter and copy them into the data element in the
  initialization process.
    1. Single parameters of basic type:
       The functions return kFALSE, if the parameter is not in the list.
    2. Arrays:
      a) If the array size is specified (return code Bool_t), the functions return
         kFALSE, if the number of data elements in the list objects is not the same.
      b) If the array size is not specified (return code Int_t), the array is
         recreated with the size of the number of data elements in the list object.
         The functions return the number of data elements or 0, if the parameter
         was not found.
    3. Classes:
       The class version is checked and a warning printed, if it is not identical
       with the current version (typically class version of list object higher than
       version in the actual parameter container). The class streamer takes care
       for backward compatibility. A warning is printed, if the ROOT version is
       different from the current version.
       The function returns the number of bytes in the list object or 0, if the
       parameter was not found in the list.


Function Members (Methods)

public:
HParamList()
HParamList(const HParamList&)
virtual~HParamList()
voidTObject::AbstractMethod(const char* method) const
voidadd(HParamObj&)
voidadd(const Text_t*, const Text_t*)
voidadd(const Text_t*, Int_t)
voidadd(const Text_t*, UInt_t)
voidadd(const Text_t*, Float_t)
voidadd(const Text_t*, Double_t)
voidadd(const Text_t*, TArrayI&)
voidadd(const Text_t*, TArrayC&)
voidadd(const Text_t*, TArrayF&)
voidadd(const Text_t*, TArrayD&)
voidadd(const Text_t*, const UChar_t*, const Int_t)
voidadd(const Text_t*, const Int_t*, const Int_t)
voidadd(const Text_t*, const UInt_t*, const Int_t)
voidadd(const Text_t*, const Float_t*, const Int_t)
voidadd(const Text_t*, const Double_t*, const Int_t)
voidaddObject(const Text_t*, TObject*)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
virtual voidTObject::Clear(Option_t* = "")
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
Bool_tfill(const Text_t*, TArrayI*)
Bool_tfill(const Text_t*, TArrayC*)
Bool_tfill(const Text_t*, TArrayF*)
Bool_tfill(const Text_t*, TArrayD*)
Bool_tfill(const Text_t*, Text_t*, const Int_t)
Bool_tfill(const Text_t*, Int_t*, const Int_t nValues = 1)
Bool_tfill(const Text_t*, UInt_t*, const Int_t nValues = 1)
Bool_tfill(const Text_t*, Float_t*, const Int_t nValues = 1)
Bool_tfill(const Text_t*, Double_t*, const Int_t nValues = 1)
Bool_tfill(const Text_t*, UChar_t*, const Int_t nValues = 1)
Bool_tfillObject(const Text_t*, TObject*)
HParamObj*find(const Text_t* name)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
TList*getList()
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
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
virtual Bool_tTObject::Notify()
voidTObject::Obsolete(const char* method, const char* asOfVers, const char* removedFromVers) const
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)
HParamList&operator=(const HParamList&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
voidprint()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
Int_treplace(const Text_t*, UChar_t*)
Int_treplace(const Text_t*, Int_t*)
Int_treplace(const Text_t*, UInt_t*)
Int_treplace(const Text_t*, Float_t*)
Int_treplace(const Text_t*, Double_t*)
voidTObject::ResetBit(UInt_t f)
virtual voidTObject::SaveAs(const char* filename = "", Option_t* option = "") constMENU
virtual voidTObject::SavePrimitive(ostream& out, Option_t* option = "")
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual voidStreamer(TBuffer&)
voidStreamerNVirtual(TBuffer& ClassDef_StreamerNVirtual_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

protected:
TList*paramListList for parameters stored as string

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HParamList()
 Constructor
~HParamList()
 Destructor
void add(HParamObj& )
 Adds a HParamObj object to the list
void add(const Text_t* , const Text_t* )
 Adds a string parameter to the list
 name  = name of the parameter
 value = string value
void add(const Text_t* , Int_t )
 Adds a parameter of type Int_t to the list
void add(const Text_t* , UInt_t )
 Adds a parameter of type UInt_t to the list
void add(const Text_t* , Float_t )
 Adds a parameter of type Float_t to the list
void add(const Text_t* , Double_t )
 Adds a parameter of type Double_t to the list
void add(const Text_t* , TArrayI& )
 Adds a parameter of type TArrayI to the list
void add(const Text_t* , TArrayC& )
 Adds a parameter of type TArrayC  to the list
void add(const Text_t* , TArrayF& )
 Adds a parameter of type TArrayF to the list
void add(const Text_t* , TArrayD& )
 Adds a parameter of type TArrayD to the list
void add(const Text_t* , const UChar_t* , const Int_t )
 Adds a binary array of size nValues to the list
void add(const Text_t* , const Int_t* , const Int_t )
 Adds an array of type Int_t and of size nValues as binary to the list
void add(const Text_t* , const UInt_t* , const Int_t )
 Adds an array of type UInt_t and of size nValues as binary to the list
void add(const Text_t* , const Float_t* , const Int_t )
 Adds an array of type Float_t and of size nValues as binary to the list
void add(const Text_t* , const Double_t* , const Int_t )
 Adds an array of type Double_t and of size nValues as binary to the list
void addObject(const Text_t* , TObject* )
 Adds a TObject to the list, sets the class version and the streamer info for
 ROOT classes
void print()
 Prints the parameter list including values
Bool_t fill(const Text_t* , Text_t* , const Int_t )
 Copies the data from the list object into the parameter value of type string
Bool_t fill(const Text_t* , UChar_t* , const Int_t nValues = 1)
 Copies the data from the list object into the parameter array of type UChar_t of size nValues.
 The function returns an error, if the array size of the list object is not equal
 to nValues.
Bool_t fill(const Text_t* , Int_t* , const Int_t nValues = 1)
 Copies the data from the list object into the parameter array of type Int_t.
 The function returns an error, if the array size of the list object is not equal
 to nValues.
Bool_t fill(const Text_t* , UInt_t* , const Int_t nValues = 1)
 Copies the data from the list object into the parameter array of type Int_t.
 The function returns an error, if the array size of the list object is not equal
 to nValues.
Bool_t fill(const Text_t* , Float_t* , const Int_t nValues = 1)
 Copies the data from the list object into the parameter array of type Float_t.
 The function returns an error, if the array size of the list object is not equal
 to nValues.
Bool_t fill(const Text_t* , Double_t* , const Int_t nValues = 1)
 Copies the data from the list object into the parameter array of type Double_t.
 The function returns an error, if the array size of the list object is not equal
 to nValues.
Bool_t fill(const Text_t* , TArrayI* )
 Copies the data from the list object into the parameter value of type TArrayI
 The array is resized, if the number of data is different.
Bool_t fill(const Text_t* , TArrayC* )
 Copies the data from the list object into the parameter value of type TArrayC
 The array is resized, if the number of data is different.
Bool_t fill(const Text_t* , TArrayF* )
 Copies the data from the list object into the parameter value of type TArrayF
 The array is resized, if the number of data is different.
Bool_t fill(const Text_t* , TArrayD* )
 Copies the data from the list object into the parameter value of type TArrayD
 The array is resized, if the number of data is different.
Int_t replace(const Text_t* , UChar_t* )
 Copies the data from the list object into the parameter array of type UChar_t.
 Recreates the array, if existing, and returns the number of array elements.
Int_t replace(const Text_t* , Int_t* )
 Copies the data from the list object into the parameter array of type Int_t.
 Recreates the array, if existing, and returns the number of array elements.
Int_t replace(const Text_t* , UInt_t* )
 Copies the data from the list object into the parameter array of type UInt_t.
 Recreates the array, if existing, and returns the number of array elements.
Int_t replace(const Text_t* , Float_t* )
 Copies the data from the list object into the parameter array of type Float_t.
 Recreates the array, if existing, and returns the number of array elements.
Int_t replace(const Text_t* , Double_t* )
 Copies the data from the list object into the parameter array of type Double_t.
 Recreates the array, if existing, and returns the number of array elements.
Bool_t fillObject(const Text_t* , TObject* )
 Fills the object obj (must exist!) via the Streamer and returns the class version.
 Prints a warning if the class version in the list objects differs from the actual
 class version.
HParamList()
HParamObj* find(const Text_t* name)
TList* getList()
{ return paramList; }