ROOT logo
AliRoot » ITS » AliITSInitGeometry

class AliITSInitGeometry: public TObject

Function Members (Methods)

public:
AliITSInitGeometry()
AliITSInitGeometry(AliITSVersion_t version)
AliITSInitGeometry(const AliITSInitGeometry&)
~AliITSInitGeometry()
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 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
AliITSgeom*CreateAliITSgeom()
AliITSgeom*CreateAliITSgeom(Int_t major)
voidDecodeDetector(Int_t& mod, Int_t lay, Int_t cpn0, Int_t cpn1, Int_t cpn2) const
voidDecodeDetectorLayers(Int_t mod, Int_t& lay, Int_t& lad, Int_t& det)
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
Int_tGetDebug() const
Bool_tGetDecoding() const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
TStringGetGeometryName() const
virtual const char*TObject::GetIconName() const
Int_tGetMajorVersion() 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
Bool_tGetSegGeom() const
Bool_tGetTiming() 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
Bool_tInitAliITSgeom(AliITSgeom* geom)
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)
AliITSInitGeometry&operator=(const AliITSInitGeometry&)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
voidRecodeDetector(Int_t mod, Int_t& cpn0, Int_t& cpn1, Int_t& cpn2)
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)
voidSetDebug(Int_t debug = 0)
voidSetDecoding(Bool_t newdec = kFALSE)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
voidSetGeometryName(const Char_t* name)
static voidTObject::SetObjectStat(Bool_t stat)
voidSetSegGeom(Bool_t seg = kTRUE)
voidSetTiming(Bool_t time = kTRUE)
virtual voidTObject::SetUniqueID(UInt_t uid)
voidSetVersion(AliITSVersion_t maj)
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
Bool_tWriteVersionString(Char_t* str, Int_t length, AliITSVersion_t maj) const
protected:
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
voidDecodeDetectorLayersv11(Int_t mod, Int_t& lay, Int_t& lad, Int_t& det)
voidDecodeDetectorv11(Int_t& mod, Int_t lay, Int_t cpn0, Int_t cpn1, Int_t cpn2) const
Bool_tGetShape(const TString& volumePath, TString& shapeType, TArrayD& par)
Bool_tGetTransformation(const TString& volumePath, TGeoHMatrix& mat)
Bool_tInitAliITSgeomV11(AliITSgeom* geom)
Bool_tReadVersionString(const Char_t* str, AliITSVersion_t& maj) const
voidRecodeDetectorv11(Int_t mod, Int_t& cpn0, Int_t& cpn1, Int_t& cpn2)
voidTransposeTGeoHMatrix(TGeoHMatrix* m) const

Data Members

private:
Int_tfDebugDebug flag
Bool_tfDecodeFlag for new/old decoding
AliITSVersion_tfMajorVersionGeometry swich value
TStringfNameGeometry name
Bool_tfSegGeomFlag to switch between the old use of
Bool_tfTimingFlag to start inilization timing

Class Charts

Inheritance Chart:
TObject
AliITSInitGeometry

Function documentation

AliITSInitGeometry()
 AliITSgeomS?D class, or AliITSsegmentation
 class in fShape of AliITSgeom class.
 Default Creator
 Inputs:
   none.
 Outputs:
   none.
 Return:
   A default inilized AliITSInitGeometry object
AliITSInitGeometry(AliITSVersion_t version)
 AliITSgeomS?D class, or AliITSsegmentation
 class in fShape of AliITSgeom class.
 Default Creator
 Inputs:
   none.
 Outputs:
   none.
 Return:
   A default inilized AliITSInitGeometry object
AliITSgeom* CreateAliITSgeom()
 Creates and Initilizes the geometry transformation class AliITSgeom
 to values appropreate to this specific geometry. Now that
 the segmentation is part of AliITSgeom, the detector
 segmentations are also defined here.
 Inputs:
   none.
 Outputs:
   none.
 Return:
   A pointer to a new properly inilized AliITSgeom class. If
   pointer = 0 then failed to init.
AliITSgeom* CreateAliITSgeom(Int_t major)
 Creates and Initilizes the geometry transformation class AliITSgeom
 to values appropreate to this specific geometry. Now that
 the segmentation is part of AliITSgeom, the detector
 segmentations are also defined here.
 Inputs:
   Int_t major   major version, see AliITSVersion_t

 Outputs:
   none.
 Return:
   A pointer to a new properly inilized AliITSgeom class. If
   pointer = 0 then failed to init.
Bool_t InitAliITSgeom(AliITSgeom* geom)
 Initilizes the geometry transformation class AliITSgeom
 to values appropreate to this specific geometry. Now that
 the segmentation is part of AliITSgeom, the detector
 segmentations are also defined here.
 Inputs:
   AliITSgeom *geom  A pointer to the AliITSgeom class
 Outputs:
   AliITSgeom *geom  This pointer recreated and properly inilized.
 Return:
   none.
void TransposeTGeoHMatrix(TGeoHMatrix* m) const
 Transpose the rotation matrix part of a TGeoHMatrix. This
 is needed because TGeo stores the transpose of the rotation
 matrix as compared to what AliITSgeomMatrix uses (and Geant3).
 Inputs:
    TGeoHMatrix *m  The matrix to be transposed
 Outputs:
    TGEoHMatrix *m  The transposed matrix
 Return:
    none.
Bool_t InitAliITSgeomV11(AliITSgeom* geom)
 Initilizes the geometry transformation class AliITSgeom
 Now that the segmentation is part of AliITSgeom, the detector
 segmentations are also defined here.

 Inputs:
   AliITSgeom *geom  A pointer to the AliITSgeom class
 Outputs:
   AliITSgeom *geom  This pointer recreated and properly inilized.
 LG
Bool_t GetTransformation(const TString& volumePath, TGeoHMatrix& mat)
 Returns the Transformation matrix between the volume specified
 by the path volumePath and the Top or mater volume. The format
 of the path volumePath is as follows (assuming ALIC is the Top volume)
 "/ALIC_1/DDIP_1/S05I_2/S05H_1/S05G_3". Here ALIC is the top most
 or master volume which has only 1 instance of. Of all of the daughter
 volumes of ALICE, DDIP volume copy #1 is indicated. Similarly for
 the daughter volume of DDIP is S05I copy #2 and so on.
 Inputs:
   TString& volumePath  The volume path to the specific volume
                        for which you want the matrix. Volume name
                        hierarchy is separated by "/" while the
                        copy number is appended using a "_".
 Outputs:
  TGeoHMatrix &mat      A matrix with its values set to those
                        appropriate to the Local to Master transformation
 Return:
   A logical value if kFALSE then an error occurred and no change to
   mat was made.
 We have to preserve the modeler state
 Preserve the modeler state.
Bool_t GetShape(const TString& volumePath, TString& shapeType, TArrayD& par)
 Returns the shape and its parameters for the volume specified
 by volumeName.
 Inputs:
   TString& volumeName  The volume name
 Outputs:
   TString &shapeType   Shape type
   TArrayD &par         A TArrayD of parameters with all of the
                        parameters of the specified shape.
 Return:
   A logical indicating whether there was an error in getting this
   information
void DecodeDetector(Int_t& mod, Int_t lay, Int_t cpn0, Int_t cpn1, Int_t cpn2) const
 decode geometry into detector module number. There are two decoding
 Scheams. Old which does not follow the ALICE coordinate system
 requirements, and New which dose.
 Inputs:
    Int_t layer    The ITS layer
    Int_t cpn0     The lowest copy number
    Int_t cpn1     The middle copy number
    Int_t cpn2     the highest copy number
 Output:
    Int_t &mod     The module number assoicated with this set
                   of copy numbers.
 Return:
    none.
 This is a FIXED switch yard function. I (Bjorn Nilsen) Don't
 like them but I see not better way for the moment.
void RecodeDetector(Int_t mod, Int_t& cpn0, Int_t& cpn1, Int_t& cpn2)
 decode geometry into detector module number. There are two decoding
 Scheams. Old which does not follow the ALICE coordinate system
 requirements, and New which dose.
 Inputs:
    Int_t mod      The module number assoicated with this set
                   of copy numbers.
 Output:
    Int_t cpn0     The lowest copy number
    Int_t cpn1     The middle copy number
    Int_t cpn2     the highest copy number
 Return:
    none.
 This is a FIXED switch yard function. I (Bjorn Nilsen) Don't
 like them but I see not better way for the moment.
void DecodeDetectorLayers(Int_t mod, Int_t& lay, Int_t& lad, Int_t& det)
 decode geometry into detector module number. There are two decoding
 Scheams. Old which does not follow the ALICE coordinate system
 requirements, and New which dose. Note, this use of layer ladder
 and detector numbers are strictly for internal use of this
 specific code. They do not represent the "standard" layer ladder
 or detector numbering except in a very old and obsoleate sence.
 Inputs:
    Int_t mod      The module number assoicated with this set
                   of copy numbers.
 Output:
    Int_t lay     The layer number
    Int_t lad     The ladder number
    Int_t det     the dettector number
 Return:
    none.
 This is a FIXED switch yard function. I (Bjorn Nilsen) Don't
 like them but I see not better way for the moment.
void DecodeDetectorv11(Int_t& mod, Int_t lay, Int_t cpn0, Int_t cpn1, Int_t cpn2) const
 decode geometry into detector module number
 Inputs:
    Int_t layer    The ITS layer
    Int_t cpn0     The lowest copy number
    Int_t cpn1     The middle copy number
    Int_t cpn2     the highest copy number
 Output:
    Int_t &mod     The module number assoicated with this set
                   of copy numbers.
 Return:
    none.
{2,4}
void RecodeDetectorv11(Int_t mod, Int_t& cpn0, Int_t& cpn1, Int_t& cpn2)
 decode geometry into detector module number using the new decoding
 Scheme.
 Inputs:
    Int_t mod      The module number assoicated with this set
                   of copy numbers.
 Output:
    Int_t cpn0     The lowest copy number  (SPD sector or SDD/SSD ladder)
    Int_t cpn1     The middle copy number  (SPD stave or SDD/SSD module)
    Int_t cpn2     the highest copy number (SPD ladder or 1 for SDD/SSD)
 Return:
    none.
{2,4}
void DecodeDetectorLayersv11(Int_t mod, Int_t& lay, Int_t& lad, Int_t& det)
 decode module number into detector indices for v11
 mod starts from 0
 lay, lad, det start from 1
 Inputs:
    Int_t mod      The module number associated with this set
                   of copy numbers.
 Output:
    Int_t lay     The layer number
    Int_t lad     The ladder number
    Int_t det     the dettector number
{4,4,6,8,22,25}
Bool_t WriteVersionString(Char_t* str, Int_t length, AliITSVersion_t maj) const
 fills the string str with the major version number
 Inputs:
   Char_t *str          The character string to hold the major version number
   Int_t  length        The maximum number of characters which
                        can be accommodated by this string.
                        str[length-1] must exist
   AliITSVersion_t maj  The major number
Bool_t ReadVersionString(const Char_t* str, AliITSVersion_t& maj) const
 fills the string str with the major and minor version number
 Inputs:
   Char_t *str   The character string to holding the major version number
   Int_t  length The maximum number of characters which can be
                 accommodated by this string. str[length-1] must exist
 Outputs:
   AliITSVersion_t maj  The major number
AliITSInitGeometry()
void SetVersion(AliITSVersion_t maj)
 Getters and Setters
 Getters and Setters
TString GetGeometryName() const
{return fName;}
void SetGeometryName(const Char_t* name)
{fName = name;}
Int_t GetMajorVersion() const
{return (Int_t)fMajorVersion;}
Bool_t GetTiming() const
{return fTiming;}
void SetTiming(Bool_t time = kTRUE)
{fTiming=time;}
Bool_t GetSegGeom() const
{return fSegGeom;}
void SetSegGeom(Bool_t seg = kTRUE)
{fSegGeom = seg;}
Bool_t GetDecoding() const
{return fDecode;}
void SetDecoding(Bool_t newdec = kFALSE)
 Set debug level. debug=0 no debug info outputted.
{fDecode = newdec;}
void SetDebug(Int_t debug = 0)
 Retrun debug value
{fDebug=debug;}
Int_t GetDebug() const
 Decode module number into old layer, ladder, and detector numbers
{return fDebug;}