Coverity fix for uninitialized variables and check for returned null value
[u/mrichter/AliRoot.git] / MUON / AliMUONPreClusterFinderV2.h
1 #ifndef ALIMUONPRECLUSTERFINDERV2_H
2 #define ALIMUONPRECLUSTERFINDERV2_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 AliMUONPreClusterFinderV2
11 /// \brief A basic pre-cluster finder
12 /// 
13 // Author Laurent Aphecetche, Subatech
14
15 #ifndef AliMUONVCLUSTERFINDER_H
16 #  include "AliMUONVClusterFinder.h"
17 #endif
18
19 class TStopwatch;
20 class AliMUONPad;
21
22 class AliMUONPreClusterFinderV2 : public AliMUONVClusterFinder
23 {
24 public:
25   AliMUONPreClusterFinderV2();
26   virtual ~AliMUONPreClusterFinderV2();
27   
28   Bool_t NeedSegmentation() const { return kTRUE; }
29   
30   using AliMUONVClusterFinder::Prepare;
31
32   virtual Bool_t Prepare(Int_t detElemId,                         
33                          TObjArray* pads[2],
34                          const AliMpArea& area,
35                          const AliMpVSegmentation* seg[2]);
36   
37   virtual AliMUONCluster* NextCluster();
38
39   virtual Bool_t UsePad(const AliMUONPad& pad);
40   
41 private:
42   /// Not implemented
43   AliMUONPreClusterFinderV2(const AliMUONPreClusterFinderV2& rhs);
44   /// Not implemented
45   AliMUONPreClusterFinderV2& operator=(const AliMUONPreClusterFinderV2& rhs);
46
47   void AddPad(AliMUONCluster& cluster, AliMUONPad* pad);
48   
49 private:
50   TClonesArray* fClusters; //!< the clusters we've found (owner)
51   const AliMpVSegmentation** fkSegmentations; //!< segmentations (not owner)
52   TObjArray** fPads; //!< the pads corresponding to the digits (not owner)
53   Int_t fDetElemId; //!< which DE we're considering
54   
55   ClassDef(AliMUONPreClusterFinderV2,2) // A basic pre-cluster finder
56 };
57
58 #endif