1 #ifndef ALIMUONCLUSTERSTOREV1_H
2 #define ALIMUONCLUSTERSTOREV1_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
10 /// \class AliMUONClusterStoreV1
11 /// \brief Implementation of VClusterStore
13 // Author Laurent Aphecetche, Subatech
15 #ifndef ALIMUONVCLUSTERSTORE_H
16 # include "AliMUONVClusterStore.h"
22 class AliMUONClusterStoreV1 : public AliMUONVClusterStore
25 AliMUONClusterStoreV1();
26 AliMUONClusterStoreV1(const AliMUONClusterStoreV1& rhs);
27 AliMUONClusterStoreV1& operator=(const AliMUONClusterStoreV1& rhs);
28 virtual ~AliMUONClusterStoreV1();
30 virtual AliMUONClusterStoreV1* Create() const { return new AliMUONClusterStoreV1; }
32 virtual AliMUONVCluster* CreateCluster(Int_t /*chamberId*/, Int_t detElemId, Int_t /*clusterIndex*/) const;
34 using AliMUONVClusterStore::Add;
36 virtual AliMUONVCluster* Add(const AliMUONVCluster& Cluster);
37 virtual AliMUONVCluster* Add(Int_t chamberId, Int_t detElemId, Int_t /*clusterIndex*/);
39 /// Whether the Connect(TTree&) method is implemented
40 virtual Bool_t CanConnect() const { return kTRUE; }
42 virtual TIterator* CreateIterator() const;
44 virtual TIterator* CreateChamberIterator(Int_t firstChamberId, Int_t lastChamberId) const;
46 virtual Bool_t Connect(TTree& tree, Bool_t alone=kTRUE) const;
48 virtual void Clear(Option_t* opt="");
50 using AliMUONVClusterStore::GetSize;
52 virtual Int_t GetSize() const;
54 virtual AliMUONVCluster* Remove(AliMUONVCluster& cluster);
58 TClonesArray* ChamberClusters(Int_t chamberId) const;
59 TObject** ChamberClustersPtr(Int_t chamberId) const;
60 //AliMUONVCluster* Find(Int_t clusterId, Int_t& index) const;
63 TObjArray* fClusters; //!< Array of TClonesArray of VClusters
65 ClassDef(AliMUONClusterStoreV1,1) // Implementation of VClusterStore