Line data Source code
1 : #ifndef ALIMUONCLUSTERSTOREV1_H
2 : #define ALIMUONCLUSTERSTOREV1_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 AliMUONClusterStoreV1
11 : /// \brief Implementation of VClusterStore
12 : ///
13 : // Author Laurent Aphecetche, Subatech
14 :
15 : #ifndef ALIMUONVCLUSTERSTORE_H
16 : # include "AliMUONVClusterStore.h"
17 : #endif
18 :
19 : class TObjArray;
20 : class TClonesArray;
21 :
22 : class AliMUONClusterStoreV1 : public AliMUONVClusterStore
23 : {
24 : public:
25 : AliMUONClusterStoreV1();
26 : AliMUONClusterStoreV1(const AliMUONClusterStoreV1& rhs);
27 : AliMUONClusterStoreV1& operator=(const AliMUONClusterStoreV1& rhs);
28 : virtual ~AliMUONClusterStoreV1();
29 :
30 0 : virtual AliMUONClusterStoreV1* Create() const { return new AliMUONClusterStoreV1; }
31 :
32 : virtual AliMUONVCluster* CreateCluster(Int_t /*chamberId*/, Int_t detElemId, Int_t /*clusterIndex*/) const;
33 :
34 : using AliMUONVClusterStore::Add;
35 :
36 : virtual AliMUONVCluster* Add(const AliMUONVCluster& Cluster);
37 : virtual AliMUONVCluster* Add(Int_t chamberId, Int_t detElemId, Int_t /*clusterIndex*/);
38 :
39 : /// Whether the Connect(TTree&) method is implemented
40 0 : virtual Bool_t CanConnect() const { return kTRUE; }
41 :
42 : virtual TIterator* CreateIterator() const;
43 :
44 : virtual TIterator* CreateChamberIterator(Int_t firstChamberId, Int_t lastChamberId) const;
45 :
46 : virtual Bool_t Connect(TTree& tree, Bool_t alone=kTRUE) const;
47 :
48 : virtual void Clear(Option_t* opt="");
49 :
50 : using AliMUONVClusterStore::GetSize;
51 :
52 : virtual Int_t GetSize() const;
53 :
54 : virtual AliMUONVCluster* Remove(AliMUONVCluster& cluster);
55 :
56 : private:
57 :
58 : TClonesArray* ChamberClusters(Int_t chamberId) const;
59 : TObject** ChamberClustersPtr(Int_t chamberId) const;
60 : //AliMUONVCluster* Find(Int_t clusterId, Int_t& index) const;
61 :
62 : private:
63 : TObjArray* fClusters; //!<! Array of TClonesArray of VClusters
64 :
65 18 : ClassDef(AliMUONClusterStoreV1,1) // Implementation of VClusterStore
66 : };
67 :
68 : #endif
69 :
|