ROOT logo
AliRoot » ITS » AliITSSurveyToAlign

class AliITSSurveyToAlign: public AliSurveyToAlignObjs

   Class to convert survey tables in alignment objects
   for SSD and SDD
   origin: Marco Van Leeuwen (m.vanleeuwen1@uu.nl)
           Panos.Christakoglou (Panos.Christakoglou@cern.ch)
           Martin Poghosyan (Martin.Poghosyan@to.infn.it)

Function Members (Methods)

public:
AliITSSurveyToAlign(const AliITSSurveyToAlign& align)
AliITSSurveyToAlign(Int_t run = 0, Int_t repModSDD = 845069, Int_t repModVerSDD = 1, Int_t repLadSDD = 999999, Int_t repLadVerSDD = 1, Int_t repModSSD = 887877, Int_t repModVerSSD = 3, Int_t repLaddSSD = 980521, Int_t repLaddVerSSD = 2)
virtual~AliITSSurveyToAlign()
voidTObject::AbstractMethod(const char* method) const
virtual voidTObject::AppendPad(Option_t* option = "")
Bool_tApplyAlignObjSDD()
Bool_tApplyAlignObjSSDLadders()
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
voidCreateAlignObjDummySDDLadders()
voidCreateAlignObjDummySDDModules()
voidCreateAlignObjDummySPD()
voidCreateAlignObjDummySSDModules()
virtual Bool_tCreateAlignObjs()
voidCreateAlignObjSDDLadders()
voidCreateAlignObjSDDModules()
voidCreateAlignObjSSDLadders()
voidCreateAlignObjSSDModules()
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
TClonesArray*AliSurveyToAlignObjs::GetAlignObjsArray()
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
Bool_tAliSurveyToAlignObjs::LoadSurveyFromAlienFile(const char* det, Int_t repNum, Int_t repVersion)
Bool_tAliSurveyToAlignObjs::LoadSurveyFromLocalFile(const char* filename)
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)
AliITSSurveyToAlign&operator=(const AliITSSurveyToAlign& align)
virtual voidTObject::Paint(Option_t* option = "")
virtual voidTObject::Pop()
virtual voidTObject::Print(Option_t* option = "") const
virtual Int_tTObject::Read(const char* name)
virtual voidTObject::RecursiveRemove(TObject* obj)
voidTObject::ResetBit(UInt_t f)
virtual voidRun()
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)
virtual voidTObject::SetUniqueID(UInt_t uid)
virtual voidShowMembers(TMemberInspector&)
Bool_tAliSurveyToAlignObjs::StoreAlignObjToCDB(const char* cdbFolder, const char* det)
Bool_tAliSurveyToAlignObjs::StoreAlignObjToFile(const char* filename, const char* det)
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 voidTObject::DoError(int level, const char* location, const char* fmt, va_list va) const
voidTObject::MakeZombie()
private:
voidCalcShiftRotSDD(Double_t& tet, Double_t& psi, Double_t& phi, Double_t& x0, Double_t& y0, Double_t& z0)
voidCalcShiftSDD(Double_t& x0, Double_t& y0, Double_t& z0) const
voidConvertToRSofModulesAndRotSDD(Int_t Layer, Int_t Module)
voidGetIdPosSDD(Int_t uid, Int_t layer, Int_t module, Int_t iPoint)
voidReadPointNameSDD(const char* str, Int_t& iLayer, Int_t& iLader, Int_t& iModul, Int_t& iPoint) const

Data Members

protected:
AliAlignObjParams*AliSurveyToAlignObjs::fAlignObjalignment object
TClonesArray*AliSurveyToAlignObjs::fAlignObjArrayTClonesArray of alignment objects
AliSurveyObj*AliSurveyToAlignObjs::fSurveyObjsurvey object
TObjArray*AliSurveyToAlignObjs::fSurveyPointsarray of survey points
private:
Int_tfRunthe run number for the OCDB
Int_tfSDDLadderRepNumberSDD Ladder survey report number (EDMS)
Int_tfSDDLadderRepVersionSDD Ladder survey report version (det DB)
Int_tfSDDModuleRepNumberSDD Module survey report number (EDMS)
Int_tfSDDModuleRepVersionSDD Module survey report version (det DB)
Double_tfSDDidP[6][3]ideal positions of ref. marks for current module
Bool_tfSDDisMe[6]flag indicating if the positions of ref. mark is measured.
Double_tfSDDmeP[6][6]measured positions of ref. marks for current module
Int_tfSSDLadderRepNumberSSD Ladder survey report number (EDMS)
Int_tfSSDLadderRepVersionSSD Ladder survey report version (det DB)
Int_tfSSDModuleRepNumberSSD Module survey report number (EDMS)
Int_tfSSDModuleRepVersionSSD Module survey report version (det DB)
static const Double_tfgkLocL[6][3]id. pos. of ref. marks in RS of lefr oriented modules
static const Double_tfgkLocR[6][3]id. pos. of ref. marks in RS of right oriented modules
Double_tfphiSDDl[36]phi of SDD ladder
Double_tfphiSDDm[260]phi of SDD module
Double_tfpsiSDDl[36]psi of SDD ladder
Double_tfpsiSDDm[260]psi of SDD module
TStringfsymnameSDDl[36]symname of SDD ladder
TStringfsymnameSDDm[260]symname of SDD module
Double_tftetSDDl[36]phi of SDD ladder
Double_tftetSDDm[260]tet of SDD module
Int_tfuidSDDl[36]uid of SDD ladder
Int_tfuidSDDm[260]uid of SDD module
Double_tfxSDDl[36]x-shift of SDD ladder
Double_tfxSDDm[260]x-shift of SDD module
Double_tfySDDl[36]y-shift of SDD ladder
Double_tfySDDm[260]y-shift of SDD module
Double_tfzSDDl[36]z-shift of SDD ladder
Double_tfzSDDm[260]z-shift of SDD module

Class Charts

Inheritance Chart:
TObject
AliSurveyToAlignObjs
AliITSSurveyToAlign

Function documentation

AliITSSurveyToAlign(Int_t run = 0, Int_t repModSDD = 845069, Int_t repModVerSDD = 1, Int_t repLadSDD = 999999, Int_t repLadVerSDD = 1, Int_t repModSSD = 887877, Int_t repModVerSSD = 3, Int_t repLaddSSD = 980521, Int_t repLaddVerSSD = 2)
 Standard constructor
AliITSSurveyToAlign(const AliITSSurveyToAlign& align)
  copy constructor

~AliITSSurveyToAlign()
 destructor

void Run()
 Runs the full chain
 User should call StoreAlignObjToFile or StoreAlignObjToCDB afterwards to
 store output (not included here to leave the choice between the two)

Bool_t CreateAlignObjs()
 Fill the array of alignment objects with alignment objects
 from survey for all three subdetectors

void CreateAlignObjDummySPD()
 Create alignObjs for SPD
    For the moment, uses 0,0,0,0,0,0

Bool_t ApplyAlignObjSDD()
 Apply alignment for SDD
void CreateAlignObjSDDModules()
 Create alignment objects for SDD
 Called by Run()

void CreateAlignObjDummySDDModules()
 Create empty alignment objects
 Used when fSurveySDD == 0

void CreateAlignObjSSDModules()
 Create alignment objects for SSD modules
 Objects for SSD ladders must be applied to geometry first

Bool_t ApplyAlignObjSSDLadders()
   Apply alignment objects for SSD ladders to geometry, needed to correctly
   build alignment objects for SSD modules

void CreateAlignObjDummySDDLadders()
 Create empty alignment objects
void CreateAlignObjSDDLadders()
   Alignment objects from survey for SDD ladders

void CreateAlignObjSSDLadders()
   Alignment objects from survey for SSD ladders (Torino data)

void CreateAlignObjDummySSDModules()
 Create empty alignment objects
 Used when fSurveySSD == 0

void GetIdPosSDD(Int_t uid, Int_t layer, Int_t module, Int_t iPoint)
    Utility function used by CreateAlignObjSDD

void ReadPointNameSDD(const char* str, Int_t& iLayer, Int_t& iLader, Int_t& iModul, Int_t& iPoint) const
    Utility function used by CreateAlignObjSDD

void ConvertToRSofModulesAndRotSDD(Int_t Layer, Int_t Module)
    Utility function used by CreateAlignObjSDD

void CalcShiftSDD(Double_t& x0, Double_t& y0, Double_t& z0) const
 Calculates the 3 shifts for the present SDD module
 and sets the three reference arguments

void CalcShiftRotSDD(Double_t& tet, Double_t& psi, Double_t& phi, Double_t& x0, Double_t& y0, Double_t& z0)
 Calculates the 3 shifts and 3 euler angles for the present SDD module
 and sets the six reference arguments