]> git.uio.no Git - u/mrichter/AliRoot.git/blobdiff - EVE/EveDet/AliEveITSDigitsInfo.h
update extra library list needed for class
[u/mrichter/AliRoot.git] / EVE / EveDet / AliEveITSDigitsInfo.h
index 5b4dc9123d82511954adbf439d6b8265b2991368..0e2971521960411857ba6ebc7ee182e46e5a3a99 100644 (file)
@@ -7,19 +7,18 @@
  * full copyright notice.                                                 *
  **************************************************************************/
 
-#ifndef ALIEVE_ITSDigitsInfo_H
-#define ALIEVE_ITSDigitsInfo_H
+#ifndef AliEveITSDigitsInfo_H
+#define AliEveITSDigitsInfo_H
 
 #include <TEveUtil.h>
+#include <TObject.h>
 
 #include <map>
 #include <vector>
 
-#include <TObject.h>
-#include <TClonesArray.h>
-#include <TTree.h>
+class TClonesArray;
+class TTree;
 
-//class AliITSgeom;
 class AliITSsegmentationSPD;
 class AliITSsegmentationSDD;
 class AliITSsegmentationSSD;
@@ -30,16 +29,9 @@ class AliRawReader;
 /******************************************************************************/
 // AliEveITSModuleSelection
 /******************************************************************************/
+
 class AliEveITSModuleSelection
 {
-protected:
-  Int_t    fType;      // Type of modules: 0 - SPD, 1 - SDD, 2 - SSD.
-  Int_t    fLayer;     // Layer, 0 - inner SPD, 5 - outer SSD.
-  Float_t  fMinPhi;    // Min phi.
-  Float_t  fMaxPhi;    // Max phi.
-  Float_t  fMinTheta;  // Min theta.
-  Float_t  fMaxTheta;  // Max theta.
-
 public:
   AliEveITSModuleSelection();
   virtual ~AliEveITSModuleSelection() {}
@@ -60,37 +52,30 @@ public:
   void    SetPhiRange  (Float_t x, Float_t y) { fMinPhi   = x; fMaxPhi   = y; }
   void    SetThetaRange(Float_t x, Float_t y) { fMinTheta = x; fMaxTheta = y; }
 
-  ClassDef(AliEveITSModuleSelection, 1); // Helper for selecting a range of ITS modules by type, layer, phi and theta.
+protected:
+  Int_t    fType;      // Type of modules: 0 - SPD, 1 - SDD, 2 - SSD.
+  Int_t    fLayer;     // Layer, 0 - inner SPD, 5 - outer SSD.
+  Float_t  fMinPhi;    // Min phi.
+  Float_t  fMaxPhi;    // Max phi.
+  Float_t  fMinTheta;  // Min theta.
+  Float_t  fMaxTheta;  // Max theta.
+
+  ClassDef(AliEveITSModuleSelection, 0); // Helper for selecting a range of ITS modules by type, layer, phi and theta.
 };
 
+
 /******************************************************************************/
 // AliEveITSDigitsInfo
 /******************************************************************************/
 
 class AliEveITSDigitsInfo : public TObject, public TEveRefCnt
 {
-  AliEveITSDigitsInfo(const AliEveITSDigitsInfo&);            // Not implemented
-  AliEveITSDigitsInfo& operator=(const AliEveITSDigitsInfo&); // Not implemented
-
-private:
-  Float_t fSPDZCoord[192];                // Precalculated z-coordinates for positions of digits.
-
-  void InitInternals();
-
-protected:
-  std::map<Int_t,  TClonesArray*> fSPDmap;     // Map from module-id to SPD data.
-  std::map<Int_t,  TClonesArray*> fSDDmap;     // Map from module-id to SDD data.
-  std::map<Int_t,  TClonesArray*> fSSDmap;     // Map from module-id to SSD data.
-
-  void        SetITSSegmentation();
-
 public:
   TTree*                   fTree;         // Tree from which the digits are read.
 
   AliITSsegmentationSPD*   fSegSPD;       // Segmentation of SPD.
   AliITSsegmentationSDD*   fSegSDD;       // Segmentation of SDD.
   AliITSsegmentationSSD*   fSegSSD;       // Segmentation of SSD.
-  AliITSDDLModuleMapSDD*   fDDLMapSDD;    // Mapping DDL/module to SDD-module number.
 
   Int_t                    fSPDMinVal;    // Default low  limit for display of SPD digits.
   Int_t                    fSSDMinVal;    // Default low  limit for display of SSD digits.
@@ -109,6 +94,8 @@ public:
   Int_t                    fSDDScaleZ[5]; // SDD cell-sizes along Z for display of scaled-digits.
   Int_t                    fSSDScale [5]; // SSD cell-sizes for display of scaled-digits.
 
+  static AliITSDDLModuleMapSDD* fgDDLMapSDD;  // Mapping DDL/module to SDD-module number.
+
   AliEveITSDigitsInfo();
   virtual ~AliEveITSDigitsInfo();
 
@@ -117,17 +104,32 @@ public:
 
   TClonesArray* GetDigits(Int_t moduleID, Int_t detector);
 
-  void GetSPDLocalZ(Int_t j, Float_t& z);
+  void GetSPDLocalZ(Int_t j, Float_t& z) const;
 
   void GetModuleIDs(AliEveITSModuleSelection* sel, std::vector<UInt_t>& ids);
 
   virtual void Print(Option_t* opt="") const;
 
+protected:
+  std::map<Int_t,  TClonesArray*> fSPDmap; // Map from module-id to SPD data.
+  std::map<Int_t,  TClonesArray*> fSDDmap; // Map from module-id to SDD data.
+  std::map<Int_t,  TClonesArray*> fSSDmap; // Map from module-id to SSD data.
+
+  void SetITSSegmentation();
+
+private:
+  Float_t fSPDZCoord[192]; // Precalculated z-coordinates for positions of digits.
+
+  void InitInternals();
+
+  AliEveITSDigitsInfo(const AliEveITSDigitsInfo&);            // Not implemented
+  AliEveITSDigitsInfo& operator=(const AliEveITSDigitsInfo&); // Not implemented
+
   ClassDef(AliEveITSDigitsInfo, 0); // Stores ITS geometry information and event-data in format suitable for visualization.
-}; // endclass AliEveITSDigitsInfo
+};
 
 
-inline void AliEveITSDigitsInfo::GetSPDLocalZ(Int_t j, Float_t& z)
+inline void AliEveITSDigitsInfo::GetSPDLocalZ(Int_t j, Float_t& z) const
 {
   z = fSPDZCoord[j];
 }