]> git.uio.no Git - u/mrichter/AliRoot.git/blob - MUON/AliMUONClusterStoreV2Iterator.h
In AliMUONRecoCheck:
[u/mrichter/AliRoot.git] / MUON / AliMUONClusterStoreV2Iterator.h
1 #ifndef ALIMUONCLUSTERSTOREV2ITERATOR_H
2 #define ALIMUONCLUSTERSTOREV2ITERATOR_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 base
10 /// \class AliMUONClusterStoreV2Iterator
11 /// \brief Base implementation of TIterator for AliMUONClusterStoreV2
12 /// 
13 //  Author Philippe Pillot, Subatech
14
15 #ifndef ROOT_TIterator
16 #  include "TIterator.h"
17 #endif
18
19 class AliMUONClusterStoreV2;
20
21 class AliMUONClusterStoreV2Iterator : public TIterator
22 {
23 public:
24   AliMUONClusterStoreV2Iterator(const AliMUONClusterStoreV2* store,
25                                 Int_t firstChamberId, Int_t lastChamberId);
26   
27   virtual ~AliMUONClusterStoreV2Iterator();
28   
29   TObject* Next();
30   
31   void Reset();
32   
33   /// Return 0 as we're not dealing with TCollection objects really
34   virtual const TCollection* GetCollection() const { return 0x0; }
35   
36 private:
37   TObject* NextInCurrentChamber() const;
38   
39 private:
40   /// Not implemented
41   AliMUONClusterStoreV2Iterator(const AliMUONClusterStoreV2Iterator& rhs);
42   /// Not implemented
43   AliMUONClusterStoreV2Iterator& operator=(const AliMUONClusterStoreV2Iterator& rhs);
44   /// Overriden TIterator virtual operator=
45   AliMUONClusterStoreV2Iterator& operator=(const TIterator& rhs);
46
47   const AliMUONClusterStoreV2* fkStore; ///< store to iterate upon
48   Int_t fFirstChamberId; ///< first chamber
49   Int_t fLastChamberId; ///< last chamber
50   Int_t fCurrentChamberId; ///< current chamber
51   TIterator* fChamberIterator; ///< helper iterator
52   
53   ClassDef(AliMUONClusterStoreV2Iterator,0) // Implementation of TIterator
54 };
55
56 #endif