ROOT logo
AliRoot » MUON » AliMUONVGeometryBuilder

class AliMUONVGeometryBuilder: public TObject

 Class AliMUONVGeometryBuilder

 Abstract base class for geometry construction per geometry module(s).
 Author: Ivana Hrivnacova, IPN Orsay
 23/01/2004

Function Members (Methods)

 
    This is an abstract class, constructors will not be documented.
    Look at the header to check for available constructors.

public:
virtual~AliMUONVGeometryBuilder()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual boolApplyGlobalTransformation()
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 voidCreateGeometry()
virtual voidCreateMaterials()
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
AliMUONGeometryModule*Geometry(Int_t i) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
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
Int_tNofGeometries() 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)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
voidRebuildSVMaps(Bool_t withEnvelopes = true) const
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)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetReferenceFrame(const TGeoCombiTrans& referenceFrame)
virtual voidSetSensitiveVolumes()
virtual voidSetTransformations()
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidSetVolumes()
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
voidUpdateDetElements(Bool_t create) 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
AliMUONGeometryEnvelopeStore*GetEnvelopes(Int_t moduleId) const
AliMUONGeometryModule*GetGeometry(Int_t moduleId) const
Int_tGetModuleId(const TString& envName) const
AliMUONStringIntMap*GetSVMap(Int_t moduleId) const
voidTObject::MakeZombie()
voidSetMotherVolume(Int_t moduleId, const TString& volumeName)
voidSetTransformation(Int_t moduleId, const TGeoTranslation& translation, const TGeoRotation& rotation)
voidSetTranslation(Int_t moduleId, const TGeoTranslation& translation)
voidSetVolume(Int_t moduleId, const TString& volumeName, Bool_t isVirtual = false)
private:
TStringComposePath(const TString& volName, Int_t copyNo) const
TGeoHMatrixConvertDETransform(const TGeoHMatrix& transform) const
TGeoHMatrixConvertTransform(const TGeoHMatrix& transform) const
voidMapSV(const TString& path0, const TString& volName, Int_t detElemId) const
AliMUONVGeometryBuilder&operator=(const AliMUONVGeometryBuilder& rhs)

Data Members

private:
TObjArray*fGeometryModules/< \brief the modules geometries that will be built
TGeoCombiTransfReferenceFrame/< \brief the transformation from the builder

Class Charts

Inheritance Chart:
TObject
AliMUONVGeometryBuilder
AliMUONCommonGeometryBuilder
AliMUONSlatGeometryBuilder
AliMUONSt1GeometryBuilder
AliMUONSt1GeometryBuilderV2
AliMUONSt2GeometryBuilder
AliMUONSt2GeometryBuilderV2
AliMUONTriggerGeometryBuilder

Function documentation

~AliMUONVGeometryBuilder()
 Destructor
ConvertTransform(const TGeoHMatrix& transform) const
 Convert transformation into the reference frame
ConvertDETransform(const TGeoHMatrix& transform) const
 Convert DE transformation into the reference frame
TString ComposePath(const TString& volName, Int_t copyNo) const
 Compose path from given volName and copyNo
void MapSV(const TString& path0, const TString& volName, Int_t detElemId) const
 Update the path with all daughters volumes recursively
 and map it to the detection element Id if it is a sensitive volume
GetGeometry(Int_t moduleId) const
 Return the module geometry specified by moduleId
GetEnvelopes(Int_t moduleId) const
 Return the envelope store of the module geometry specified by moduleId
GetSVMap(Int_t moduleId) const
 Return the transformation store of the module geometry specified by moduleId
GetModuleId(const TString& envName) const
 Return module Id which has the envelope with given name
void SetTranslation(Int_t moduleId, const TGeoTranslation& translation)
 Set the translation to the geometry module given by moduleId,
 apply reference frame transformation
void SetTransformation(Int_t moduleId, const TGeoTranslation& translation, const TGeoRotation& rotation)
 Set the transformation to the geometry module given by moduleId,
 apply reference frame transformation
void SetVolume(Int_t moduleId, const TString& volumeName, Bool_t isVirtual = false)
 Set volume name, virtuality
void SetMotherVolume(Int_t moduleId, const TString& volumeName)
 Set mother volume name
void SetReferenceFrame(const TGeoCombiTrans& referenceFrame)
 Set reference frame to builder and to all associated geometry
 modules
void UpdateDetElements(Bool_t create) const
 Create or update detection elements:
 - if parameter create is true: detection elements are
 created and their global and local transformations are filled from geometry.
 - otherwise: only the volume path is passed from geometry
 to detection elements
void RebuildSVMaps(Bool_t withEnvelopes = true) const
 Clear the SV maps in memory and fill them from defined geometry.
Int_t NofGeometries() const
 Return the number of geometry modules
{ return fGeometryModules->GetEntriesFast(); }
AliMUONGeometryModule* Geometry(Int_t i) const
 Return the \a i th geometry module
void CreateMaterials()
 Function to be overriden in a concrete chamber/station
 geometry builder class.
 Only materials that are not defined in the common
 functions should be defined here.
{}
void CreateGeometry()
 Function to be overriden in a concrete chamber/station
 geometry builder class. \n
 The geometry built there should not be placed
 in ALIC; but all volumes going to ALIC
 have to be added as envelopes to the chamber
 geometries
 (They will be then placed automatically
 usind the provided transformation.
void SetVolumes()
 Function to be overriden in a concrete chamber/station
 geometry class. \n
 The volume name for each geometry module, its virtuality
 and eventually the mother volume name should be defined
void SetTransformations()
 Function to be overriden in a concrete chamber/station
 geometry class. \n
 The transformation of each chamber(s) wrt ALICE
 should be defined and set to its geometry class.
void SetSensitiveVolumes()
 Function to be overriden in a concrete chamber/station
 geometry class. \n
 The sensitive volumes Ids for each chamber
 should be defined and set to its geometry class.
bool ApplyGlobalTransformation()
 Function to be overriden (and return false)
 in the concrete geometry builder classes
 which are already defined in the new ALICE
 coordinate frame
{ return true; }