1 #ifndef ALIMUONALIGNMENTTASK_H
2 #define ALIMUONALIGNMENTTASK_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
9 /// \class AliMUONAlignmentTask
10 /// \brief Task to align the muon spectrometer
12 // Author Javier Castillo, CEA/Saclay - Irfu/SPhN
17 class AliMUONAlignment;
18 class AliMUONGeometryTransformer;
20 #include "AliAnalysisTask.h"
22 class AliMUONAlignmentTask : public AliAnalysisTask {
24 // AliMUONAlignmentTask(const char *name = "AliMUONAlignmentTask");
25 AliMUONAlignmentTask(const char *name = "AliMUONAlignmentTask", const char *geofilename = "geometry.root", const char *defaultocdb = "local://$ALICE_ROOT/OCDB", const char *misalignocdb = "local://ReAlignOCDB");
26 AliMUONAlignmentTask(const AliMUONAlignmentTask& obj);
27 AliMUONAlignmentTask& operator=(const AliMUONAlignmentTask& other);
28 virtual ~AliMUONAlignmentTask();
30 virtual void LocalInit();
31 virtual void ConnectInputData(Option_t *);
32 virtual void CreateOutputObjects();
33 virtual void Exec(Option_t *option);
34 virtual void Terminate(const Option_t*);
35 virtual void FinishTaskOutput();
37 /// Set geoemetry file name
38 void SetGeoFilename(const char* geoFilename) {fGeoFilename = geoFilename;}
39 /// Set mis align ocdb
40 void SetMisAlignOCDB(const char* misalignOCDB) {fMisAlignOCDB = misalignOCDB;}
42 void SetDefaultOCDB(const char* defaultOCDB) {fDefaultOCDB = defaultOCDB;}
43 void Prepare(const char* geoFilename, const char* defaultOCDB, const char* misalignOCDB);
46 AliESDEvent *fESD; //!< ESD object
48 AliMUONAlignment *fAlign; ///< The MUON alignment object
49 TString fGeoFilename; ///< Geometry file name
50 TString fMisAlignOCDB; ///< OCDB with misalignment file
51 TString fDefaultOCDB; ///< Default OCDB
52 AliMUONGeometryTransformer *fTransform; ///< MUON geometry transformer
54 Int_t fTrackTot; ///< Number of track read
55 Int_t fTrackOk; ///< Number of track read
56 Int_t fLastRunNumber; ///< Last run number
58 Double_t fParameters[4*156]; ///< Array of alignment parameters
59 Double_t fErrors[4*156]; ///< Array of alignment parameters errors
60 Double_t fPulls[4*156]; ///< Array of alignment parameters pulls
62 TGraphErrors *fMSDEx ; ///< Graph of translations along x
63 TGraphErrors *fMSDEy ; ///< Graph of translations along y
64 TGraphErrors *fMSDEz ; ///< Graph of translations along z
65 TGraphErrors *fMSDEp; ///< Graph of rotation about z
67 TList *fList; ///< list of graphs
69 ClassDef(AliMUONAlignmentTask, 3) // example of analysis