o add Reset function to CalPad and CalROC o Add functionality to AliTPCdataQA - Reset...
[u/mrichter/AliRoot.git] / MUON / AliMUONVClusterStore.h
CommitLineData
25819f29 1#ifndef ALIMUONVCLUSTERSTORE_H
2#define ALIMUONVCLUSTERSTORE_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 AliMUONVClusterStore
11/// \brief Interface of a cluster container
12///
13// Author Laurent Aphecetche, Subatech
14
15#ifndef ALIMUONVSTORE_H
16# include "AliMUONVStore.h"
17#endif
18
2060b217 19#ifndef ALIMUONVCLUSTER_H
20# include "AliMUONVCluster.h" // must be there for covariant return type of FindObjet methods
21#endif
22
23class AliMUONVCluster;
25819f29 24
25class AliMUONVClusterStore : public AliMUONVStore
26{
27public:
28 AliMUONVClusterStore();
29 virtual ~AliMUONVClusterStore();
30
31 virtual Bool_t Add(TObject* object);
32
33 /// Add a cluster object to the store
7332f213 34 virtual AliMUONVCluster* Add(const AliMUONVCluster& Cluster) = 0;
2060b217 35 /// Create a new cluster with an unique ID and add it to the store
36 virtual AliMUONVCluster* Add(Int_t chamberId, Int_t detElemId, Int_t clusterIndex) = 0;
25819f29 37
38 using AliMUONVStore::Create;
39
40 static AliMUONVClusterStore* Create(TTree& tree);
41
2060b217 42 /// Create a cluster
43 virtual AliMUONVCluster* CreateCluster(Int_t chamberId, Int_t detElemId, Int_t clusterIndex) const = 0;
44
25819f29 45 /// Return an iterator to loop over the whole store
46 virtual TIterator* CreateIterator() const = 0;
47
48 /// Return an iterator to loop over the store in the given chamber range
49 virtual TIterator* CreateChamberIterator(Int_t firstChamberId, Int_t lastChamberId) const = 0;
2060b217 50
51 /// Clear container
52 virtual void Clear(Option_t* opt="") = 0;
53
25819f29 54 /// Remove a cluster object to the store
2060b217 55 virtual AliMUONVCluster* Remove(AliMUONVCluster& cluster) = 0;
25819f29 56
2060b217 57 using AliMUONVStore::FindObject;
58
59 // Find an object (default is the same as in AliMUONVStore)
60 virtual AliMUONVCluster* FindObject(const TObject* object) const;
61
62 // Find an object by its uniqueID (default is the same as in AliMUONVStore)
63 virtual AliMUONVCluster* FindObject(UInt_t uniqueID) const;
25819f29 64
65 ClassDef(AliMUONVClusterStore,1) // Cluster container interface
66};
67
68#endif
2060b217 69