ROOT logo
AliRoot » ITS » AliITSsegmentationSPD

class AliITSsegmentationSPD: public AliITSsegmentation

Segmentation class for
pixels


Function Members (Methods)

public:
AliITSsegmentationSPD(Option_t* opt = "")
AliITSsegmentationSPD(const AliITSsegmentationSPD& source)
virtual~AliITSsegmentationSPD()
voidTObject::AbstractMethod(const char* method) const
virtual voidAliITSsegmentation::Angles(Float_t&, Float_t&) const
virtual voidTObject::AppendPad(Option_t* option = "")
virtual voidTObject::Browse(TBrowser* b)
virtual voidCellBoundries(Int_t ix, Int_t iz, Double_t& xl, Double_t& xu, Double_t& zl, Double_t& zu) const
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 TF1*AliITSsegmentation::CorrFunc()
virtual voidTObject::Delete(Option_t* option = "")MENU
virtual voidDetToLocal(Int_t ix, Int_t iz, Float_t& x, Float_t& z) const
virtual Int_tTObject::DistancetoPrimitive(Int_t px, Int_t py)
virtual Float_tDpx(Int_t ix) const
virtual Float_tDpz(Int_t iz) const
virtual voidTObject::Draw(Option_t* option = "")
virtual voidTObject::DrawClass() constMENU
virtual TObject*TObject::DrawClone(Option_t* option = "") constMENU
virtual voidTObject::Dump() constMENU
virtual Float_tAliITSsegmentation::Dx() const
virtual Float_tAliITSsegmentation::Dy() const
virtual Float_tAliITSsegmentation::Dz() const
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
virtual Int_tGetChipFromChannel(Int_t, Int_t iz) const
virtual Int_tGetChipFromLocal(Float_t, Float_t zloc) const
virtual Int_tGetChipsInLocalWindow(Int_t* array, Float_t zmin, Float_t zmax, Float_t, Float_t) const
virtual Option_t*TObject::GetDrawOption() const
static Long_tTObject::GetDtorOnly()
virtual const char*TObject::GetIconName() const
virtual Int_tAliITSsegmentation::GetLayer() const
virtual Int_tGetMaximumChipIndex() const
virtual const char*TObject::GetName() const
virtual Int_tGetNPads() const
virtual Int_tGetNumberOfChips() const
virtual char*TObject::GetObjectInfo(Int_t px, Int_t py) const
static Bool_tTObject::GetObjectStat()
virtual Option_t*TObject::GetOption() const
virtual voidGetPadCxz(Int_t ix, Int_t iz, Float_t& x, Float_t& z) const
virtual voidGetPadIxz(Float_t x, Float_t z, Int_t& ix, Int_t& iz) const
virtual voidGetPadTxz(Float_t& x, Float_t& z) 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 voidInit()
virtual voidInit300()
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 Bool_tLocalToDet(Float_t x, Float_t z, Int_t& ix, Int_t& iz) const
virtual voidTObject::ls(Option_t* option = "") const
voidTObject::MayNotUse(const char* method) const
virtual voidNeighbours(Int_t iX, Int_t iZ, Int_t* Nlist, Int_t* Xlist, Int_t* Zlist) const
virtual Bool_tTObject::Notify()
virtual Int_tNpx() const
virtual Int_tNpz() const
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)
AliITSsegmentationSPD&operator=(const AliITSsegmentationSPD& source)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual voidPrintDefaultParameters() 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 voidSetBinSize(Float_t* x, Float_t* z)
voidTObject::SetBit(UInt_t f)
voidTObject::SetBit(UInt_t f, Bool_t set)
virtual voidAliITSsegmentation::SetCorrFunc(TF1* fc)
virtual voidAliITSsegmentation::SetDetSize(Float_t p1, Float_t p2, Float_t p3)
virtual voidTObject::SetDrawOption(Option_t* option = "")MENU
static voidTObject::SetDtorOnly(void* obj)
virtual voidAliITSsegmentation::SetLayer(Int_t)
virtual voidSetNPads(Int_t p1, Int_t p2)
static voidTObject::SetObjectStat(Bool_t stat)
virtual voidAliITSsegmentation::SetPadSize(Float_t, Float_t)
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 voidCopy(TObject& obj) const
virtual voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()

Data Members

protected:
Float_tfCellSizeX[256]Size for each pixel in x -microns
Float_tfCellSizeZ[280]Size for each pixel in z -microns
TF1*AliITSsegmentation::fCorrcorrection function
Float_tAliITSsegmentation::fDxSPD: Full width of the detector (x axis)- microns
Float_tAliITSsegmentation::fDySPD: Full thickness of the detector (y axis) -um
Float_tAliITSsegmentation::fDzSPD: Full length of the detector (z axis)- microns
Int_tfNpxNumber of pixels in x
Int_tfNpzNumber of pixels in z
static const Int_tfgkNchipsPerModulenumber of chips per ladder (5)
static const Int_tfgkNcolumnsPerChipnumber of columns per chip (32)

Class Charts

Inheritance Chart:
TObject
AliITSsegmentation
AliITSsegmentationSPD

Function documentation

AliITSsegmentationSPD(Option_t* opt = "")
 Default constructor
Float_t ColFromZ300(Float_t z) const
 Get column number for each z-coordinate taking into account the
 extra pixels in z direction assuming 300 micron sized pixels.
Float_t ZFromCol300(Int_t col) const
 same comments as above
 Get z-coordinate for each colunm number
Float_t Zpitch300() const
 returns Z pixel pitch for 300 micron pixels.
Float_t ColFromZ(Float_t z) const
 hard-wired - keep it like this till we can parametrise
 and get rid of AliITSgeomSPD425
 Get column number for each z-coordinate taking into account the
 extra pixels in z direction
Float_t ZFromCol(Int_t col) const
 same comments as above
 Get z-coordinate for each colunm number
Float_t ZpitchFromCol(Int_t col) const
 Get pitch size in z direction for each colunm
void Copy(TObject& obj) const
 protected method. copy this to obj
AliITSsegmentationSPD& operator=(const AliITSsegmentationSPD& source)
 = operator
AliITSsegmentationSPD(const AliITSsegmentationSPD& source)
void SetBinSize(Float_t* x, Float_t* z)
 Fills the array of pixel sizes in x, microns
 The input array x must have 256 elements.
void Init300()
 Initialize infromation for 6 read out chip 300X50 micron pixel SPD
 detectors. This chip is 150 microns thick by 1.28 cm in x by 8.37 cm
 long. It has 256  50 micron pixels in x and 279 300 micron size
 pixels in z.
void Init()
 Initialize information for 5 read out chip 425X50 micron pixel SPD
 detectors (ladder).
 Each readout chip is 150 micron thick.
 The ladder sensor is 200 micron thick by 1.28 cm in x by 6.96 cm in z.
 It has 256 50 micron pixels in x and 160 mostly 425 micron pixels in z.
 The two pixels at boundary between two adjacent readout chips are
 625 micron long.
void SetNPads(Int_t p1, Int_t p2)
 for SPD this function should be used ONLY when a beam test setup
 configuration is studied
Float_t Dpx(Int_t ix) const
returs x pixel pitch for a give pixel
Float_t Dpz(Int_t iz) const
 returns z pixel pitch for a give pixel
void GetPadIxz(Float_t x, Float_t z, Int_t& ix, Int_t& iz) const
  Returns pixel coordinates (ix,iz) for given real local coordinates (x,z)

void GetPadTxz(Float_t& x, Float_t& z) const
  local transformation of real local coordinates (x,z)

void GetPadCxz(Int_t ix, Int_t iz, Float_t& x, Float_t& z) const
 Transform from pixel to real local coordinates
Bool_t LocalToDet(Float_t x, Float_t z, Int_t& ix, Int_t& iz) const
 Transformation from Geant detector centered local coordinates (cm) to
 Pixel cell numbers ix and iz.
 Input:
    Float_t   x        detector local coordinate x in cm with respect to
                       the center of the sensitive volume.
    Float_t   z        detector local coordinate z in cm with respect to
                       the center of the sensitive volulme.
 Output:
    Int_t    ix        detector x cell coordinate. Has the range
                       0<=ix<fNpx.
    Int_t    iz        detector z cell coordinate. Has the range
                       0<=iz<fNpz.
 Return:
   kTRUE if point x,z is inside sensitive volume, kFALSE otherwise.
   A value of -1 for ix or iz indecates that this point is outside of the
   detector segmentation as defined.
void DetToLocal(Int_t ix, Int_t iz, Float_t& x, Float_t& z) const
 Transformation from Detector cell coordiantes to Geant detector centerd
 local coordinates (cm).
 Input:
 Int_t    ix        detector x cell coordinate. Has the range 0<=ix<fNpx.
 Int_t    iz        detector z cell coordinate. Has the range 0<=iz<fNpz.
 Output:
 Float_t   x        detector local coordinate x in cm with respect to the
                    center of the sensitive volume.
 Float_t   z        detector local coordinate z in cm with respect to the
                    center of the sensitive volulme.
 If ix and or iz is outside of the segmentation range a value of -0.5*Dx()
 or -0.5*Dz() is returned.
void CellBoundries(Int_t ix, Int_t iz, Double_t& xl, Double_t& xu, Double_t& zl, Double_t& zu) const
 Transformation from Detector cell coordiantes to Geant detector centerd
 local coordinates (cm).
 Input:
 Int_t    ix        detector x cell coordinate. Has the range 0<=ix<fNpx.
 Int_t    iz        detector z cell coordinate. Has the range 0<=iz<fNpz.
 Output:
 Double_t   xl       detector local coordinate cell lower bounds x in cm
                    with respect to the center of the sensitive volume.
 Double_t   xu       detector local coordinate cell upper bounds x in cm
                    with respect to the center of the sensitive volume.
 Double_t   zl       detector local coordinate lower bounds z in cm with
                    respect to the center of the sensitive volulme.
 Double_t   zu       detector local coordinate upper bounds z in cm with
                    respect to the center of the sensitive volulme.
 If ix and or iz is outside of the segmentation range a value of -0.5*Dx()
 and -0.5*Dx() or -0.5*Dz() and -0.5*Dz() are returned.
Int_t GetChipFromChannel(Int_t , Int_t iz) const
 returns chip number (in range 0-4) starting from channel number
Int_t GetChipFromLocal(Float_t , Float_t zloc) const
 returns chip number (in range 0-4) starting from local coordinates
Int_t GetChipsInLocalWindow(Int_t* array, Float_t zmin, Float_t zmax, Float_t , Float_t ) const
 returns the number of chips containing a road defined by given local coordinate limits
virtual ~AliITSsegmentationSPD()
{}
Int_t GetNPads() const
 Returns the maximum number of cells (digits) posible
{return fNpx*fNpz;}
Int_t GetNumberOfChips() const
Int_t GetMaximumChipIndex() const
{return fgkNchipsPerModule-1;}
Int_t Npx() const
 Maximum number of Pixels in x
{return fNpx;}
Int_t Npz() const
 Maximum number of Pixels in z
{return fNpz;}
void PrintDefaultParameters() const
 Print default parameters (static const data members, if any)
{AliWarning("No def. parameters defined as const static data members");}