ROOT logo
#ifndef ALIMUONDIGITSTOREVIMPLITERATOR_H
#define ALIMUONDIGITSTOREVIMPLITERATOR_H

/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
* See cxx source for full Copyright notice                               */

// $Id$

/// \ingroup base
/// \class AliMUONDigitStoreVImplIterator
/// \brief Base implementation of TIterator for AliMUONDigitStoreVImpl
/// 
// Author Laurent Aphecetche

#ifndef ROOT_TIterator
#  include "TIterator.h"
#endif

class AliMUONDigitStoreVImpl;
class AliMUONVCalibParam;

class AliMUONDigitStoreVImplIterator : public TIterator
{
public:
  AliMUONDigitStoreVImplIterator(const AliMUONDigitStoreVImpl* store);
  AliMUONDigitStoreVImplIterator(const AliMUONDigitStoreVImpl* store,
                              Int_t firstDetElemId,
                              Int_t lastDetElemId,
                              Int_t cathode=2);
  
  virtual ~AliMUONDigitStoreVImplIterator();
  
  TObject* Next();
  
  void Reset();
  
  /// Return 0 as we're not dealing with TCollection objects really
  virtual const TCollection* GetCollection() const { return 0x0; }
  
private:
  /// Not implemented
  AliMUONDigitStoreVImplIterator(const AliMUONDigitStoreVImplIterator& rhs);
  /// Not implemented
  AliMUONDigitStoreVImplIterator& operator=(const AliMUONDigitStoreVImplIterator& rhs);
  /// Overriden TIterator virtual operator=
  AliMUONDigitStoreVImplIterator& operator=(const TIterator& rhs);

  const AliMUONDigitStoreVImpl* fkStore; //!< store to iterate upon
  Int_t fFirstDetElemId; //!< first de
  Int_t fLastDetElemId; //!< last de
  Int_t fCathode; //!< cathode (-1 for both)
  TIterator* fStoreIterator; //!< helper iterator
  AliMUONVCalibParam* fCurrentCalibParam; //!< current CalibParam
  Int_t fCurrentCalibParamIndex; //!< current index in fCurrentCalibParam
  
  ClassDef(AliMUONDigitStoreVImplIterator,1) // Implementation of AliMUONVDataIterator
};

#endif
 AliMUONDigitStoreVImplIterator.h:1
 AliMUONDigitStoreVImplIterator.h:2
 AliMUONDigitStoreVImplIterator.h:3
 AliMUONDigitStoreVImplIterator.h:4
 AliMUONDigitStoreVImplIterator.h:5
 AliMUONDigitStoreVImplIterator.h:6
 AliMUONDigitStoreVImplIterator.h:7
 AliMUONDigitStoreVImplIterator.h:8
 AliMUONDigitStoreVImplIterator.h:9
 AliMUONDigitStoreVImplIterator.h:10
 AliMUONDigitStoreVImplIterator.h:11
 AliMUONDigitStoreVImplIterator.h:12
 AliMUONDigitStoreVImplIterator.h:13
 AliMUONDigitStoreVImplIterator.h:14
 AliMUONDigitStoreVImplIterator.h:15
 AliMUONDigitStoreVImplIterator.h:16
 AliMUONDigitStoreVImplIterator.h:17
 AliMUONDigitStoreVImplIterator.h:18
 AliMUONDigitStoreVImplIterator.h:19
 AliMUONDigitStoreVImplIterator.h:20
 AliMUONDigitStoreVImplIterator.h:21
 AliMUONDigitStoreVImplIterator.h:22
 AliMUONDigitStoreVImplIterator.h:23
 AliMUONDigitStoreVImplIterator.h:24
 AliMUONDigitStoreVImplIterator.h:25
 AliMUONDigitStoreVImplIterator.h:26
 AliMUONDigitStoreVImplIterator.h:27
 AliMUONDigitStoreVImplIterator.h:28
 AliMUONDigitStoreVImplIterator.h:29
 AliMUONDigitStoreVImplIterator.h:30
 AliMUONDigitStoreVImplIterator.h:31
 AliMUONDigitStoreVImplIterator.h:32
 AliMUONDigitStoreVImplIterator.h:33
 AliMUONDigitStoreVImplIterator.h:34
 AliMUONDigitStoreVImplIterator.h:35
 AliMUONDigitStoreVImplIterator.h:36
 AliMUONDigitStoreVImplIterator.h:37
 AliMUONDigitStoreVImplIterator.h:38
 AliMUONDigitStoreVImplIterator.h:39
 AliMUONDigitStoreVImplIterator.h:40
 AliMUONDigitStoreVImplIterator.h:41
 AliMUONDigitStoreVImplIterator.h:42
 AliMUONDigitStoreVImplIterator.h:43
 AliMUONDigitStoreVImplIterator.h:44
 AliMUONDigitStoreVImplIterator.h:45
 AliMUONDigitStoreVImplIterator.h:46
 AliMUONDigitStoreVImplIterator.h:47
 AliMUONDigitStoreVImplIterator.h:48
 AliMUONDigitStoreVImplIterator.h:49
 AliMUONDigitStoreVImplIterator.h:50
 AliMUONDigitStoreVImplIterator.h:51
 AliMUONDigitStoreVImplIterator.h:52
 AliMUONDigitStoreVImplIterator.h:53
 AliMUONDigitStoreVImplIterator.h:54
 AliMUONDigitStoreVImplIterator.h:55
 AliMUONDigitStoreVImplIterator.h:56
 AliMUONDigitStoreVImplIterator.h:57
 AliMUONDigitStoreVImplIterator.h:58
 AliMUONDigitStoreVImplIterator.h:59