ATLAS Offline Software
Classes | Functions
ChainNameParser Namespace Reference

Classes

class  HLTChainInfo
 Helper class that provides access to information about individual legs. More...
 
struct  LegInfo
 Struct containing information on each leg of a chain. More...
 
class  LegInfoIterator
 Iterate over the legs of a chain. More...
 

Functions

const std::vector< std::string > & allSignatures ()
 A list of all signature names. More...
 
std::string legHeadPattern ()
 
std::vector< int > multiplicities (const std::string &chain)
 
std::vector< std::string > signatures (const std::string &chain)
 

Function Documentation

◆ allSignatures()

const std::vector< std::string > & ChainNameParser::allSignatures ( )

A list of all signature names.

Definition at line 188 of file ChainNameParser.cxx.

189  {
190  const static std::vector<std::string> signatures{
191  "e", "g", "j", "mu", "tau", "xe", "xs", "te", "ht", "noalg", "mb",
192  "l1calocalib", "lar", "zdc", "lumipeb", "alfacalib", "calibAFP", "afp"
193  };
194  return signatures;
195  }

◆ legHeadPattern()

std::string ChainNameParser::legHeadPattern ( )

Definition at line 197 of file ChainNameParser.cxx.

198  {
199  return "(\\d*)("+join(allSignatures(), "|")+")(\\d*)"+"(noL1|c|f|a)?";
200  }

◆ multiplicities()

std::vector< int > ChainNameParser::multiplicities ( const std::string &  chain)

Definition at line 202 of file ChainNameParser.cxx.

203  {
204  std::vector<int> multiplicities;
205  for (auto itr = LegInfoIterator(chain); !itr.exhausted(); ++itr)
206  multiplicities.push_back(itr->multiplicity);
207  return multiplicities;
208  }

◆ signatures()

std::vector< std::string > ChainNameParser::signatures ( const std::string &  chain)

Definition at line 210 of file ChainNameParser.cxx.

211  {
212  std::vector<std::string> signatures;
213  for (auto itr = LegInfoIterator(chain); !itr.exhausted(); ++itr)
214  signatures.push_back(itr->signature);
215  return signatures;
216  }
ChainNameParser::allSignatures
const std::vector< std::string > & allSignatures()
A list of all signature names.
Definition: ChainNameParser.cxx:188
runLayerRecalibration.chain
chain
Definition: runLayerRecalibration.py:175
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
ChainNameParser::multiplicities
std::vector< int > multiplicities(const std::string &chain)
Definition: ChainNameParser.cxx:202
ChainNameParser::signatures
std::vector< std::string > signatures(const std::string &chain)
Definition: ChainNameParser.cxx:210