ROOT logo
AliRoot » FMD » AliFMDDetector

class AliFMDDetector: public TNamed


 AliFMDDetector.

 Base class for concrete FMD detectors, like AliFMD1, AliFMD2,
 AliFMD3.
 Utility class to help implement the FMD geometry.  This provides
 the interface for the concrete geometry implementations of the FMD
 sub-detectors.

 The AliFMDGeometry object owns the AliFMDDetector objects

 Latest changes by Christian Holm Christensen

Function Members (Methods)

public:
AliFMDDetector(const AliFMDDetector& other)
AliFMDDetector(Int_t id, AliFMDRing* inner, AliFMDRing* outer)
virtual~AliFMDDetector()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
static TClass*Class()
virtual const char*TObject::ClassName() const
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
virtual voidTObject::Delete(Option_t* option = "")MENU
voidDetector2XYZ(Char_t ring, UShort_t sector, UShort_t strip, Double_t& x, Double_t& y, Double_t& z) const
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
TGeoMatrix*FindTransform(Char_t ring, UShort_t sector) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
Int_tGetId() const
AliFMDRing*GetInner() const
Double_tGetInnerHoneyHighR() const
Double_tGetInnerHoneyLowR() const
Double_tGetInnerZ() const
virtual const char*TNamed::GetName() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
AliFMDRing*GetOuter() const
Double_tGetOuterHoneyHighR() const
Double_tGetOuterHoneyLowR() const
Double_tGetOuterZ() const
AliFMDRing*GetRing(Char_t id) const
Double_tGetRingZ(Char_t id) const
virtual const char*TNamed::GetTitle() const
virtual UInt_tTObject::GetUniqueID() const
virtual Bool_tTObject::HandleTimer(TTimer* timer)
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 voidInit()
virtual voidInitTransformations()
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_tTObject::IsZombie() const
virtual voidTNamed::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)
AliFMDDetector&operator=(const AliFMDDetector& other)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTNamed::Print(Option_t* option = "") const
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 = "")
virtual voidSetAlignableVolumes() const
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)
voidSetId(Int_t x)
voidSetInnerHoneyHighR(Double_t x)
voidSetInnerHoneyLowR(Double_t x)
voidSetInnerZ(Double_t x)
virtual voidTNamed::SetName(const char* name)MENU
virtual voidTNamed::SetNameTitle(const char* name, const char* title)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetOuterHoneyHighR(Double_t x)
voidSetOuterHoneyLowR(Double_t x)
voidSetOuterZ(Double_t x)
virtual voidTNamed::SetTitle(const char* title = "")MENU
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
virtual Int_tTNamed::Sizeof() const
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
Bool_tXYZ2Detector(Double_t x, Double_t y, Double_t z, Char_t& ring, UShort_t& sector, UShort_t& strip) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
Bool_tHasAllTransforms(Char_t ring) const
voidTObject::MakeZombie()

Data Members

protected:
Int_tfIdDetector number
AliFMDRing*fInnerPointer to inner ring information
Double_tfInnerHoneyHighROuter radius of inner honeycomb
Double_tfInnerHoneyLowRInner radius of inner honeycomb
TObjArray*fInnerTransformsList of inner module global
Double_tfInnerZPosition of outer ring along z
TStringTNamed::fNameobject identifier
AliFMDRing*fOuterPointer to outer ring information
Double_tfOuterHoneyHighROuter radius of outer honeycomb
Double_tfOuterHoneyLowRInner radius of outer honeycomb
TObjArray*fOuterTransformsList of outer module global
Double_tfOuterZPosition of outer ring along z
TStringTNamed::fTitleobject title

Class Charts

Inheritance Chart:
TNamed
AliFMDDetector
AliFMD1
AliFMD2
AliFMD3

Function documentation

AliFMDDetector(Int_t id, AliFMDRing* inner, AliFMDRing* outer)
 Constructor

   ID         Id of detector (1,2, or 3)
   INNER      Inner ring geometry
   OUTER      Outer ring geometry (if any)

AliFMDDetector(const AliFMDDetector& other)
 Copy constructor
operator=(const AliFMDDetector& other)
 Assignment operator
Init()
 Initialize.
HasAllTransforms(Char_t ring) const
 Check if we got all transformations for a given ring.  Return
 true in that case.
InitTransformations()
 Find all local<->global transformations for this detector.
SetAlignableVolumes() const
 Set alignable volumes.
 This will define the alignable volumes.
 That is currently, the modules and the half-rings.
GetRing(Char_t id) const
 Get the specified ring

   ID      Id of ring ('I' or 'O')

GetRingZ(Char_t id) const
 Get the z-coordinate specified ring

   ID      Id of ring ('I' or 'O')

FindTransform(Char_t ring, UShort_t sector) const
 Find the transformation that corresponds to sector sector in ring
 ring.
Detector2XYZ(Char_t ring, UShort_t sector, UShort_t strip, Double_t& x, Double_t& y, Double_t& z) const
 Translate detector coordinates (this,ring,sector,strip) into
 (x,y,z) coordinates (in global reference frame)
XYZ2Detector(Double_t x, Double_t y, Double_t z, Char_t& ring, UShort_t& sector, UShort_t& strip) const
 Translate (x,y,z) coordinates (in global reference frame) into
 detector coordinates (this,ring,sector,strip).
virtual ~AliFMDDetector()
 Initialize the geometry 
{}
void SetId(Int_t x)
 @param x Detector number 
{ fId = x; }
void SetInnerZ(Double_t x)
 @param x Position of outer ring along z 
{ fInnerZ = x; }
void SetOuterZ(Double_t x)
 @param x Position of outer ring along z 
{ fOuterZ = x; }
void SetInnerHoneyLowR(Double_t x)
 @param x Inner radius of inner honeycomb 
void SetInnerHoneyHighR(Double_t x)
 @param x Outer radius of inner honeycomb 
void SetOuterHoneyLowR(Double_t x)
 @param x Inner radius of outer honeycomb 
void SetOuterHoneyHighR(Double_t x)
 @param x Outer radius of outer honeycomb 
Int_t GetId() const
 @return Detector number 
{ return fId; }
Double_t GetInnerZ() const
 @return Position of outer ring along z 
{ return fInnerZ; }
Double_t GetOuterZ() const
 @return Position of outer ring along z 
{ return fOuterZ; }
Double_t GetInnerHoneyLowR() const
 @return Inner radius of inner honeycomb 
{ return fInnerHoneyLowR; }
Double_t GetInnerHoneyHighR() const
 @return Outer radius of inner honeycomb 
{ return fInnerHoneyHighR; }
Double_t GetOuterHoneyLowR() const
 @return Inner radius of outer honeycomb 
{ return fOuterHoneyLowR; }
Double_t GetOuterHoneyHighR() const
 @return Outer radius of outer honeycomb 
{ return fOuterHoneyHighR; }
AliFMDRing* GetInner() const
 @return Inner ring information 
{ return fInner; }
AliFMDRing* GetOuter() const
 @return Outer ring information 
{ return fOuter; }