6 #include "GaudiKernel/MsgStream.h"
18 if (online_id.size()!=7 && online_id.size()!=9)
21 log<<MSG::WARNING<<
"Wrong length for online_id="<<online_id<<
endmsg;
26 if(online_id[4]!=
'A' && online_id[4]!=
'C' && online_id[4]!=
'B')
29 log<<MSG::WARNING<<
"Invalid side for online_id="<<online_id<<
endmsg;
37 std::string station_nm_string(online_id, 0, 3);
42 log<<MSG::WARNING<<
"Invalid station name for online_id="<<online_id<<
endmsg;
46 ret.setStationName(station_mm);
49 eta_str[0]=online_id[3];
51 long int eta=strtol(eta_str, &endptr, 10);
52 if(endptr!=&(eta_str[1]))
55 log<<MSG::WARNING<<
"eta is not a number for online_id="<<online_id<<
endmsg;
60 phi_str[0]=online_id[5];
61 phi_str[1]=online_id[6];
63 long int phi=strtol(phi_str, &endptr, 10);
64 if(endptr!=&(phi_str[2]))
67 log<<MSG::WARNING<<
"phi is not a number for online_id="<<online_id<<
endmsg;
71 if(
phi==13 &&
eta>3 && station_nm_string==
"BML")
75 if(station_nm_string==
"BOF")
77 else if(station_nm_string==
"BOG")
81 if((
phi==1 ||
phi==9) && station_nm_string==
"EIL")
86 if(
phi==5 && station_nm_string==
"EEL")
eta=1;
89 if(station_nm_string[2]==
'L' || station_nm_string[2]==
'M' || station_nm_string[2]==
'R')
97 if(online_id.size()==9)
102 ret.setMdtMultilayer(1);
105 ret.setMdtMultilayer(2);
109 log<<MSG::WARNING<<
"Multilayer is neither 1 or 2 for online_id="<<online_id<<
endmsg;
112 return ret.mdtMultilayerId();
114 return ret.mdtChamberId();