]>
Commit | Line | Data |
---|---|---|
f0c62051 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
2 | * See cxx source for full Copyright notice */ | |
3 | ||
4 | // $Id$ | |
5 | // $MpId: AliMpDEStore.h,v 1.6 2006/05/24 13:58:16 ivana Exp $ | |
6 | ||
7 | /// \ingroup management | |
8 | /// \class AliMpDEStore | |
9 | /// \brief The container class for detection element objects | |
10 | /// | |
11 | /// \author Ivana Hrivnacova, IPN Orsay; | |
12 | /// Laurent Aphecetche, Christian Finck, SUBATECH Nantes | |
13 | ||
14 | #ifndef ALI_MP_DE_STORE_H | |
15 | #define ALI_MP_DE_STORE_H | |
16 | ||
17 | #include <TObject.h> | |
18 | #include <TArrayI.h> | |
19 | ||
20 | #include "AliMpExMap.h" | |
21 | #include "AliMpPlaneType.h" | |
22 | #include "AliMpStationType.h" | |
4e51cfd2 | 23 | #include "AliMpStation12Type.h" |
f0c62051 | 24 | |
25 | class AliMpDetElement; | |
ab167304 | 26 | class AliMpDataStreams; |
2eee683c | 27 | class TString; |
f0c62051 | 28 | |
29 | class AliMpDEStore : public TObject { | |
30 | ||
31 | friend class AliMpDEIterator; | |
32 | ||
33 | public: | |
7d5d0cc5 | 34 | AliMpDEStore(TRootIOCtor* ioCtor); |
f0c62051 | 35 | virtual ~AliMpDEStore(); |
36 | ||
37 | // static access method | |
ac17c583 | 38 | static AliMpDEStore* Instance(Bool_t warn = true); |
ab167304 | 39 | static AliMpDEStore* ReadData(const AliMpDataStreams& dataStreams, |
40 | Bool_t warn = true); | |
f0c62051 | 41 | |
42 | // methods | |
43 | AliMpDetElement* GetDetElement(Int_t detElemId, Bool_t warn = true) const; | |
2eee683c | 44 | AliMpDetElement* GetDetElement(const TString& detName, Bool_t warn = true) const; |
f0c62051 | 45 | |
46 | private: | |
ab167304 | 47 | AliMpDEStore(const AliMpDataStreams& dataStreams); |
48 | /// Not implemented | |
f0c62051 | 49 | AliMpDEStore(); |
71a2d3aa | 50 | /// Not implemented |
f0c62051 | 51 | AliMpDEStore(const AliMpDEStore& rhs); |
71a2d3aa | 52 | /// Not implemented |
f0c62051 | 53 | AliMpDEStore& operator=(const AliMpDEStore& rhs); |
54 | ||
55 | // methods | |
56 | Bool_t IsPlaneType(const TString& planeTypeName); | |
4e51cfd2 | 57 | |
58 | Bool_t ReadDENames(AliMp::StationType stationType, | |
59 | AliMq::Station12Type station12Type = AliMq::kNotSt12); | |
f0c62051 | 60 | void FillDEs(); |
61 | ||
62 | // static data members | |
63 | static AliMpDEStore* fgInstance; ///< Singleton instance | |
64 | static const char fgkCommentPrefix; ///< Comment prefix in DE names file | |
65 | ||
66 | // data members | |
7d5d0cc5 | 67 | const AliMpDataStreams& fkDataStreams; //!< Data streams |
ab167304 | 68 | AliMpExMap fDetElements; ///< Map between DE Ids and DE objects |
f0c62051 | 69 | |
70 | ClassDef(AliMpDEStore,1) // The manager class for definition of detection element types | |
71 | }; | |
72 | ||
73 | #endif //ALI_MP_MANAGER_H | |
74 | ||
75 | ||
76 | ||
77 | ||
78 | ||
79 | ||
80 | ||
81 | ||
82 | ||
83 | ||
84 | ||
85 | ||
86 | ||
87 | ||
88 |