public:
- AliITSsegmentationSDD();
+ AliITSsegmentationSDD(Option_t *opt="");
AliITSsegmentationSDD(const AliITSsegmentationSDD &source);
AliITSsegmentationSDD& operator=(const AliITSsegmentationSDD &source);
- AliITSsegmentationSDD(AliITSgeom *gm);
virtual ~AliITSsegmentationSDD(){}
// Set Detector Segmentation Parameters
virtual void DetToLocal(Int_t ix,Int_t iz,Float_t &x,Float_t &z) const;
//
virtual Float_t GetAnodeFromLocal(Float_t x,Float_t z) const;
+ virtual Int_t GetSideFromLocalX(Float_t xloc) const {
+ if(xloc>0) return 0; // left side (channel 0) positive xloc
+ else return 1; // right side (channel 1) negative xloc
+ }
virtual Float_t GetLocalZFromAnode(Int_t nAnode) const;
virtual Float_t GetLocalZFromAnode(Float_t zAnode) const;
virtual Float_t GetDriftTimeFromTb(Int_t tb) const {
virtual Float_t GetDriftTimeFromTb(Float_t xtb) const {
return xtb*fTimeStep;
}
- //
+ virtual Int_t GetNumberOfChips() const {
+ return fgkNchipsPerHybrid;
+ }
+ virtual Int_t GetMaximumChipIndex() const{
+ return fgkNchipsPerHybrid*2-1;
+ }
+ virtual Int_t GetChipFromLocal(Float_t xloc, Float_t zloc) const;
+ virtual Int_t GetChipsInLocalWindow(Int_t* array, Float_t zmin, Float_t zmax, Float_t xmin, Float_t xmax) const;
+
+
+ virtual Int_t GetChipFromChannel(Int_t ix, Int_t iz) const;
+
// Initialisation
virtual void Init();
+
//
// Get member data
//
// Print default parameters (static const data members, if any)
virtual void PrintDefaultParameters() const;
+ static Int_t GetNAnodesPerHybrid() { return fgkHalfNanodesDefault;}
protected:
virtual void Copy(TObject &obj) const;
static const Float_t fgkClockDefault; //Default value for the clock freq.
static const Int_t fgkHalfNanodesDefault; //Default value for fNanodes/2
static const Int_t fgkNsamplesDefault; //Default value for fNsamples
- static const Float_t fgkCm2Micron;
- static const Float_t fgkMicron2Cm;
- ClassDef(AliITSsegmentationSDD,5) // SDD segmentation
+ static const Int_t fgkNchipsPerHybrid; //number of chips per hybrid
+ static const Int_t fgkNanodesPerChip; //number of chips per hybrid
+ static const Float_t fgkCm2Micron; // conversion from cm to micron
+ static const Float_t fgkMicron2Cm; // conversion from micron to cm
+ ClassDef(AliITSsegmentationSDD,6) // SDD segmentation
};
#endif