]> git.uio.no Git - u/mrichter/AliRoot.git/blame - MUON/mapping/AliMpDEStore.h
- Added new static function ReadData() for loading from ASCII files
[u/mrichter/AliRoot.git] / MUON / mapping / AliMpDEStore.h
CommitLineData
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"
23#include "AliMpIntPair.h"
24
25class AliMpDetElement;
2eee683c 26class TString;
f0c62051 27
28class AliMpDEStore : public TObject {
29
30 friend class AliMpDEIterator;
31
32 public:
33 AliMpDEStore(TRootIOCtor* /*ioCtor*/);
34 virtual ~AliMpDEStore();
35
36 // static access method
ac17c583 37 static AliMpDEStore* Instance(Bool_t warn = true);
38 static AliMpDEStore* ReadData(Bool_t warn = true);
f0c62051 39
40 // methods
41 AliMpDetElement* GetDetElement(Int_t detElemId, Bool_t warn = true) const;
2eee683c 42 AliMpDetElement* GetDetElement(const TString& detName, Bool_t warn = true) const;
43
f0c62051 44 AliMpIntPair GetDetElemIdManu(Int_t manuSerial) const;
45
46 private:
47 AliMpDEStore();
71a2d3aa 48 /// Not implemented
f0c62051 49 AliMpDEStore(const AliMpDEStore& rhs);
71a2d3aa 50 /// Not implemented
f0c62051 51 AliMpDEStore& operator=(const AliMpDEStore& rhs);
52
53 // methods
54 Bool_t IsPlaneType(const TString& planeTypeName);
55 AliMp::PlaneType PlaneType(const TString& planeTypeName);
56 AliMp::StationType StationType(const TString& stationTypeName);
57
58 Bool_t ReadManuToSerialNbs(AliMpDetElement* detElement,
59 AliMp::StationType stationType);
60 Bool_t ReadDENames(AliMp::StationType stationType);
61 void FillDEs();
62
63 // static data members
64 static AliMpDEStore* fgInstance; ///< Singleton instance
65 static const char fgkCommentPrefix; ///< Comment prefix in DE names file
66
67 // data members
68 AliMpExMap fDetElements; ///< Map between DE Ids and DE objects
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