]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - ITS/AliITSAlignMilleModule.h
Correct treatment of tracks with pT<pTmin
[u/mrichter/AliRoot.git] / ITS / AliITSAlignMilleModule.h
index 2d22bc7bf0d2b57218d8ba888d9268787640e7f6..b5594f60ce2566666620ed7b863bee13d681ef37 100644 (file)
@@ -1,78 +1,82 @@
-#ifndef ALIITSALIGNMILLEMODULE_H\r
-#define ALIITSALIGNMILLEMODULE_H \r
-/* Copyright(c) 2007-2009 , ALICE Experiment at CERN, All rights reserved. * \r
- * See cxx source for full Copyright notice                               */  \r
\r
-/// \ingroup rec \r
-/// \class AliITSAlignMilleModule \r
-/// \brief Class for alignment of ITS \r
-// \r
-// Authors: Marcello Lunardon \r
-\r
-/* $Id$  */ \r
-//#include <TString.h> \r
-//#include <TObject.h> \r
-#include <TNamed.h> \r
-\r
-#define ITSMILLE_NSENSVOL    2198\r
-\r
-class AliAlignObjParams; \r
-class TGeoHMatrix; \r
-\r
-class AliITSAlignMilleModule : public TNamed \r
-{ \r
-public: \r
-  AliITSAlignMilleModule(); \r
-  AliITSAlignMilleModule(UShort_t volid); // basic single volume constructor\r
-  AliITSAlignMilleModule(Int_t index, UShort_t volid, char* symname, TGeoHMatrix *m, Int_t nsv=0, UShort_t *volidsv=NULL); // general constructor\r
-\r
-  AliITSAlignMilleModule(const AliITSAlignMilleModule& rhs); // copy constructor\r
-  AliITSAlignMilleModule& operator=(const AliITSAlignMilleModule& rhs);  \r
-    \r
-  virtual ~AliITSAlignMilleModule(); \r
-   \r
-  // geometry methods  \r
-  Int_t     GetIndex() const {return fIndex;} \r
-  UShort_t  GetVolumeID() const {return fVolumeID;}  \r
-  Int_t     GetNSensitiveVolumes() const {return fNSensVol;} \r
-  TGeoHMatrix *GetMatrix() const {return fMatrix;} \r
-  UShort_t *GetSensitiveVolumeVolumeID() {return fSensVolVolumeID;}\r
-\r
-  Int_t     Set(Int_t index, UShort_t volid, char* symname, TGeoHMatrix *m, Int_t nsv=0, UShort_t *volidsv=NULL); // initialize a super module\r
-  \r
-  // util\r
-  static Int_t GetIndexFromVolumeID(UShort_t volid);\r
-  static UShort_t GetVolumeIDFromSymname(const Char_t *symname);\r
-  static UShort_t GetVolumeIDFromIndex(Int_t index);\r
-\r
-  // methods\r
-  Bool_t    IsIn(UShort_t volid) const;\r
-  TGeoHMatrix *GetSensitiveVolumeMatrix(UShort_t voluid);\r
-  TGeoHMatrix *GetSensitiveVolumeOrigGlobalMatrix(UShort_t voluid);\r
-  TGeoHMatrix *GetSensitiveVolumeModifiedMatrix(UShort_t voluid, Double_t *deltalocal); \r
-  AliAlignObjParams *GetSensitiveVolumeMisalignment(UShort_t voluid, AliAlignObjParams *a); \r
-  AliAlignObjParams *GetSensitiveVolumeMisalignment(UShort_t voluid, Double_t *deltalocal); \r
-  void      Print(Option_t*) const; \r
-\r
-protected:\r
-  Int_t     SensVolMatrix(UShort_t volid, TGeoHMatrix *m); \r
-  Int_t     SensVolOrigGlobalMatrix(UShort_t volid, TGeoHMatrix *m); \r
-  void      AddSensitiveVolume(UShort_t volid);\r
-\r
-private:\r
-  Int_t          fNSensVol; ///\r
-  Int_t          fIndex; ///\r
-  UShort_t       fVolumeID; ///\r
-  // il symname e' il nome del TNamed...\r
-  Int_t          fSensVolIndex[ITSMILLE_NSENSVOL]; ///\r
-  UShort_t       fSensVolVolumeID[ITSMILLE_NSENSVOL]; ///\r
-  TGeoHMatrix   *fMatrix; /// ideal TGeoHMatrix of the supermodule\r
-  TGeoHMatrix   *fSensVolMatrix; ///\r
-  TGeoHMatrix   *fSensVolModifMatrix; ///\r
-  AliAlignObjParams *fTempAlignObj; ///\r
-       \r
-  ClassDef(AliITSAlignMilleModule, 0)\r
-\r
-}; \r
-\r
-#endif \r
+#ifndef ALIITSALIGNMILLEMODULE_H
+#define ALIITSALIGNMILLEMODULE_H 
+/* Copyright(c) 2007-2009 , ALICE Experiment at CERN, All rights reserved. * 
+ * See cxx source for full Copyright notice                               */  
+/// \ingroup rec 
+/// \class AliITSAlignMilleModule 
+/// \brief Class for alignment of ITS 
+// 
+// Authors: Marcello Lunardon 
+
+/* $Id$  */ 
+//#include <TString.h> 
+//#include <TObject.h> 
+#include <TNamed.h> 
+
+
+class AliAlignObjParams; 
+class TGeoHMatrix; 
+
+class AliITSAlignMilleModule : public TNamed 
+{ 
+public: 
+  AliITSAlignMilleModule(); 
+  AliITSAlignMilleModule(UShort_t volid); // basic single volume constructor
+  AliITSAlignMilleModule(Int_t index, UShort_t volid, char* symname, const TGeoHMatrix *m, Int_t nsv=0, const UShort_t *volidsv=NULL); // general constructor
+
+  AliITSAlignMilleModule(const AliITSAlignMilleModule& rhs); // copy constructor
+  AliITSAlignMilleModule& operator=(const AliITSAlignMilleModule& rhs);  
+    
+  virtual ~AliITSAlignMilleModule(); 
+   
+  // geometry methods  
+  Int_t     GetIndex() const {return fIndex;} 
+  UShort_t  GetVolumeID() const {return fVolumeID;}  
+  Int_t     GetNSensitiveVolumes() const {return fNSensVol;} 
+  TGeoHMatrix *GetMatrix() const {return fMatrix;} 
+  const UShort_t *GetSensitiveVolumeVolumeID() const {return fSensVolVolumeID;}
+
+  Int_t     Set(Int_t index, UShort_t volid, char* symname, const TGeoHMatrix * const m, Int_t nsv=0, const UShort_t *volidsv=NULL); // initialize a super module
+  
+  // util
+  static Int_t GetIndexFromVolumeID(UShort_t volid);
+  static UShort_t GetVolumeIDFromSymname(const Char_t *symname);
+  static UShort_t GetVolumeIDFromIndex(Int_t index);
+
+  // methods
+  Bool_t    IsIn(UShort_t volid) const;
+  TGeoHMatrix *GetSensitiveVolumeMatrix(UShort_t voluid);
+  TGeoHMatrix *GetSensitiveVolumeOrigGlobalMatrix(UShort_t voluid);
+  TGeoHMatrix *GetSensitiveVolumeModifiedMatrix(UShort_t voluid, const Double_t * const deltalocal); 
+  AliAlignObjParams *GetSensitiveVolumeMisalignment(UShort_t voluid, const AliAlignObjParams *a); 
+  AliAlignObjParams *GetSensitiveVolumeMisalignment(UShort_t voluid, const Double_t * const deltalocal); 
+  // forse non serve...
+  AliAlignObjParams *GetSensitiveVolumeGlobalMisalignment(UShort_t voluid, const Double_t * const deltalocal); 
+  // mo' proviamo questo
+  AliAlignObjParams *GetSensitiveVolumeTotalMisalignment(UShort_t voluid, const Double_t * const deltalocal); 
+  void      Print(Option_t*) const; 
+
+protected:
+  Int_t     SensVolMatrix(UShort_t volid, TGeoHMatrix *m); 
+  Int_t     SensVolOrigGlobalMatrix(UShort_t volid, TGeoHMatrix *m); 
+  void      AddSensitiveVolume(UShort_t volid);
+
+private:
+  static const Int_t fgkSensModules = 2198; // number of sensors
+  Int_t          fNSensVol; ///
+  Int_t          fIndex; ///
+  UShort_t       fVolumeID; ///
+  // il symname e' il nome del TNamed...
+  Int_t          fSensVolIndex[fgkSensModules]; ///
+  UShort_t       fSensVolVolumeID[fgkSensModules]; ///
+  TGeoHMatrix   *fMatrix; /// ideal TGeoHMatrix of the supermodule
+  TGeoHMatrix   *fSensVolMatrix; ///
+  TGeoHMatrix   *fSensVolModifMatrix; ///
+  AliAlignObjParams *fTempAlignObj; ///
+       
+  ClassDef(AliITSAlignMilleModule, 0)
+
+}; 
+
+#endif