1 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
2 * See cxx source for full Copyright notice */
7 /// \class AliMUONGeometryStore
8 /// \brief Array of objects sorted using the AliMUONVGeometryDEIndexing class
10 /// The class contains the array of objects (derived from TObject),
11 /// which are sorted using the AliMUONVGeometryDEIndexing class.
12 /// The class provides fast access to detection element via detElemId.
14 /// Author: Ivana Hrivnacova, IPN Orsay
16 #ifndef ALI_MUON_GEOMETRY_STORE_H
17 #define ALI_MUON_GEOMETRY_STORE_H
20 #include <TObjArray.h>
22 class AliMUONVGeometryDEIndexing;
24 class AliMUONGeometryStore : public TObject
27 AliMUONGeometryStore(AliMUONVGeometryDEIndexing* indexing,
28 Bool_t isOwner = true);
29 AliMUONGeometryStore();
30 virtual ~AliMUONGeometryStore();
33 void Add(Int_t objectId, TObject* object);
36 TObject* Get(Int_t objectId, Bool_t warn = true) const;
38 // methods for looping
39 Int_t GetNofEntries() const;
40 TObject* GetEntry(Int_t index) const;
43 AliMUONGeometryStore(const AliMUONGeometryStore& rhs);
46 AliMUONGeometryStore& operator = (const AliMUONGeometryStore& rhs);
49 // static data members
50 static const Int_t fgkInitSize; // Initial size of array of objects
53 TObjArray fObjects;// The array of detection elements
54 AliMUONVGeometryDEIndexing* fDEIndexing; // The DE indexing definitions
56 ClassDef(AliMUONGeometryStore,1) // MUON geometry store
59 #endif //ALI_MUON_GEOMETRY_STORE_H