Make the Scan method public
[u/mrichter/AliRoot.git] / MUON / AliMUONSurveyUtil.h
CommitLineData
ba8b0266 1#ifndef ALIMUONSURVEYUTIL_H
2#define ALIMUONSURVEYUTIL_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6/// \ingroup geometry
7/// \class AliMUONSurveyUtil
8/// \brief Utility class for survey of muon spectrometer
9//
10// Authors: Javier Castillo
11
12class AliMUONGeometryTransformer;
13class TGeoCombiTrans;
14class TClonesArray;
15
16class AliMUONSurveyUtil:public TObject
17{
18
19 public:
20 /// Destructor
21 virtual ~AliMUONSurveyUtil();
22
23 static AliMUONSurveyUtil *Instance();
24
25 static Bool_t MatrixToAngles(const Double_t *rot, Double_t *angles);
26 static void AnglesToMatrix(const Double_t *angles, Double_t *rot);
27
57c80a52 28 Double_t XpCenter(const Double_t *x, const Double_t *par) const;
29 Double_t XnCenter(const Double_t *x, const Double_t *par) const;
30 Double_t YpCenter(const Double_t *x, const Double_t *par) const;
31 Double_t YnCenter(const Double_t *x, const Double_t *par) const;
32 Double_t ZpCenter(const Double_t *x, const Double_t *par) const;
33 Double_t ZnCenter(const Double_t *x, const Double_t *par) const;
34 Double_t PhiXpp(const Double_t *x, const Double_t *par) const;
35 Double_t PhiXpn(const Double_t *x, const Double_t *par) const;
36 Double_t PhiXnp(const Double_t *x, const Double_t *par) const;
37 Double_t PhiXnn(const Double_t *x, const Double_t *par) const;
38 Double_t PhiYpp(const Double_t *x, const Double_t *par) const;
39 Double_t PhiYpn(const Double_t *x, const Double_t *par) const;
40 Double_t PhiYnp(const Double_t *x, const Double_t *par) const;
41 Double_t PhiYnn(const Double_t *x, const Double_t *par) const;
ba8b0266 42
43 static AliMUONGeometryTransformer *ReAlign(const AliMUONGeometryTransformer * transformer,
44 int rMod, int rNDetElems, int rDetElemToDetElemId[], TGeoCombiTrans deltaDetElemTransf[], Bool_t verbose);
45
46 static void SetAlignmentResolution(const TClonesArray* misAlignArray, Int_t chId, Double_t chResX, Double_t chResY, Double_t deResX, Double_t deResY);
47
48 protected:
49 /// Default constructor
50 AliMUONSurveyUtil() : TObject() {}
51
52 private:
57c80a52 53 /// Not implemented
54 AliMUONSurveyUtil(const AliMUONSurveyUtil& right);
55 /// Not implemented
56 AliMUONSurveyUtil& operator = (const AliMUONSurveyUtil& right);
57
58
625f657d 59 static int fgNDetElemCh[10]; ///< Numbers of detection elements per chamber
60 static AliMUONSurveyUtil *fgInstance; ///< Singleton instance
ba8b0266 61
62ClassDef(AliMUONSurveyUtil, 0) //Class for alignment of muon spectrometer
63};
64
65#endif