41 #include <Riostream.h>
44 #include <TObjString.h>
45 #include <TObjArray.h>
65 if ( ! fgInstance && warn ) {
66 AliWarningClass(
"DE Store has not been loaded");
81 AliWarningClass(
"DE Store has been already loaded");
86 AliInfoClass(
"Reading DE Store from ASCII files.");
170 TString cathName1, cathName2;
172 while ( ! in.eof() && cathName1.Length() == 0 ) {
173 if ( word[0] ==
'#' )
174 in.getline(line, 80);
182 Bool_t isCathNameDefined =
false;
184 isCathNameDefined =
true;
189 TString name, name0, name1, name2;
194 if ( word[0] ==
'#' )
196 in.getline(line, 80);
200 detElemId = word.Atoi();
214 if ( !isCathNameDefined )
219 name0 = name1(0,pos);
238 if ( planeForCathode[0]==planeForCathode[1] )
240 AliFatalClass(Form(
"Got the same cathode type for both planes"
241 " of DetElemId %d",detElemId));
248 AliDebugClassStream(3)
249 <<
"Adding DE name " << detElemId <<
" " << name << endl;
254 AliWarningClassStream()
255 <<
"Det element " << detElemId <<
" " << name <<
" already defined." << endl;
276 Bool_t result = result1 && result2 && result3 && result4;
278 AliErrorClassStream() <<
"Error in reading DE names files" << endl;
296 if ( ! detElement && warn ) {
297 AliErrorClassStream()
298 <<
"Detection element " << detElemId <<
" not defined." << endl;
312 while ( ( detElement = static_cast<AliMpDetElement*>(next()) ) )
315 if (deName.CompareTo(detElement->GetDEName()) == 0)
321 AliErrorClassStream()
322 <<
"Detection element with name" << deName.Data() <<
" not defined." << endl;
The container class for detection element objects.
AliMp::PlaneType OtherPlaneType(AliMp::PlaneType planeType)
Return the other plane type.
static AliMpDEStore * Instance(Bool_t warn=true)
AliMpExMap fDetElements
Map between DE Ids and DE objects.
void FillDEs(const AliMpDataStreams &dataStreams)
static AliMpDEStore * fgInstance
Singleton instance.
Bool_t IsPlaneType(const TString &planeTypeName)
AliMpDEStore()
Not implemented.
AliMpDetElement * GetDetElement(Int_t detElemId, Bool_t warn=true) const
static char GetNameSeparator()
Return the name separator.
The class defines the electronics properties of detection element.
Bool_t ReadDENames(const AliMpDataStreams &dataStreams, AliMp::StationType stationType, AliMq::Station12Type station12Type=AliMq::kNotSt12)
static AliMpDEStore * ReadData(const AliMpDataStreams &dataStreams, Bool_t warn=true)
TString PlaneTypeName(AliMp::PlaneType planeType)
Return name for given planeType.
TObject * GetValue(Int_t keyFirst, Int_t keySecond) const
void Add(Int_t keyFirst, Int_t keySecond, TObject *object)
void SetOwner(Bool_t owner)
static TString DENamesFilePath(AliMp::StationType stationType, AliMq::Station12Type station12Type)
Bool_t GetReadFromFiles() const
AliMpExMapIterator * CreateIterator() const
Mapping data streams provider.