Update master to aliroot
[u/mrichter/AliRoot.git] / HLT / ITS / clusterfinders / AliHLTITSClusterFinderSSD.h
1 #ifndef ALIHLTITSCLUSTERFINDERSSD_H
2 #define ALIHLTITSCLUSTERFINDERSSD_H
3 /* Copyright(c) 2007-2009, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id: AliHLTITSClusterFinderSSD.h 32604 2009-05-29 10:41:46Z masera $ */
7
8 //--------------------------------------------------------------
9 //                       ITS clusterer V2 for SSD
10 //
11 //   This can be a "wrapping" for the V1 cluster finding classes
12 //   if compiled with uncommented "#define V1" line 
13 //   in the AliITSclustererV2.cxx file.
14 //
15 //   Origin: Iouri Belikov, CERN, Jouri.Belikov@cern.ch 
16 //--------------------------------------------------------------
17 #include "AliITSClusterFinder.h"
18 #include <vector>
19
20 class TClonesArray;
21 class AliRawReader;
22 class AliITSRawStream;
23 class AliITSRawStreamSSD;
24 class AliITSCalibrationSSD;
25 class AliITSRecoParam;
26
27 class AliHLTITSClusterFinderSSD : public AliITSClusterFinder {
28 public:
29   AliHLTITSClusterFinderSSD(AliITSDetTypeRec* dettyp, AliRawReader *reader);
30   virtual ~AliHLTITSClusterFinderSSD();
31   virtual void FindRawClusters(Int_t /*mod*/){;}
32   virtual void RawdataToClusters(AliRawReader* /*rawReader*/,TClonesArray** /*clusters*/){;}
33
34   virtual void RawdataToClusters( std::vector<AliITSRecPoint> &clusters);
35  protected:
36
37   void FindClustersSSD(Ali1Dcluster* neg, Int_t nn, 
38                        Ali1Dcluster* pos, Int_t np,
39                        std::vector<AliITSRecPoint> &);
40
41   AliITSRecoParam *fRecoParam; //!
42   AliRawReader *fRawReader; //!
43   AliITSRawStreamSSD *fRawStream;//!
44
45   Int_t fLastSSD1;        //index of the last SSD1 detector   
46   static Short_t* fgPairs;       //array used to build positive-negative pairs
47   static Int_t    fgPairsSize;    //actual size of pairs array
48   static const Float_t fgkCosmic2008StripShifts[16][9]; // Shifts for 2007/2008 Cosmic data (timing problem)
49   static const Float_t fgkThreshold; // threshold for the seed
50
51  private:
52   AliHLTITSClusterFinderSSD(const AliHLTITSClusterFinderSSD& );
53   AliHLTITSClusterFinderSSD& operator=(const AliHLTITSClusterFinderSSD&  );
54
55   ClassDef(AliHLTITSClusterFinderSSD,0)  // ITS cluster finder V2 for SDD
56 };
57
58 #endif