class HDetGeomPar: public HParSet

_HADES_CLASS_DESCRIPTION

 HGeomDetPar

 Container class for the basic geometry parameters of a detector

 This container can hold the information about the sizes and positions of
 volumes forming a geometry tree with 2 levels: modules and components in
 these modules.

 The information is stored in 2 arrays.
 The array "modules" is a linear array of maxSectors*maxModules pointers to
 detector modules (type HModGeomPar) each having a name and a lab
 transformation which describes the position and orientation of the internal
 module coordinate system relative to the cave coordinate system.
 Each module has a pointer to a reference module describing the type of this
 module. These module types (objects of class HGeomCompositeVolume) are
 stored in the second array "refVolumes". (Normally the modules in the six
 sectors are identical and the information has to be stored only once. Only
 their position is different.)
 Each reference module is a volume with a detector dependent number of
 components which are volumes themselves. Each volume has a name, a shape, a
 mother, a shape dependant number of points describing the size and a
 transformation. The transformation of a module describes the detector
 coordinate system (ideal position in a sector) and the transformation of a
 component shows the position and orientation relative to  this detector
 coordinate system.

 inline functions of class HDetGeomPar:

   Int_t getNumComponents()
       returns the number of components in a module
   Int_t getMaxSectors()
       returns the maximum number of sectors
   Int_t getMaxModules()
       returns the maximum number of modules
   HGeomShapes* getShapes()
       return the pointer to the shape classes

 virtual functions of class HDetGeomPar which have to be implemented by the
 detector classes:
   virtual Bool_t init(HParIo*,Int_t*)
       initilizes the container from an input
   virtual Int_t write(HParIo*)
       writes the container to an output
   virtual Int_t getSecNum(const TString&)
       retrieves the sector number from the name of a module
   virtual Int_t getModNumInMod(const TString&) {return -1;}
       retrieves the module number from the name of a module
   virtual Int_t getModNumInComp(const TString&) {return -1;}
       retrieves the module number from the name of a component
   virtual Int_t getCompNum(const TString&) {return -1;}
       retrieves the component number from the name of a component

 inline functions of class HModGeomPar:

   void setVolume(HGeomCompositeVolume* p)
       sets the pointer to the reference volume
   HGeomCompositeVolume* getRefVolume()
       returns a pointer to the reference volume
   HGeomTransform& getLabTransform()
       returns the lab transformation of a module
   const Text_t* getRefName() const
       sets the name of the reference volume


Function Members (Methods)

public:
HDetGeomPar(const HDetGeomPar&)
HDetGeomPar(const Char_t* name = "", const Char_t* title = "", const Char_t* context = "", const Char_t* detectorName = "")
virtual~HDetGeomPar()
voidTObject::AbstractMethod(const char* method) const
voidaddRefVolume(HGeomCompositeVolume*, const Int_t)
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
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 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 voidTNamed::FillBuffer(char*& buffer)
virtual TObject*TObject::FindObject(const char* name) const
virtual TObject*TObject::FindObject(const TObject* obj) const
const Char_t*HParSet::getAuthor() const
virtual Int_tgetCompNum(const TString&)
const Char_t*HParSet::getDescription() const
const Text_t*HParSet::getDetectorName()
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
Int_tHParSet::getInputVersion(Int_t i)
Int_tgetMaxModules()
Int_tgetMaxSectors()
virtual Int_tgetModNumInComp(const TString&)
virtual Int_tgetModNumInMod(const TString&)
HModGeomPar*getModule(const Int_t)
HModGeomPar*getModule(const Int_t, const Int_t)
virtual const char*TNamed::GetName() const
Int_tgetNumComponents()
Int_tgetNumModules()
Int_tgetNumRefModules()
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
HGeomCompositeVolume*getRefVolume(const Int_t)
virtual Int_tgetSecNum(const TString&)
voidgetSector(TObjArray*, const Int_t)
HGeomShapes*getShapes()
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() 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_tinit(HParIo*, Int_t*)
virtual voidTObject::Inspect() constMENU
voidTObject::InvertBit(UInt_t f)
virtual TClass*IsA() const
virtual Bool_tTObject::IsEqual(const TObject* obj) const
Bool_tisFirstInitialization()
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
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)
HDetGeomPar&operator=(const HDetGeomPar&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidHParSet::print()
virtual voidTNamed::Print(Option_t* option = "") const
virtual voidprintParam()
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
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)
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)
voidsetNotFirstInit()
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)
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_twrite(HParIo*)
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:
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
Bool_tisFirstInit! kTRUE before first initialization
Int_tmaxModulesmaximum number of modules in a sector
Int_tmaxSectorsmaximum number of sectors
TObjArray*moduleslinear array of all modules (type HModGeomPar)
Int_tnumComponentsnumber of components in a sector
TStringHParSet::paramContextContext/purpose for parameters and conditions
TObjArray*refVolumesarray of module types (type HGeomCompositeVolume)
HGeomShapes*shapes! pointer to the shape classes
Bool_tHParSet::status! static flag
Int_tHParSet::versions[3]! versions of container in the 2 possible inputs

Class Charts

Inheritance Inherited Members Includes Libraries
Class Charts

Function documentation

HDetGeomPar(const Char_t* name = "", const Char_t* title = "", const Char_t* context = "", const Char_t* detectorName = "")
 The constructor creates an array of maxSectors*maxModules pointers of
 type HModGeomPar
 The pointers to modules, which are not active (taken from the setup),
 are NULL-pointers.
 It creates also an array of size maxModules, which is filled which the
 reference modules during the first initialisation
~HDetGeomPar()
 destructor deletes the arrays
Int_t getNumModules()
 returns the maximum number of the modules
Int_t getNumRefModules()
 returns the maximum number of the reference modules
HModGeomPar* getModule(const Int_t , const Int_t )
 returns a pointer to the module with index m in sector with index s
HModGeomPar* getModule(const Int_t )
 returns a pointer to the module at position n in the array
void getSector(TObjArray* , const Int_t )
 fills the given array with the pointers to all modules in the sector with
 index s
HGeomCompositeVolume* getRefVolume(const Int_t )
 returns a pointer to the reference module with index m
void addRefVolume(HGeomCompositeVolume* , const Int_t )
 adds the given reference volume at postion n in the array refVolumes
void clear()
 clears the parameter container completely as Long_t as it was not
   initialized completly
 otherwise it clears only the module transformation, but not the
   reference volume and its inner parts
 This function is virtual and could be overloaded in the derived class if needed.
void printParam()
 prints the parameters
 This function is virtual and could be overloaded in the derived class if
 needed.
HDetGeomPar(const Char_t* name = "", const Char_t* title = "", const Char_t* context = "", const Char_t* detectorName = "")
Int_t getNumComponents()
{return numComponents;}
Int_t getMaxSectors()
{return maxSectors;}
Int_t getMaxModules()
{return maxModules;}
Bool_t isFirstInitialization()
{return isFirstInit;}
void setNotFirstInit()
{isFirstInit=kFALSE;}
Bool_t init(HParIo* , Int_t* )
{return kFALSE;}
Int_t write(HParIo* )
{return kFALSE;}
Int_t getSecNum(const TString& )
{return -1;}
Int_t getModNumInMod(const TString& )
{return -1;}
Int_t getModNumInComp(const TString& )
{return -1;}
Int_t getCompNum(const TString& )
{return -1;}
HGeomShapes* getShapes()
{return shapes;}

Last change: Sat May 22 12:54:35 2010
Last generated: 2010-05-22 12:54

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.