ATLAS Offline Software
Tool_DecayModeDeterminator.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
9 #include "xAODTau/TauDefs.h"
10 
11 
13  asg::AsgTool(name),
14  m_Tool_InformationStore("PanTau::Tool_InformationStore/Tool_InformationStore"),
15  m_Tool_ModeDiscriminator_1p0n_vs_1p1n("PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator"),
16  m_Tool_ModeDiscriminator_1p1n_vs_1pXn("PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator"),
17  m_Tool_ModeDiscriminator_3p0n_vs_3pXn("PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator")
18 {
19  declareProperty("Tool_InformationStore", m_Tool_InformationStore, "Tool handle to the information store tool");
20  declareProperty("Tool_ModeDiscriminator_1p0n_vs_1p1n", m_Tool_ModeDiscriminator_1p0n_vs_1p1n, "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n");
21  declareProperty("Tool_ModeDiscriminator_1p1n_vs_1pXn", m_Tool_ModeDiscriminator_1p1n_vs_1pXn, "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn");
22  declareProperty("Tool_ModeDiscriminator_3p0n_vs_3pXn", m_Tool_ModeDiscriminator_3p0n_vs_3pXn, "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn");
23 
24  declareProperty("Tool_InformationStoreName", m_Tool_InformationStoreName="", "Tool handle to the information store tool");
25  declareProperty("Tool_ModeDiscriminator_1p0n_vs_1p1nName", m_Tool_ModeDiscriminator_1p0n_vs_1p1nName="", "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n");
26  declareProperty("Tool_ModeDiscriminator_1p1n_vs_1pXnName", m_Tool_ModeDiscriminator_1p1n_vs_1pXnName="", "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn");
27  declareProperty("Tool_ModeDiscriminator_3p0n_vs_3pXnName", m_Tool_ModeDiscriminator_3p0n_vs_3pXnName="", "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn");
28 }
29 
30 
32 
33 
35 
36  m_init=true;
37 
38  ATH_CHECK( HelperFunctions::bindToolHandle(m_Tool_InformationStore, m_Tool_InformationStoreName) );
39  ATH_CHECK( HelperFunctions::bindToolHandle(m_Tool_ModeDiscriminator_1p0n_vs_1p1n, m_Tool_ModeDiscriminator_1p0n_vs_1p1nName) );
40  ATH_CHECK( HelperFunctions::bindToolHandle(m_Tool_ModeDiscriminator_1p1n_vs_1pXn, m_Tool_ModeDiscriminator_1p1n_vs_1pXnName) );
41  ATH_CHECK( HelperFunctions::bindToolHandle(m_Tool_ModeDiscriminator_3p0n_vs_3pXn, m_Tool_ModeDiscriminator_3p0n_vs_3pXnName) );
42 
43  //get the discri tools
44  ATH_CHECK(m_Tool_ModeDiscriminator_1p0n_vs_1p1n.retrieve());
45  ATH_CHECK(m_Tool_ModeDiscriminator_1p1n_vs_1pXn.retrieve());
46  ATH_CHECK(m_Tool_ModeDiscriminator_3p0n_vs_3pXn.retrieve());
47 
48  //get the variable prefix
49  ATH_CHECK( m_Tool_InformationStore->getInfo_String("FeatureExtractor_VarTypeName_varTypeName_Basic", m_varTypeName_Prefix_Basic) );
50 
51  //get the BDT cut values
52  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R10X_CellBased", m_BDTCutValue_R10X_CellBased) );
53  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R11X_CellBased", m_BDTCutValue_R11X_CellBased) );
54  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R110_CellBased", m_BDTCutValue_R110_CellBased) );
55  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R1XX_CellBased", m_BDTCutValue_R1XX_CellBased) );
56  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R30X_CellBased", m_BDTCutValue_R30X_CellBased) );
57  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R3XX_CellBased", m_BDTCutValue_R3XX_CellBased) );
58 
59  return StatusCode::SUCCESS;
60 }
61 
62 
64 
65  std::string inAlgName = inSeed->getNameInputAlgorithm();
66  PanTau::TauFeature* features = inSeed->getFeatures();
67 
68  //check for invalid input seed
70  bool noAnyConstituents = inSeed->isOfTechnicalQuality(PanTau::PanTauSeed::t_NoConstituentsAtAll);
73  bool invalidForDecayMode = (noValidInput || noAnyConstituents || noSelConstituents || badPt);
74 
75  int decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtModeNotSet;
76  xAOD::TauJet* tauJet = inSeed->getTauJet();
77 
78  if(invalidForDecayMode) {
79  ATH_MSG_DEBUG("Seed has no constituents assigned and/or input seed has no substructure info - use NotSet mode for this");
80  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTau", xAOD::TauJetParameters::Mode_NotSet);
81  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTauExtended", PanTau::PanTauSeed::t_ExtModeNotSet);
83  return StatusCode::SUCCESS;
84  }
85 
86  //get the mode as it was determined by the subalgorithm
87  int decayMode_SubAlg = inSeed->getDecayModeBySubAlg();
88  int decayMode_PanTau = xAOD::TauJetParameters::Mode_NotSet;
89 
90  //and calc the number of additional neutrals, not tagged as pi0
93  int AdditionalNeutrals = nNeutrals_SubAlg - nPi0Neut_SubAlg;
94 
95  //based on the subAlg decay mode, pass to corresponding PanTau BDT...
96  double bdtResponse = -5;
97  DecayModeTest bdtTest = t_UnknownTest;
98  // 1p0n mode
99  if(decayMode_SubAlg == xAOD::TauJetParameters::Mode_1p0n) {
100 
101  //1 prong, and no other objects at all -> use 1p0n
102  if(AdditionalNeutrals == 0) {
103  decayMode_PanTau = xAOD::TauJetParameters::Mode_1p0n;
104  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode100;
105  bdtResponse = -3.;
106 
107  //if there are neutrals which are not pi0-tagged, check BDT to maybe set 1p1n
108  }
109  else {
110  bool isOK = false;
111  bdtResponse = m_Tool_ModeDiscriminator_1p0n_vs_1p1n->getResponse(inSeed, isOK);
112  bdtTest = t_1p0n_vs_1p1n;
113  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode10X;
114  if(!isOK) {
115  ATH_MSG_WARNING("WARNING: problems getting bdt response for 1p0n + X-neutrals. use subAlg mode");
116  decayMode_PanTau = decayMode_SubAlg;
117  }
118  else {
119  decayMode_PanTau = (bdtResponse > m_BDTCutValue_R10X_CellBased) ? xAOD::TauJetParameters::Mode_1p0n : xAOD::TauJetParameters::Mode_1p1n;
120  }
121  }
122  }//end 1p0n
123 
124  //1p1n mode
125  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_1p1n) {
126  //1prong, 1pi0 and no other neutrals. check 1p0n-vs-1p1n
127  if(AdditionalNeutrals == 0) {
128  bool isOK = false;
129  bdtResponse = m_Tool_ModeDiscriminator_1p0n_vs_1p1n->getResponse(inSeed, isOK);
130  bdtTest = t_1p0n_vs_1p1n;
131  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode110;
132  if(!isOK) {
133  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + 0-neutrals. use subAlg mode");
134  decayMode_PanTau = decayMode_SubAlg;
135  }
136  else {
137  decayMode_PanTau = (bdtResponse <= m_BDTCutValue_R110_CellBased) ? xAOD::TauJetParameters::Mode_1p1n : xAOD::TauJetParameters::Mode_1p0n;
138  }
139  //1prong, 1pi0 and additional neutrals. check 1p1n vs 1pXn
140  }
141  else {
142  //NOTE: May investigate chain of decisions here: first check 1p0n-1p1n, and then (in case of 1p1n) 1p1n-1pXn
143  bool isOK = false;
144  bdtResponse = m_Tool_ModeDiscriminator_1p1n_vs_1pXn->getResponse(inSeed, isOK);
145  bdtTest = t_1p1n_vs_1pXn;
146  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode11X;
147  if(!isOK) {
148  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + X-neutrals. use subAlg mode");
149  decayMode_PanTau = decayMode_SubAlg;
150  }
151  else {
152  decayMode_PanTau = (bdtResponse > m_BDTCutValue_R11X_CellBased) ? xAOD::TauJetParameters::Mode_1p1n: xAOD::TauJetParameters::Mode_1pXn;
153  }
154  }
155  }//end 1p1n
156 
157  //1pXn mode
158  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_1pXn) {
159  //1prong, Xpi0. check 1p1n-vs-1pXn
160  bool isOK = false;
161  bdtResponse = m_Tool_ModeDiscriminator_1p1n_vs_1pXn->getResponse(inSeed, isOK);
162  bdtTest = t_1p1n_vs_1pXn;
163  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode1XX;
164  if(!isOK) {
165  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + X-neutrals. use subAlg mode");
166  decayMode_PanTau = decayMode_SubAlg;
167  } else {
168  decayMode_PanTau = (bdtResponse > m_BDTCutValue_R1XX_CellBased) ? xAOD::TauJetParameters::Mode_1p1n : xAOD::TauJetParameters::Mode_1pXn;
169  }
170  }//end 1pXn
171 
172  //3p0n mode
173  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_3p0n) {
174  //no additional neutrals.
175  if(AdditionalNeutrals == 0) {
176  decayMode_PanTau = xAOD::TauJetParameters::Mode_3p0n;
177  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode300;
178  bdtResponse = -2.5;
179  //additional neutrals
180  }
181  else {
182  bool isOK = false;
183  bdtResponse = m_Tool_ModeDiscriminator_3p0n_vs_3pXn->getResponse(inSeed, isOK);
184  bdtTest = t_3p0n_vs_3pXn;
185  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode30X;
186  if(!isOK) {
187  ATH_MSG_WARNING("WARNING problems getting bdt response for 3p0n + X-neutrals. use subAlg mode");
188  decayMode_PanTau = decayMode_SubAlg;
189  }
190  else {
191  decayMode_PanTau = (bdtResponse > m_BDTCutValue_R30X_CellBased) ? xAOD::TauJetParameters::Mode_3p0n : xAOD::TauJetParameters::Mode_3pXn;
192  }
193  }
194  }//end 3p0n
195 
196  //3pXn mode
197  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_3pXn) {
198  //3prong, Xpi0. check 3p0n-vs-3pXn
199  bool isOK = false;
200  bdtResponse = m_Tool_ModeDiscriminator_3p0n_vs_3pXn->getResponse(inSeed, isOK);
201  bdtTest = t_3p0n_vs_3pXn;
202  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode3XX;
203  if(!isOK) {
204  ATH_MSG_WARNING("WARNING problems getting bdt response for 3p0n + X-neutrals. use subAlg mode");
205  decayMode_PanTau = decayMode_SubAlg;
206  }
207  else {
208  decayMode_PanTau = (bdtResponse > m_BDTCutValue_R3XX_CellBased) ? xAOD::TauJetParameters::Mode_3p0n: xAOD::TauJetParameters::Mode_3pXn;
209  }
210  } //end 3pXn
211 
212  //it's none of 1p0n, 1p1n, 1pXn, 3p0n, 3pXn -> set other mode
213  else {
214  decayMode_PanTau = xAOD::TauJetParameters::Mode_Other;
215  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtModeOther;
216  bdtResponse = -4;
217  bdtTest = t_UnknownTest;
218  }
219 
220  if(inAlgName != "CellBased") {
221  ATH_MSG_WARNING("Name of input algorithm not known - use mode from sub alg!");
222  decayMode_PanTau = decayMode_SubAlg;
223  bdtResponse = -5;
224  bdtTest = t_UnknownTest;
225  }
226 
227  // this overrides Pantau BDT 1p1n decision in the following case:
228  // if cell based counted 1 charged, 1 pi0neut, and number of hits in EM1 for the pi0neut is 3 or larger, set 1pXn;
229  if(inSeed->getNumberOfConstituentsOfType(PanTau::TauConstituent::t_Charged) == 1 && nPi0Neut_SubAlg == 1) {
230  //check for shots in EM1
231  bool isOK = false;
233  if(isOK) {
234  double nPhotons = 0.;
235  std::vector<PanTau::TauConstituent*> shots = pi0Neut->getShots();
236 
237  for(unsigned int iShot=0; iShot<shots.size(); iShot++) {
238  nPhotons = nPhotons + (double)(shots.at(iShot)->getNPhotonsInShot());
239  }
240 
241  if(nPhotons > 2.) {
242  decayMode_SubAlg = xAOD::TauJetParameters::Mode_1pXn;
243  decayMode_PanTau = xAOD::TauJetParameters::Mode_1pXn;
244  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode11shots;
245  inSeed->setModeHackedByCellBased(true);
246  bdtResponse = -2.;
247  }
248  //end check for pi0 neutrals were found
249  }
250  else {
251  ATH_MSG_WARNING("Could not find expected CellBased neutral -> don't check for photons in cluster");
252  }
253  } //end hack check for 1p1n
254 
255  //update mode of seed and store in features
256  inSeed->setDecayModeByPanTau(decayMode_PanTau);
257  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_RecoMode", (double)decayMode_SubAlg);
258  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTau", (double)decayMode_PanTau);
259  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTauExtended", (double)decayMode_PanTauExtended);
260 
262 
263  if(bdtTest == t_1p0n_vs_1p1n) {
264  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", bdtResponse);
265  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
266  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
267  }
268  if(bdtTest == t_1p1n_vs_1pXn) {
269  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
270  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", bdtResponse);
271  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
272  }
273  if(bdtTest == t_3p0n_vs_3pXn) {
274  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
275  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
276  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", bdtResponse);
277  }
278  if(bdtTest == t_UnknownTest) {
279  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
280  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
281  features->addFeature(inAlgName + "_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
282  }
283 
284  return StatusCode::SUCCESS;
285 }
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXn
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_3p0n_vs_3pXn
Definition: Tool_DecayModeDeterminator.h:54
xAOD::TauJetParameters::Mode_1p0n
@ Mode_1p0n
Definition: TauDefs.h:386
PanTauSeed.h
PanTau::PanTauSeed::setDecayModeByPanTau
void setDecayModeByPanTau(int decayModePanTau)
Definition: PanTauSeed.h:245
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXnName
std::string m_Tool_ModeDiscriminator_1p1n_vs_1pXnName
Definition: Tool_DecayModeDeterminator.h:59
PanTau::TauConstituent::t_Neutral
@ t_Neutral
Definition: TauConstituent.h:45
xAOD::TauJetParameters::Mode_1p1n
@ Mode_1p1n
Definition: TauDefs.h:387
PanTau::PanTauSeed::getFeatures
const PanTau::TauFeature * getFeatures() const
Definition: PanTauSeed.h:230
PanTau::PanTauSeed::getTauJet
const xAOD::TauJet * getTauJet() const
Definition: PanTauSeed.h:228
PanTau::PanTauSeed::getDecayModeBySubAlg
int getDecayModeBySubAlg() const
Definition: PanTauSeed.h:239
PanTau::TauConstituent::t_Charged
@ t_Charged
Definition: TauConstituent.h:44
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
PanTau::PanTauSeed::getNameInputAlgorithm
std::string getNameInputAlgorithm() const
Definition: PanTauSeed.h:227
PanTau::PanTauSeed::getConstituentsOfType
std::vector< PanTau::TauConstituent * > getConstituentsOfType(int tauConstituent_Type, bool &foundit)
Definition: PanTauSeed.cxx:358
xAOD::TauJet_v3::setPanTauDetail
void setPanTauDetail(TauJetParameters::PanTauDetails panTauDetail, int value)
Definition: TauJet_v3.cxx:395
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXn
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_1p1n_vs_1pXn
Definition: Tool_DecayModeDeterminator.h:53
PanTau::PanTauSeed::t_ExtMode300
@ t_ExtMode300
Definition: PanTauSeed.h:49
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1n
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_1p0n_vs_1p1n
Definition: Tool_DecayModeDeterminator.h:52
PanTau::PanTauSeed::t_NoValidInputTau
@ t_NoValidInputTau
Definition: PanTauSeed.h:34
HelperFunctions.h
asg
Definition: DataHandleTestTool.h:28
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXnName
std::string m_Tool_ModeDiscriminator_3p0n_vs_3pXnName
Definition: Tool_DecayModeDeterminator.h:60
PanTau::TauFeature::addFeature
bool addFeature(const std::string &name, const double value)
adds a new feature
Definition: TauFeature.cxx:44
PanTau::TauFeature
Definition: TauFeature.h:19
PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStore
ToolHandle< PanTau::ITool_InformationStore > m_Tool_InformationStore
Definition: Tool_DecayModeDeterminator.h:51
PanTau::PanTauSeed::t_ExtMode1XX
@ t_ExtMode1XX
Definition: PanTauSeed.h:48
xAOD::TauJetParameters::Mode_1pXn
@ Mode_1pXn
Definition: TauDefs.h:388
PanTau::Tool_DecayModeDeterminator::Tool_DecayModeDeterminator
Tool_DecayModeDeterminator(const std::string &name)
Definition: Tool_DecayModeDeterminator.cxx:12
PanTau::PanTauSeed::t_ExtMode11X
@ t_ExtMode11X
Definition: PanTauSeed.h:47
TauDefs.h
PanTau::Tool_DecayModeDeterminator::~Tool_DecayModeDeterminator
virtual ~Tool_DecayModeDeterminator()
PanTau::PanTauSeed::t_ExtMode110
@ t_ExtMode110
Definition: PanTauSeed.h:46
Tool_DecayModeDeterminator.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
PanTau::Tool_DecayModeDeterminator::initialize
virtual StatusCode initialize()
Dummy implementation of the initialisation function.
Definition: Tool_DecayModeDeterminator.cxx:34
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
PanTau::PanTauSeed::t_ExtMode30X
@ t_ExtMode30X
Definition: PanTauSeed.h:50
xAOD::double
double
Definition: CompositeParticle_v1.cxx:159
PanTau::Tool_DecayModeDeterminator::DecayModeTest
DecayModeTest
Definition: Tool_DecayModeDeterminator.h:34
xAOD::TauJetParameters::Mode_3p0n
@ Mode_3p0n
Definition: TauDefs.h:389
PanTau::PanTauSeed::t_ExtMode10X
@ t_ExtMode10X
Definition: PanTauSeed.h:45
xAOD::TauJetParameters::PanTau_DecayModeExtended
@ PanTau_DecayModeExtended
Definition: TauDefs.h:376
PanTau::PanTauSeed::t_ExtMode100
@ t_ExtMode100
Definition: PanTauSeed.h:44
TauClassificationTypes.h
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:228
PanTau::PanTauSeed::t_BadPtValue
@ t_BadPtValue
Definition: PanTauSeed.h:37
PanTau::HelperFunctions::bindToolHandle
static StatusCode bindToolHandle(ToolHandle< T > &, std::string)
Definition: Reconstruction/PanTau/PanTauAlgs/PanTauAlgs/HelperFunctions.h:60
PanTau::PanTauSeed::t_NoConstituentsAtAll
@ t_NoConstituentsAtAll
Definition: PanTauSeed.h:35
PanTau::PanTauSeed::setModeHackedByCellBased
void setModeHackedByCellBased(bool f)
Definition: PanTauSeed.h:158
PanTau::Tool_DecayModeDeterminator::execute
virtual StatusCode execute(PanTau::PanTauSeed *inSeed) const
Definition: Tool_DecayModeDeterminator.cxx:63
PanTau::PanTauSeed::t_ExtModeNotSet
@ t_ExtModeNotSet
Definition: PanTauSeed.h:53
PanTau::TauConstituent::t_Pi0Neut
@ t_Pi0Neut
Definition: TauConstituent.h:46
PanTau::PanTauSeed::t_ExtMode3XX
@ t_ExtMode3XX
Definition: PanTauSeed.h:51
PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStoreName
std::string m_Tool_InformationStoreName
Definition: Tool_DecayModeDeterminator.h:56
PanTau::PanTauSeed::getNumberOfConstituentsOfType
int getNumberOfConstituentsOfType(int tauConstituent_Type)
Definition: PanTauSeed.cxx:369
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
PanTau::PanTauSeed::isOfTechnicalQuality
bool isOfTechnicalQuality(int pantauSeed_TechnicalQuality) const
Definition: PanTauSeed.cxx:349
PanTau::PanTauSeed::t_ExtMode11shots
@ t_ExtMode11shots
Definition: PanTauSeed.h:55
PanTau::PanTauSeed::t_NoSelectedConstituents
@ t_NoSelectedConstituents
Definition: PanTauSeed.h:36
xAOD::TauJetParameters::Mode_3pXn
@ Mode_3pXn
Definition: TauDefs.h:390
PanTau::TauConstituent
Definition: TauConstituent.h:25
xAOD::TauJetParameters::Mode_NotSet
@ Mode_NotSet
Definition: TauDefs.h:392
PanTau::TauConstituent::getShots
std::vector< TauConstituent * > getShots() const
Definition: TauConstituent.cxx:244
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1nName
std::string m_Tool_ModeDiscriminator_1p0n_vs_1p1nName
Definition: Tool_DecayModeDeterminator.h:58
xAOD::TauJetParameters::Mode_Other
@ Mode_Other
Definition: TauDefs.h:391
PanTau::PanTauSeed
Definition: PanTauSeed.h:24
PanTau::PanTauSeed::t_ExtModeOther
@ t_ExtModeOther
Definition: PanTauSeed.h:52