* 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;
/******************************************************************************/
// 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() {}
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.
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();
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];
}