Added two missing includes to allow macro compilation (thanks to Laurent for remarkin...
[u/mrichter/AliRoot.git] / ITS / AliITSSurveyToAlign.h
CommitLineData
02078bdf 1#ifndef ALIITSSURVEYTOALIGN_H
2#define ALIITSSURVEYTOALIGN_H
3/* Copyright(c) 2008-2010, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/* $Id$ */
7
8//////////////////////////////////////////////////////////////////////////
9// Class to convert survey tables in alignment objects
10// for SSD and SDD
11//////////////////////////////////////////////////////////////////////////
12
13#include "AliSurveyToAlignObjs.h"
14
15class TClonesArray;
98380f3e 16class TGeoMatrix;
17class TSystem;
18class TFile;
02078bdf 19class AliSurveyObj;
20class AliAlignObjParams;
98380f3e 21class AliCDBStorage;
22class AliCDBEntry;
02078bdf 23
24
98380f3e 25class AliITSSurveyToAlign : public AliSurveyToAlignObjs
26{
27
28public:
29 AliITSSurveyToAlign(Int_t run = 0, Int_t repSDD = 845069, Int_t repVerSDD = 1, Int_t repModSSD = 887877,
23530ca9 30 Int_t repModVerSSD =3, Int_t repLaddSSD = 980521, Int_t repLaddVerSSD = 2);
98380f3e 31 AliITSSurveyToAlign(const AliITSSurveyToAlign& align); // copy constructor
32 AliITSSurveyToAlign &operator = (const AliITSSurveyToAlign& /* align */); //assignment operator
33 virtual ~AliITSSurveyToAlign();
34
35 void Run();
36 Bool_t CreateAlignObjs();
37 void CreateAlignObjDummySPD();
38 void CreateAlignObjSDD();
39 void CreateAlignObjDummySDD();
40 void CreateAlignObjSSDModules();
41 void CreateAlignObjDummySSDModules();
42 void CreateAlignObjSSDLadders();
43 Bool_t ApplyAlignObjSSDLadders();
44
45private:
46 Int_t fRun; // the run number for the OCDB
47 Int_t fSDDrepNumber;
48 Int_t fSDDrepVersion;
49 Int_t fSSDModuleRepNumber;
50 Int_t fSSDModuleRepVersion;
51 Int_t fSSDLadderRepNumber;
52 Int_t fSSDLadderRepVersion;
53
54 Double_t fSDDmeP[6][6]; //measured positions of ref. marks for current module
55 Double_t fSDDidP[6][3]; //ideal positions of ref. marks for current module
56 Bool_t fSDDisMe[6];
57
58 static const Double_t fgkLocR[6][3]; //id. pos. of ref. marks in RS of right oriented modules
59 static const Double_t fgkLocL[6][3]; //id. pos. of ref. marks in RS of lefr oriented modules
60
61 void GetIdPosSDD(Int_t uid, Int_t layer, Int_t module, Int_t iPoint);
62 void ReadPointNameSDD(const char str[], Int_t &iLayer, Int_t &iLader, Int_t &iModul, Int_t &iPoint) const;
63 void ConvertToRSofModulesAndRotSDD(Int_t Layer, Int_t Module);
64 void CalcShiftSDD(Double_t &x0,Double_t &y0,Double_t &z0) const;
65 void CalcShiftRotSDD(Double_t &tet,Double_t &psi,Double_t &phi,Double_t &x0,Double_t &y0,Double_t &z0);
66
67 ClassDef(AliITSSurveyToAlign,0);
02078bdf 68};
69#endif
98380f3e 70