ATLAS Offline Software
Public Member Functions | Public Attributes | List of all members
ChainNameParser::LegInfo Struct Reference

Struct containing information on each leg of a chain. More...

#include <ChainNameParser.h>

Collaboration diagram for ChainNameParser::LegInfo:

Public Member Functions

std::string legName () const
 The name of the leg. More...
 
xAODType::ObjectType type () const
 The type of xAOD IParticle produced by this signature if relevant. More...
 

Public Attributes

std::size_t multiplicity {}
 The multiplicity of the leg (number of objects returned by the leg) More...
 
std::string signature {""}
 The HLT signature responsible for creating the object. More...
 
int threshold
 The threshold on the object. More...
 
std::vector< std::string > legParts
 All the parts of the leg. More...
 

Detailed Description

Struct containing information on each leg of a chain.

Definition at line 15 of file ChainNameParser.h.

Member Function Documentation

◆ legName()

std::string ChainNameParser::LegInfo::legName ( ) const

The name of the leg.

Definition at line 37 of file ChainNameParser.cxx.

38  {
39  std::string result;
40  if (multiplicity != 1)
42  result += signature;
43  if (threshold != -1)
45  if (legParts.size())
46  result += "_" + join(legParts, "_");
47  return result;
48  }

◆ type()

xAODType::ObjectType ChainNameParser::LegInfo::type ( ) const

The type of xAOD IParticle produced by this signature if relevant.

Definition at line 50 of file ChainNameParser.cxx.

51  {
52  if (signature == "e")
53  {
54  if (std::find(legParts.begin(), legParts.end(), "etcut") != legParts.end())
55  return xAODType::CaloCluster;
56  else
57  return xAODType::Electron;
58  }
59  else if (signature == "g")
60  {
61  if (std::find(legParts.begin(), legParts.end(), "etcut") != legParts.end())
62  return xAODType::CaloCluster;
63  else
64  return xAODType::Photon;
65  }
66  else if (signature == "j")
67  return xAODType::Jet;
68  else if (signature == "mu")
69  return xAODType::Muon;
70  else if (signature == "tau")
71  return xAODType::Tau;
72  else
73  return xAODType::Other;
74  }

Member Data Documentation

◆ legParts

std::vector<std::string> ChainNameParser::LegInfo::legParts

All the parts of the leg.

Definition at line 28 of file ChainNameParser.h.

◆ multiplicity

std::size_t ChainNameParser::LegInfo::multiplicity {}

The multiplicity of the leg (number of objects returned by the leg)

Definition at line 22 of file ChainNameParser.h.

◆ signature

std::string ChainNameParser::LegInfo::signature {""}

The HLT signature responsible for creating the object.

Definition at line 24 of file ChainNameParser.h.

◆ threshold

int ChainNameParser::LegInfo::threshold

The threshold on the object.

Definition at line 26 of file ChainNameParser.h.


The documentation for this struct was generated from the following files:
get_generator_info.result
result
Definition: get_generator_info.py:21
find
std::string find(const std::string &s)
return a remapped string
Definition: hcg.cxx:135
xAODType::Photon
@ Photon
The object is a photon.
Definition: ObjectType.h:47
ChainNameParser::LegInfo::signature
std::string signature
The HLT signature responsible for creating the object.
Definition: ChainNameParser.h:24
xAODType::Jet
@ Jet
The object is a jet.
Definition: ObjectType.h:40
xAODType::Other
@ Other
An object not falling into any of the other categories.
Definition: ObjectType.h:34
TCS::join
std::string join(const std::vector< std::string > &v, const char c=',')
Definition: Trigger/TrigT1/L1Topo/L1TopoCommon/Root/StringUtils.cxx:10
ActsTrk::to_string
std::string to_string(const DetectorType &type)
Definition: GeometryDefs.h:34
xAODType::Muon
@ Muon
The object is a muon.
Definition: ObjectType.h:48
threshold
Definition: chainparser.cxx:74
ChainNameParser::LegInfo::legParts
std::vector< std::string > legParts
All the parts of the leg.
Definition: ChainNameParser.h:28
xAODType::Electron
@ Electron
The object is an electron.
Definition: ObjectType.h:46
xAODType::CaloCluster
@ CaloCluster
The object is a calorimeter cluster.
Definition: ObjectType.h:39
xAODType::Tau
@ Tau
The object is a tau (jet)
Definition: ObjectType.h:49
ChainNameParser::LegInfo::multiplicity
std::size_t multiplicity
The multiplicity of the leg (number of objects returned by the leg)
Definition: ChainNameParser.h:22