]> git.uio.no Git - u/mrichter/AliRoot.git/blame_incremental - ITS/AliITSClusterFinderV2SDD.h
Added first go at a QA task
[u/mrichter/AliRoot.git] / ITS / AliITSClusterFinderV2SDD.h
... / ...
CommitLineData
1#ifndef ALIITSCLUSTERFINDERV2SDD_H
2#define ALIITSCLUSTERFINDERV2SDD_H
3//--------------------------------------------------------------
4// ITS clusterer V2 for SDD
5//
6// This can be a "wrapping" for the V1 cluster finding classes
7// if compiled with uncommented "#define V1" line
8// in the AliITSclustererV2.cxx file.
9//
10// Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch
11//--------------------------------------------------------------
12#include "AliITSClusterFinder.h"
13#include "AliITSDetTypeRec.h"
14
15class TBits;
16class TClonesArray;
17class AliRawReader;
18class AliITSRawStream;
19class AliITSCalibrationSDD;
20class AliITSsegmentationSDD;
21
22class AliITSClusterFinderV2SDD : public AliITSClusterFinder {
23public:
24 AliITSClusterFinderV2SDD(AliITSDetTypeRec* dettyp);
25 virtual ~AliITSClusterFinderV2SDD();
26 virtual void FindRawClusters(Int_t mod);
27 virtual void RawdataToClusters(AliRawReader* rawReader);
28 void SetPeakSelection(Float_t looseCut=15., Float_t tightCut=30., Float_t maxTime=2000.){
29 fCutOnPeakLoose=looseCut;
30 fCutOnPeakTight=tightCut;
31 fMaxDrTimeForTightCut=maxTime;
32 }
33
34 enum {kHybridsPerDDL = 24}; // number of hybrids in each DDL
35 enum {kModulesPerDDL = 12}; // number of modules in each DDL
36
37 protected:
38 AliITSClusterFinderV2SDD(const AliITSClusterFinderV2SDD &source); // copy constructor
39 // assignment operator
40 AliITSClusterFinderV2SDD& operator=(const AliITSClusterFinderV2SDD &source);
41 Bool_t NoiseSuppress(Int_t k, Int_t sid, AliBin* bins, AliITSCalibrationSDD* cal) const;
42 void FindClustersSDD(TClonesArray *digits);
43 void FindClustersSDD(AliBin* bins[2], TBits* anodeFired[2],
44 TClonesArray *dig, TClonesArray *clusters=0x0, Int_t jitter=0);
45
46 void FindClustersSDD(AliITSRawStream* input);
47 virtual AliITSCalibrationSDD* GetResp(Int_t mod)const{
48 return (AliITSCalibrationSDD*) fDetTypeRec->GetCalibrationModel(mod);}
49 virtual AliITSsegmentationSDD* GetSeg()const{
50 return (AliITSsegmentationSDD*)fDetTypeRec->GetSegmentationModel(1);}
51
52 Int_t fNAnodes; // number of anodes
53 Int_t fNTimeBins; // number of time bins
54 Int_t fNZbins; // number of cells along anodes
55 Int_t fNXbins; // number of cells along time
56 AliBin* fDDLBins[kHybridsPerDDL]; // container for digits for 1 DDL
57 Float_t fCutOnPeakLoose; // loose cut on peak (for all drift times)
58 Float_t fCutOnPeakTight; // tight cut on peak (for small drift times)
59 Float_t fMaxDrTimeForTightCut; // max. drift time for fCutOnPeakTight
60
61 ClassDef(AliITSClusterFinderV2SDD,6) // ITS cluster finder V2 for SDD
62};
63
64#endif