]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONVClusterFinder.h
Calibration object splitted in: pedestal + E calib + reco parameters
[u/mrichter/AliRoot.git] / MUON / AliMUONVClusterFinder.h
1 #ifndef ALIMUONVCLUSTERFINDER_H
2 #define ALIMUONVCLUSTERFINDER_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice                               */
6
7 // $Id$
8
9 /// \ingroup rec
10 /// \class AliMUONClusterFinder
11 /// \brief Interface of a cluster finder.
12 /// 
13 //  Author Laurent Aphecetche
14
15 #ifndef ROOT_TObject
16 #  include "TObject.h"
17 #endif
18
19 class AliMUONCluster;
20 class AliMpVSegmentation;
21 class AliMUONPad;
22 class AliMUONVDigitStore;
23
24 class AliMUONVClusterFinder : public TObject
25 {
26 public:
27   AliMUONVClusterFinder();
28   virtual ~AliMUONVClusterFinder();
29   
30   /// \todo add comment
31   virtual Bool_t Prepare(const AliMpVSegmentation* segmentations[2],
32                          const AliMUONVDigitStore& digitStore) = 0;
33   
34   /// \todo add comment
35   virtual AliMUONCluster* NextCluster() = 0;
36   
37   /** Add a pad to the list of pads to be considered for clustering.
38     Typical usage is to "put-back-in-business" a pad that was part 
39     of a previous cluster (returned by NextCluster) but was externally
40     identified of not being part of that cluster, so it must be reuseable.
41     Might not be implemented by all cluster finders...
42     (in which case it must returns kFALSE)
43     */
44   virtual Bool_t UsePad(const AliMUONPad& pad);
45   
46   ClassDef(AliMUONVClusterFinder,0) // Interface of a MUON cluster finder.
47 };
48
49 #endif