18 declareInterface<IIdToFixedIdTool>(
this);
25 return StatusCode::SUCCESS;
33 ATH_MSG_DEBUG(
" MuonIdentifier doesn't correspond to a muon ");
38 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (general) ");
48 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (MDT) ");
61 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (RPC) ");
72 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (CSC) ");
82 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (TGC) ");
100 }
else if (fid.
is_tgc()) {
112 ATH_MSG_DEBUG(
" MuonIdentifier doesn't correspond to a muon ");
117 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (general) ");
127 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (MDT) ");
140 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (RPC) ");
151 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (CSC) ");
161 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (TGC) ");
171 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (MMG) ");
200 if (!done)
ATH_MSG_INFO(
"Something went wrong in the conversion id->fid (STG) ");
211 }
else if (fid.
is_rpc()) {
218 }
else if (fid.
is_tgc()) {
221 }
else if (fid.
is_mmg()) {
224 }
else if (fid.
is_stg()) {
251 std::string stnName(region, 0, 3);
252 std::string::size_type separator1 = region.find_first_of(
'_');
253 std::string::size_type separator2 = region.find_last_of(
'_');
254 if ((separator1 == std::string::npos) || (separator2 == std::string::npos) || (separator1 == separator2)) {
255 ATH_MSG_WARNING(
"IdToFixedIdTool::regionKeyToId : invalid region key " << region);
258 std::string::size_type separator3 = region.find(
'_', separator1 + 1);
259 if (separator3 != separator2) {
261 std::string stnPhi(region, separator1 + 1, separator2 - separator1 - 1);
262 std::string stnEta(region, separator2 + 1, separator3 - separator2 - 1);
263 std::istringstream is1, is2;
268 std::string Ml(region, separator3 + 1, region.size() - separator3 - 1);
269 std::istringstream is3;
274 std::string stnPhi(region, separator1 + 1, separator2 - separator1 - 1);
275 std::string stnEta(region, separator2 + 1, region.size() - separator2 - 1);
276 std::istringstream is1, is2;
291 if (
id != test)
ATH_MSG_WARNING(
"SOMETHING WENT WRONG PROCESSING FIXEDID<->ID");
Scalar eta() const
pseudorapidity method
Scalar phi() const
phi method
#define ATH_CHECK
Evaluate an expression and check for errors.
#define ATH_MSG_VERBOSE(x)
#define ATH_MSG_WARNING(x)
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
Implements fixed identifiers not dependent upon Athena Identifier for internal use in the calibration...
bool setTgcIsStrip(int num)
Tgc specific: set is_strip to num.
bool setRpcDoubletZ(int num)
Rpc specific: set doublet_Z to num.
bool setCscWireLayer(int num)
Csc specific: set wire layer to num.
int cscWireLayer() const
Csc specific:
bool setTgcGasGap(int num)
Tgc specific: set gas_gap to num.
bool setCscChamberLayer(int num)
Csc specific: set chamber layer to num.
bool setRpcGasGap(int num)
Rpc specific: set gas_gap to num.
bool setTechnology(int num)
set technology to num in the fixed identifier
bool setStationEta(int num)
set station eta to num in the fixed identifier
bool setCscMeasuresPhi(int num)
Csc specific: set measures_phi to num.
bool setTgcChannel(int num)
Tgc specific: set channel to num.
int rpcDoubletPhi() const
Rpc specific:
int tgcIsStrip() const
Tgc specific:
bool setCscStrip(int num)
Csc specific: set strip to num.
bool setRpcMeasuresPhi(int num)
Rpc specific: set measures_phi to num.
bool setMdtTubeLayer(int num)
Mdt specific: set layer to num.
bool setStationPhi(int num)
set station phi to num in the fixed identifier
bool setMdtTube(int num)
Mdt specific: set tube to num.
int mdtTubeLayer() const
Mdt specific:
int mdtTube() const
Mdt specific:
int tgcGasGap() const
Tgc specific:
int rpcGasGap() const
Rpc specific:
bool setRpcStrip(int num)
Rpc specific: set strip to num.
int cscMeasuresPhi() const
Csc specific:
bool setRpcDoubletR(int num)
Rpc specific: set doublet_R to num.
int rpcMeasuresPhi() const
Rpc specific:
int cscStrip() const
Csc specific:
bool setMdtMultilayer(int num)
Mdt specific: set multilayer to num.
bool setRpcDoubletPhi(int num)
Rpc specific: set doublet_Phi to num.
int tgcChannel() const
Tgc specific:
int rpcDoubletR() const
Rpc specific:
std::string stationNameString() const
bool setStationName(int num)
set station name to num in the fixed identifier
static int stationStringToFixedStationNumber(const std::string &station)
int rpcStrip() const
Rpc specific:
int mdtMultilayer() const
Mdt specific:
int rpcDoubletZ() const
Rpc specific:
int cscChamberLayer() const
Csc specific:
bool setRpcDoubletPhi(int num)
Rpc specific: set doublet_Phi to num.
int stgMultilayer() const
Stg specific:
int tgcIsStrip() const
Tgc specific:
bool setCscStrip(int num)
Csc specific: set strip to num.
bool setRpcDoubletR(int num)
Rpc specific: set doublet_R to num.
bool setRpcDoubletZ(int num)
Rpc specific: set doublet_Z to num.
bool setMdtMultilayer(int num)
Mdt specific: set multilayer to num.
int mmgGasGap() const
Mmg specific:
StgChannelType
an enum with the STGC channel types
int rpcStrip() const
Rpc specific:
int mmgStrip() const
Mmg specific:
bool setTgcGasGap(int num)
Tgc specific: set gas_gap to num.
int cscWireLayer() const
Csc specific:
bool setTechnology(Technology num)
set technology to num in the fixed identifier
bool setStationName(StationName num)
set station name to num in the fixed identifier
bool setMdtTubeLayer(int num)
Mdt specific: set layer to num.
int rpcGasGap() const
Rpc specific:
std::string_view stationNameString() const
bool setRpcGasGap(int num)
Rpc specific: set gas_gap to num.
int rpcDoubletPhi() const
Rpc specific:
bool setRpcMeasuresPhi(int num)
Rpc specific: set measures_phi to num.
int tgcChannel() const
Tgc specific:
bool setMdtTube(int num)
Mdt specific: set tube to num.
bool setStationEta(int num)
set station eta to num in the fixed identifier
int tgcGasGap() const
Tgc specific:
bool setMmgStrip(int num)
Mmg specific: set strip to num.
int stgChannel() const
Stg specific:
int stgGasGap() const
Stg specific:
bool setCscMeasuresPhi(int num)
Csc specific: set measures_phi to num.
bool setStgGasGap(int num)
Stg specific: set gas_gap to num.
int rpcDoubletZ() const
Rpc specific:
bool setMmgMultilayer(int num)
Mmg specific: set multilayer to num.
int cscChamberLayer() const
Csc specific:
bool setStgChannelType(StgChannelType num)
Stg specific: set channel_type to num.
bool setTgcChannel(int num)
Tgc specific: set channel to num.
bool setStgMultilayer(int num)
Stg specific: set multilayer to num.
bool setMmgGasGap(int num)
Mmg specific: set gas_gap to num.
int mdtTubeLayer() const
Mdt specific:
bool setTgcIsStrip(int num)
Tgc specific: set is_strip to num.
StgChannelType stgChannelType() const
Stg specific:
bool setCscWireLayer(int num)
Csc specific: set wire layer to num.
bool setRpcStrip(int num)
Rpc specific: set strip to num.
int mdtTube() const
Mdt specific:
int cscStrip() const
Csc specific:
int rpcDoubletR() const
Rpc specific:
int rpcMeasuresPhi() const
Rpc specific:
int mdtMultilayer() const
Mdt specific:
int mmgMultilayer() const
Mmg specific:
bool setStationPhi(int num)
set station phi to num in the fixed identifier
bool setCscChamberLayer(int num)
Csc specific: set chamber layer to num.
static StationName stationStringToFixedStationNumber(std::string_view station)
int cscMeasuresPhi() const
Csc specific:
bool setStgChannel(int num)
Stg specific: set channel to num.
CscCalcPed - algorithm that finds the Cathode Strip Chamber pedestals from an RDO.