1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
6 // Class AliMUONGeometryStore
7 // --------------------------
8 // The class contains the array of the detection elements,
9 // which are sorted using the AliMUONVGeometryDEIndexing class.
10 // The class provides fast access to detection element via detElemId.
12 // Author: Ivana Hrivnacova, IPN Orsay
14 #ifndef ALI_MUON_GEOMETRY_STORE_H
15 #define ALI_MUON_GEOMETRY_STORE_H
18 #include <TObjArray.h>
20 class AliMUONVGeometryDEIndexing;
22 class AliMUONGeometryStore : public TObject
25 AliMUONGeometryStore(AliMUONVGeometryDEIndexing* indexing,
26 Bool_t isOwner = true);
27 AliMUONGeometryStore();
28 virtual ~AliMUONGeometryStore();
31 void Add(Int_t objectId, TObject* object);
34 TObject* Get(Int_t objectId, Bool_t warn = true) const;
36 // methods for looping
37 Int_t GetNofEntries() const;
38 TObject* GetEntry(Int_t index) const;
41 AliMUONGeometryStore(const AliMUONGeometryStore& rhs);
44 AliMUONGeometryStore& operator = (const AliMUONGeometryStore& rhs);
47 // static data members
48 static const Int_t fgkInitSize; // Initial size of array of objects
51 TObjArray fObjects;// The array of detection elements
52 AliMUONVGeometryDEIndexing* fDEIndexing; // The DE indexing definitions
54 ClassDef(AliMUONGeometryStore,1) // MUON geometry store
57 #endif //ALI_MUON_GEOMETRY_STORE_H