ATLAS Offline Software
Public Types | Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
PanTau::Tool_DecayModeDeterminator Class Reference

#include <Tool_DecayModeDeterminator.h>

Inheritance diagram for PanTau::Tool_DecayModeDeterminator:
Collaboration diagram for PanTau::Tool_DecayModeDeterminator:

Public Types

enum  DecayModeTest {
  t_1p0n_vs_1p1n, t_1p1n_vs_1pXn, t_3p0n_vs_3pXn, t_UnknownTest,
  t_nTests
}
 

Public Member Functions

 Tool_DecayModeDeterminator (const std::string &name)
 
virtual ~Tool_DecayModeDeterminator ()
 
virtual StatusCode initialize ()
 Dummy implementation of the initialisation function. More...
 
virtual StatusCode execute (PanTau::PanTauSeed *inSeed) const
 
bool isInitialized ()
 
virtual void print () const
 Print the state of the tool. More...
 
ServiceHandle< StoreGateSvc > & evtStore ()
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & evtStore () const
 The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc. More...
 
const ServiceHandle< StoreGateSvc > & detStore () const
 The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc. More...
 
virtual StatusCode sysInitialize () override
 Perform system initialization for an algorithm. More...
 
virtual StatusCode sysStart () override
 Handle START transition. More...
 
virtual std::vector< Gaudi::DataHandle * > inputHandles () const override
 Return this algorithm's input handles. More...
 
virtual std::vector< Gaudi::DataHandle * > outputHandles () const override
 Return this algorithm's output handles. More...
 
Gaudi::Details::PropertyBase & declareProperty (Gaudi::Property< T, V, H > &t)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &)
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &)
 Declare a new Gaudi property. More...
 
Gaudi::Details::PropertyBase * declareProperty (const std::string &name, T &property, const std::string &doc="none")
 Declare a new Gaudi property. More...
 
void updateVHKA (Gaudi::Details::PropertyBase &)
 
MsgStream & msg () const
 
MsgStream & msg (const MSG::Level lvl) const
 
bool msgLvl (const MSG::Level lvl) const
 

Protected Member Functions

void renounceArray (SG::VarHandleKeyArray &handlesArray)
 remove all handles from I/O resolution More...
 
std::enable_if_t< std::is_void_v< std::result_of_t< decltype(&T::renounce)(T)> > &&!std::is_base_of_v< SG::VarHandleKeyArray, T > &&std::is_base_of_v< Gaudi::DataHandle, T >, void > renounce (T &h)
 
void extraDeps_update_handler (Gaudi::Details::PropertyBase &ExtraDeps)
 Add StoreName to extra input/output deps as needed. More...
 

Private Types

typedef ServiceHandle< StoreGateSvcStoreGateSvc_t
 

Private Member Functions

Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T, V, H > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

ToolHandle< PanTau::ITool_InformationStorem_Tool_InformationStore {this, "Tool_InformationStore", "PanTau::Tool_InformationStore/Tool_InformationStore", "Tool handle to the information store tool"}
 
ToolHandle< PanTau::ITool_ModeDiscriminatorm_Tool_ModeDiscriminator_1p0n_vs_1p1n {this, "Tool_ModeDiscriminator_1p0n_vs_1p1n", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n"}
 
ToolHandle< PanTau::ITool_ModeDiscriminatorm_Tool_ModeDiscriminator_1p1n_vs_1pXn {this, "Tool_ModeDiscriminator_1p1n_vs_1pXn", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn"}
 
ToolHandle< PanTau::ITool_ModeDiscriminatorm_Tool_ModeDiscriminator_3p0n_vs_3pXn {this, "Tool_ModeDiscriminator_3p0n_vs_3pXn", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn"}
 
Gaudi::Property< std::string > m_Tool_InformationStoreName {this, "Tool_InformationStoreName", "", "Tool handle to the information store tool"}
 
Gaudi::Property< std::string > m_Tool_ModeDiscriminator_1p0n_vs_1p1nName {this, "Tool_ModeDiscriminator_1p0n_vs_1p1nName", "", "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n"}
 
Gaudi::Property< std::string > m_Tool_ModeDiscriminator_1p1n_vs_1pXnName {this, "Tool_ModeDiscriminator_1p1n_vs_1pXnName", "", "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn"}
 
Gaudi::Property< std::string > m_Tool_ModeDiscriminator_3p0n_vs_3pXnName {this, "Tool_ModeDiscriminator_3p0n_vs_3pXnName", "", "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn"}
 
std::string m_varTypeName_Prefix_Basic
 
double m_BDTCutValue_R10X_CellBased = 0.0
 
double m_BDTCutValue_R11X_CellBased = 0.0
 
double m_BDTCutValue_R110_CellBased = 0.0
 
double m_BDTCutValue_R1XX_CellBased = 0.0
 
double m_BDTCutValue_R30X_CellBased = 0.0
 
double m_BDTCutValue_R3XX_CellBased = 0.0
 
bool m_init =false
 
StoreGateSvc_t m_evtStore
 Pointer to StoreGate (event store by default) More...
 
StoreGateSvc_t m_detStore
 Pointer to StoreGate (detector store by default) More...
 
std::vector< SG::VarHandleKeyArray * > m_vhka
 
bool m_varHandleArraysDeclared
 

Detailed Description

Tool to store information needed in PanTau Algorithms

Author
Christian Limbach (limba.nosp@m.ch@p.nosp@m.hysik.nosp@m..uni.nosp@m.-bonn.nosp@m..de)

Definition at line 29 of file Tool_DecayModeDeterminator.h.

Member Typedef Documentation

◆ StoreGateSvc_t

typedef ServiceHandle<StoreGateSvc> AthCommonDataStore< AthCommonMsg< AlgTool > >::StoreGateSvc_t
privateinherited

Definition at line 388 of file AthCommonDataStore.h.

Member Enumeration Documentation

◆ DecayModeTest

Enumerator
t_1p0n_vs_1p1n 
t_1p1n_vs_1pXn 
t_3p0n_vs_3pXn 
t_UnknownTest 
t_nTests 

Definition at line 35 of file Tool_DecayModeDeterminator.h.

35  {
40  t_nTests
41  };

Constructor & Destructor Documentation

◆ Tool_DecayModeDeterminator()

PanTau::Tool_DecayModeDeterminator::Tool_DecayModeDeterminator ( const std::string &  name)

Definition at line 12 of file Tool_DecayModeDeterminator.cxx.

12  :
14 {
15 }

◆ ~Tool_DecayModeDeterminator()

PanTau::Tool_DecayModeDeterminator::~Tool_DecayModeDeterminator ( )
virtualdefault

Member Function Documentation

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleKeyArrayType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKeyArray>

Definition at line 170 of file AthCommonDataStore.h.

172  {
173  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
174  hndl.value(),
175  hndl.documentation());
176 
177  }

◆ declareGaudiProperty() [2/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleKeyType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleKey>

Definition at line 156 of file AthCommonDataStore.h.

158  {
159  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
160  hndl.value(),
161  hndl.documentation());
162 
163  }

◆ declareGaudiProperty() [3/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  hndl,
const SG::VarHandleType  
)
inlineprivateinherited

specialization for handling Gaudi::Property<SG::VarHandleBase>

Definition at line 184 of file AthCommonDataStore.h.

186  {
187  return *AthCommonDataStore<PBASE>::declareProperty(hndl.name(),
188  hndl.value(),
189  hndl.documentation());
190  }

◆ declareGaudiProperty() [4/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T, V, H > &  t,
const SG::NotHandleType  
)
inlineprivateinherited

specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray>

Definition at line 199 of file AthCommonDataStore.h.

200  {
201  return PBASE::declareProperty(t);
202  }

◆ declareProperty() [1/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleBase hndl,
const std::string &  doc,
const SG::VarHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleBase. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 245 of file AthCommonDataStore.h.

249  {
250  this->declare(hndl.vhKey());
251  hndl.vhKey().setOwner(this);
252 
253  return PBASE::declareProperty(name,hndl,doc);
254  }

◆ declareProperty() [2/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKey hndl,
const std::string &  doc,
const SG::VarHandleKeyType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
hndlObject holding the property value.
docDocumentation string for the property.

This is the version for types that derive from SG::VarHandleKey. The property value object is put on the input and output lists as appropriate; then we forward to the base class.

Definition at line 221 of file AthCommonDataStore.h.

225  {
226  this->declare(hndl);
227  hndl.setOwner(this);
228 
229  return PBASE::declareProperty(name,hndl,doc);
230  }

◆ declareProperty() [3/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
SG::VarHandleKeyArray hndArr,
const std::string &  doc,
const SG::VarHandleKeyArrayType  
)
inlineinherited

Definition at line 259 of file AthCommonDataStore.h.

263  {
264 
265  // std::ostringstream ost;
266  // ost << Algorithm::name() << " VHKA declareProp: " << name
267  // << " size: " << hndArr.keys().size()
268  // << " mode: " << hndArr.mode()
269  // << " vhka size: " << m_vhka.size()
270  // << "\n";
271  // debug() << ost.str() << endmsg;
272 
273  hndArr.setOwner(this);
274  m_vhka.push_back(&hndArr);
275 
276  Gaudi::Details::PropertyBase* p = PBASE::declareProperty(name, hndArr, doc);
277  if (p != 0) {
278  p->declareUpdateHandler(&AthCommonDataStore<PBASE>::updateVHKA, this);
279  } else {
280  ATH_MSG_ERROR("unable to call declareProperty on VarHandleKeyArray "
281  << name);
282  }
283 
284  return p;
285 
286  }

◆ declareProperty() [4/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc,
const SG::NotHandleType  
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This is the generic version, for types that do not derive from SG::VarHandleKey. It just forwards to the base class version of declareProperty.

Definition at line 333 of file AthCommonDataStore.h.

337  {
338  return PBASE::declareProperty(name, property, doc);
339  }

◆ declareProperty() [5/6]

Gaudi::Details::PropertyBase* AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( const std::string &  name,
T &  property,
const std::string &  doc = "none" 
)
inlineinherited

Declare a new Gaudi property.

Parameters
nameName of the property.
propertyObject holding the property value.
docDocumentation string for the property.

This dispatches to either the generic declareProperty or the one for VarHandle/Key/KeyArray.

Definition at line 352 of file AthCommonDataStore.h.

355  {
356  typedef typename SG::HandleClassifier<T>::type htype;
357  return declareProperty (name, property, doc, htype());
358  }

◆ declareProperty() [6/6]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty ( Gaudi::Property< T, V, H > &  t)
inlineinherited

Definition at line 145 of file AthCommonDataStore.h.

145  {
146  typedef typename SG::HandleClassifier<T>::type htype;
148  }

◆ detStore()

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::detStore ( ) const
inlineinherited

The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 95 of file AthCommonDataStore.h.

95 { return m_detStore; }

◆ evtStore() [1/2]

ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( )
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 85 of file AthCommonDataStore.h.

85 { return m_evtStore; }

◆ evtStore() [2/2]

const ServiceHandle<StoreGateSvc>& AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore ( ) const
inlineinherited

The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.

Definition at line 90 of file AthCommonDataStore.h.

90 { return m_evtStore; }

◆ execute()

StatusCode PanTau::Tool_DecayModeDeterminator::execute ( PanTau::PanTauSeed inSeed) const
virtual

Implements PanTau::ITool_PanTauTools.

Definition at line 50 of file Tool_DecayModeDeterminator.cxx.

50  {
51 
52  PanTau::TauFeature* features = inSeed->getFeatures();
53 
54  //check for invalid input seed
56  bool noAnyConstituents = inSeed->isOfTechnicalQuality(PanTau::PanTauSeed::t_NoConstituentsAtAll);
59  bool invalidForDecayMode = (noValidInput || noAnyConstituents || noSelConstituents || badPt);
60 
61  int decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtModeNotSet;
62  xAOD::TauJet* tauJet = inSeed->getTauJet();
63 
64  if(invalidForDecayMode) {
65  ATH_MSG_DEBUG("Seed has no constituents assigned and/or input seed has no substructure info - use NotSet mode for this");
66  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTau", xAOD::TauJetParameters::Mode_NotSet);
67  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTauExtended", PanTau::PanTauSeed::t_ExtModeNotSet);
69  return StatusCode::SUCCESS;
70  }
71 
72  //get the mode as it was determined by the subalgorithm
73  int decayMode_SubAlg = inSeed->getDecayModeBySubAlg();
74  int decayMode_PanTau = xAOD::TauJetParameters::Mode_NotSet;
75 
76  //and calc the number of additional neutrals, not tagged as pi0
79  int AdditionalNeutrals = nNeutrals_SubAlg - nPi0Neut_SubAlg;
80 
81  //based on the subAlg decay mode, pass to corresponding PanTau BDT...
82  double bdtResponse = -5;
83  DecayModeTest bdtTest = t_UnknownTest;
84  // 1p0n mode
85  if(decayMode_SubAlg == xAOD::TauJetParameters::Mode_1p0n) {
86 
87  //1 prong, and no other objects at all -> use 1p0n
88  if(AdditionalNeutrals == 0) {
89  decayMode_PanTau = xAOD::TauJetParameters::Mode_1p0n;
90  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode100;
91  bdtResponse = -3.;
92 
93  //if there are neutrals which are not pi0-tagged, check BDT to maybe set 1p1n
94  }
95  else {
96  bool isOK = false;
97  bdtResponse = m_Tool_ModeDiscriminator_1p0n_vs_1p1n->getResponse(inSeed, isOK);
98  bdtTest = t_1p0n_vs_1p1n;
99  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode10X;
100  if(!isOK) {
101  ATH_MSG_WARNING("WARNING: problems getting bdt response for 1p0n + X-neutrals. use subAlg mode");
102  decayMode_PanTau = decayMode_SubAlg;
103  }
104  else {
106  }
107  }
108  }//end 1p0n
109 
110  //1p1n mode
111  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_1p1n) {
112  //1prong, 1pi0 and no other neutrals. check 1p0n-vs-1p1n
113  if(AdditionalNeutrals == 0) {
114  bool isOK = false;
115  bdtResponse = m_Tool_ModeDiscriminator_1p0n_vs_1p1n->getResponse(inSeed, isOK);
116  bdtTest = t_1p0n_vs_1p1n;
117  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode110;
118  if(!isOK) {
119  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + 0-neutrals. use subAlg mode");
120  decayMode_PanTau = decayMode_SubAlg;
121  }
122  else {
124  }
125  //1prong, 1pi0 and additional neutrals. check 1p1n vs 1pXn
126  }
127  else {
128  //NOTE: May investigate chain of decisions here: first check 1p0n-1p1n, and then (in case of 1p1n) 1p1n-1pXn
129  bool isOK = false;
130  bdtResponse = m_Tool_ModeDiscriminator_1p1n_vs_1pXn->getResponse(inSeed, isOK);
131  bdtTest = t_1p1n_vs_1pXn;
132  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode11X;
133  if(!isOK) {
134  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + X-neutrals. use subAlg mode");
135  decayMode_PanTau = decayMode_SubAlg;
136  }
137  else {
139  }
140  }
141  }//end 1p1n
142 
143  //1pXn mode
144  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_1pXn) {
145  //1prong, Xpi0. check 1p1n-vs-1pXn
146  bool isOK = false;
147  bdtResponse = m_Tool_ModeDiscriminator_1p1n_vs_1pXn->getResponse(inSeed, isOK);
148  bdtTest = t_1p1n_vs_1pXn;
149  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode1XX;
150  if(!isOK) {
151  ATH_MSG_WARNING("WARNING problems getting bdt response for 1p1n + X-neutrals. use subAlg mode");
152  decayMode_PanTau = decayMode_SubAlg;
153  } else {
155  }
156  }//end 1pXn
157 
158  //3p0n mode
159  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_3p0n) {
160  //no additional neutrals.
161  if(AdditionalNeutrals == 0) {
162  decayMode_PanTau = xAOD::TauJetParameters::Mode_3p0n;
163  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode300;
164  bdtResponse = -2.5;
165  //additional neutrals
166  }
167  else {
168  bool isOK = false;
169  bdtResponse = m_Tool_ModeDiscriminator_3p0n_vs_3pXn->getResponse(inSeed, isOK);
170  bdtTest = t_3p0n_vs_3pXn;
171  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode30X;
172  if(!isOK) {
173  ATH_MSG_WARNING("WARNING problems getting bdt response for 3p0n + X-neutrals. use subAlg mode");
174  decayMode_PanTau = decayMode_SubAlg;
175  }
176  else {
178  }
179  }
180  }//end 3p0n
181 
182  //3pXn mode
183  else if (decayMode_SubAlg == xAOD::TauJetParameters::Mode_3pXn) {
184  //3prong, Xpi0. check 3p0n-vs-3pXn
185  bool isOK = false;
186  bdtResponse = m_Tool_ModeDiscriminator_3p0n_vs_3pXn->getResponse(inSeed, isOK);
187  bdtTest = t_3p0n_vs_3pXn;
188  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode3XX;
189  if(!isOK) {
190  ATH_MSG_WARNING("WARNING problems getting bdt response for 3p0n + X-neutrals. use subAlg mode");
191  decayMode_PanTau = decayMode_SubAlg;
192  }
193  else {
195  }
196  } //end 3pXn
197 
198  //it's none of 1p0n, 1p1n, 1pXn, 3p0n, 3pXn -> set other mode
199  else {
200  decayMode_PanTau = xAOD::TauJetParameters::Mode_Other;
201  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtModeOther;
202  bdtResponse = -4;
203  bdtTest = t_UnknownTest;
204  }
205 
206  // this overrides Pantau BDT 1p1n decision in the following case:
207  // if cell based counted 1 charged, 1 pi0neut, and number of hits in EM1 for the pi0neut is 3 or larger, set 1pXn;
208  if(inSeed->getNumberOfConstituentsOfType(PanTau::TauConstituent::t_Charged) == 1 && nPi0Neut_SubAlg == 1) {
209  //check for shots in EM1
210  bool isOK = false;
212  if(isOK) {
213  double nPhotons = 0.;
214  std::vector<PanTau::TauConstituent*> shots = pi0Neut->getShots();
215 
216  for(unsigned int iShot=0; iShot<shots.size(); iShot++) {
217  nPhotons = nPhotons + static_cast<double>(shots.at(iShot)->getNPhotonsInShot());
218  }
219 
220  if(nPhotons > 2.) {
221  decayMode_SubAlg = xAOD::TauJetParameters::Mode_1pXn;
222  decayMode_PanTau = xAOD::TauJetParameters::Mode_1pXn;
223  decayMode_PanTauExtended = PanTau::PanTauSeed::t_ExtMode11shots;
224  inSeed->setModeHackedByCellBased(true);
225  bdtResponse = -2.;
226  }
227  //end check for pi0 neutrals were found
228  }
229  else {
230  ATH_MSG_WARNING("Could not find expected CellBased neutral -> don't check for photons in cluster");
231  }
232  } //end hack check for 1p1n
233 
234  //update mode of seed and store in features
235  inSeed->setDecayModeByPanTau(decayMode_PanTau);
236  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_RecoMode", static_cast<double>(decayMode_SubAlg));
237  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTau", static_cast<double>(decayMode_PanTau));
238  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_RecoMode_PanTauExtended", static_cast<double>(decayMode_PanTauExtended));
239 
241 
242  if(bdtTest == t_1p0n_vs_1p1n) {
243  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", bdtResponse);
244  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
245  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
246  }
247  if(bdtTest == t_1p1n_vs_1pXn) {
248  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
249  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", bdtResponse);
250  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
251  }
252  if(bdtTest == t_3p0n_vs_3pXn) {
253  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
254  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
255  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", bdtResponse);
256  }
257  if(bdtTest == t_UnknownTest) {
258  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p0n_vs_1p1n", -5.);
259  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_1p1n_vs_1pXn", -5.);
260  features->addFeature("CellBased_" + m_varTypeName_Prefix_Basic + "_BDTValue_3p0n_vs_3pXn", -5.);
261  }
262 
263  return StatusCode::SUCCESS;
264 }

◆ extraDeps_update_handler()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::extraDeps_update_handler ( Gaudi::Details::PropertyBase &  ExtraDeps)
protectedinherited

Add StoreName to extra input/output deps as needed.

use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given

◆ getKey()

SG::sgkey_t asg::AsgTool::getKey ( const void *  ptr) const
inherited

Get the (hashed) key of an object that is in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the SG::sgkey_t key for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getName
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The hashed key of the object in the store. If not found, an invalid (zero) key.

Definition at line 119 of file AsgTool.cxx.

119  {
120 
121 #ifdef XAOD_STANDALONE
122  // In case we use @c xAOD::TEvent, we have a direct function call
123  // for this.
124  return evtStore()->event()->getKey( ptr );
125 #else
126  const SG::DataProxy* proxy = evtStore()->proxy( ptr );
127  return ( proxy == nullptr ? 0 : proxy->sgkey() );
128 #endif // XAOD_STANDALONE
129  }

◆ getName()

const std::string & asg::AsgTool::getName ( const void *  ptr) const
inherited

Get the name of an object that is / should be in the event store.

This is a bit of a special one. StoreGateSvc and xAOD::TEvent both provide ways for getting the std::string name for an object that is in the store, based on a bare pointer. But they provide different interfaces for doing so.

In order to allow tools to efficiently perform this operation, they can use this helper function.

See also
asg::AsgTool::getKey
Parameters
ptrThe bare pointer to the object that the event store should know about
Returns
The string name of the object in the store. If not found, an empty string.

Definition at line 106 of file AsgTool.cxx.

106  {
107 
108 #ifdef XAOD_STANDALONE
109  // In case we use @c xAOD::TEvent, we have a direct function call
110  // for this.
111  return evtStore()->event()->getName( ptr );
112 #else
113  const SG::DataProxy* proxy = evtStore()->proxy( ptr );
114  static const std::string dummy = "";
115  return ( proxy == nullptr ? dummy : proxy->name() );
116 #endif // XAOD_STANDALONE
117  }

◆ getProperty()

template<class T >
const T* asg::AsgTool::getProperty ( const std::string &  name) const
inherited

Get one of the tool's properties.

◆ initialize()

StatusCode PanTau::Tool_DecayModeDeterminator::initialize ( )
virtual

Dummy implementation of the initialisation function.

It's here to allow the dual-use tools to skip defining an initialisation function. Since many are doing so...

Reimplemented from asg::AsgTool.

Definition at line 21 of file Tool_DecayModeDeterminator.cxx.

21  {
22 
23  m_init=true;
24 
29 
30  //get the discri tools
34 
35  //get the variable prefix
36  ATH_CHECK( m_Tool_InformationStore->getInfo_String("FeatureExtractor_VarTypeName_varTypeName_Basic", m_varTypeName_Prefix_Basic) );
37 
38  //get the BDT cut values
39  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R10X_CellBased", m_BDTCutValue_R10X_CellBased) );
40  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R11X_CellBased", m_BDTCutValue_R11X_CellBased) );
41  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R110_CellBased", m_BDTCutValue_R110_CellBased) );
42  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R1XX_CellBased", m_BDTCutValue_R1XX_CellBased) );
43  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R30X_CellBased", m_BDTCutValue_R30X_CellBased) );
44  ATH_CHECK( m_Tool_InformationStore->getInfo_Double("DecayModeDeterminator_BDTCutValue_R3XX_CellBased", m_BDTCutValue_R3XX_CellBased) );
45 
46  return StatusCode::SUCCESS;
47 }

◆ inputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::inputHandles ( ) const
overridevirtualinherited

Return this algorithm's input handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ isInitialized()

bool PanTau::Tool_DecayModeDeterminator::isInitialized ( )
inlinevirtual

Implements PanTau::ITool_PanTauTools.

Definition at line 77 of file Tool_DecayModeDeterminator.h.

77 {return m_init;}

◆ msg() [1/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( ) const
inlineinherited

Definition at line 24 of file AthCommonMsg.h.

24  {
25  return this->msgStream();
26  }

◆ msg() [2/2]

MsgStream& AthCommonMsg< AlgTool >::msg ( const MSG::Level  lvl) const
inlineinherited

Definition at line 27 of file AthCommonMsg.h.

27  {
28  return this->msgStream(lvl);
29  }

◆ msg_level_name()

const std::string & asg::AsgTool::msg_level_name ( ) const
inherited

A deprecated function for getting the message level's name.

Instead of using this, weirdly named function, user code should get the string name of the current minimum message level (in case they really need it...), with:

MSG::name( msg().level() )

This function's name doesn't follow the ATLAS coding rules, and as such will be removed in the not too distant future.

Returns
The string name of the current minimum message level that's printed

Definition at line 101 of file AsgTool.cxx.

101  {
102 
103  return MSG::name( msg().level() );
104  }

◆ msgLvl()

bool AthCommonMsg< AlgTool >::msgLvl ( const MSG::Level  lvl) const
inlineinherited

Definition at line 30 of file AthCommonMsg.h.

30  {
31  return this->msgLevel(lvl);
32  }

◆ outputHandles()

virtual std::vector<Gaudi::DataHandle*> AthCommonDataStore< AthCommonMsg< AlgTool > >::outputHandles ( ) const
overridevirtualinherited

Return this algorithm's output handles.

We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.

◆ print()

void asg::AsgTool::print ( ) const
virtualinherited

◆ renounce()

std::enable_if_t<std::is_void_v<std::result_of_t<decltype(&T::renounce)(T)> > && !std::is_base_of_v<SG::VarHandleKeyArray, T> && std::is_base_of_v<Gaudi::DataHandle, T>, void> AthCommonDataStore< AthCommonMsg< AlgTool > >::renounce ( T &  h)
inlineprotectedinherited

Definition at line 380 of file AthCommonDataStore.h.

381  {
382  h.renounce();
383  PBASE::renounce (h);
384  }

◆ renounceArray()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::renounceArray ( SG::VarHandleKeyArray handlesArray)
inlineprotectedinherited

remove all handles from I/O resolution

Definition at line 364 of file AthCommonDataStore.h.

364  {
365  handlesArray.renounce();
366  }

◆ sysInitialize()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysInitialize ( )
overridevirtualinherited

Perform system initialization for an algorithm.

We override this to declare all the elements of handle key arrays at the end of initialization. See comments on updateVHKA.

Reimplemented in DerivationFramework::CfAthAlgTool, AthCheckedComponent< AthAlgTool >, AthCheckedComponent<::AthAlgTool >, and asg::AsgMetadataTool.

◆ sysStart()

virtual StatusCode AthCommonDataStore< AthCommonMsg< AlgTool > >::sysStart ( )
overridevirtualinherited

Handle START transition.

We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.

◆ updateVHKA()

void AthCommonDataStore< AthCommonMsg< AlgTool > >::updateVHKA ( Gaudi::Details::PropertyBase &  )
inlineinherited

Definition at line 308 of file AthCommonDataStore.h.

308  {
309  // debug() << "updateVHKA for property " << p.name() << " " << p.toString()
310  // << " size: " << m_vhka.size() << endmsg;
311  for (auto &a : m_vhka) {
312  std::vector<SG::VarHandleKey*> keys = a->keys();
313  for (auto k : keys) {
314  k->setOwner(this);
315  }
316  }
317  }

Member Data Documentation

◆ m_BDTCutValue_R10X_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R10X_CellBased = 0.0
private

Definition at line 68 of file Tool_DecayModeDeterminator.h.

◆ m_BDTCutValue_R110_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R110_CellBased = 0.0
private

Definition at line 70 of file Tool_DecayModeDeterminator.h.

◆ m_BDTCutValue_R11X_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R11X_CellBased = 0.0
private

Definition at line 69 of file Tool_DecayModeDeterminator.h.

◆ m_BDTCutValue_R1XX_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R1XX_CellBased = 0.0
private

Definition at line 71 of file Tool_DecayModeDeterminator.h.

◆ m_BDTCutValue_R30X_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R30X_CellBased = 0.0
private

Definition at line 72 of file Tool_DecayModeDeterminator.h.

◆ m_BDTCutValue_R3XX_CellBased

double PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R3XX_CellBased = 0.0
private

Definition at line 73 of file Tool_DecayModeDeterminator.h.

◆ m_detStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
privateinherited

Pointer to StoreGate (detector store by default)

Definition at line 393 of file AthCommonDataStore.h.

◆ m_evtStore

StoreGateSvc_t AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
privateinherited

Pointer to StoreGate (event store by default)

Definition at line 390 of file AthCommonDataStore.h.

◆ m_init

bool PanTau::Tool_DecayModeDeterminator::m_init =false
private

Definition at line 75 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_InformationStore

ToolHandle<PanTau::ITool_InformationStore> PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStore {this, "Tool_InformationStore", "PanTau::Tool_InformationStore/Tool_InformationStore", "Tool handle to the information store tool"}
private

Definition at line 52 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_InformationStoreName

Gaudi::Property<std::string> PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStoreName {this, "Tool_InformationStoreName", "", "Tool handle to the information store tool"}
private

Definition at line 57 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_1p0n_vs_1p1n

ToolHandle<PanTau::ITool_ModeDiscriminator> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1n {this, "Tool_ModeDiscriminator_1p0n_vs_1p1n", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n"}
private

Definition at line 53 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_1p0n_vs_1p1nName

Gaudi::Property<std::string> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1nName {this, "Tool_ModeDiscriminator_1p0n_vs_1p1nName", "", "Handle to the ModeDiscriminator tool for 1p0n_vs_1p1n"}
private

Definition at line 58 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_1p1n_vs_1pXn

ToolHandle<PanTau::ITool_ModeDiscriminator> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXn {this, "Tool_ModeDiscriminator_1p1n_vs_1pXn", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn"}
private

Definition at line 54 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_1p1n_vs_1pXnName

Gaudi::Property<std::string> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXnName {this, "Tool_ModeDiscriminator_1p1n_vs_1pXnName", "", "Handle to the ModeDiscriminator tool for 1p1n_vs_1pXn"}
private

Definition at line 59 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_3p0n_vs_3pXn

ToolHandle<PanTau::ITool_ModeDiscriminator> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXn {this, "Tool_ModeDiscriminator_3p0n_vs_3pXn", "PanTau::Tool_ModeDiscriminator/Tool_ModeDiscriminator", "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn"}
private

Definition at line 55 of file Tool_DecayModeDeterminator.h.

◆ m_Tool_ModeDiscriminator_3p0n_vs_3pXnName

Gaudi::Property<std::string> PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXnName {this, "Tool_ModeDiscriminator_3p0n_vs_3pXnName", "", "Handle to the ModeDiscriminator tool for 3p0n_vs_3pXn"}
private

Definition at line 60 of file Tool_DecayModeDeterminator.h.

◆ m_varHandleArraysDeclared

bool AthCommonDataStore< AthCommonMsg< AlgTool > >::m_varHandleArraysDeclared
privateinherited

Definition at line 399 of file AthCommonDataStore.h.

◆ m_varTypeName_Prefix_Basic

std::string PanTau::Tool_DecayModeDeterminator::m_varTypeName_Prefix_Basic
private

Definition at line 65 of file Tool_DecayModeDeterminator.h.

◆ m_vhka

std::vector<SG::VarHandleKeyArray*> AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
privateinherited

Definition at line 398 of file AthCommonDataStore.h.


The documentation for this class was generated from the following files:
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXn
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_3p0n_vs_3pXn
Definition: Tool_DecayModeDeterminator.h:55
xAOD::TauJetParameters::Mode_1p0n
@ Mode_1p0n
Definition: TauDefs.h:386
PanTau::PanTauSeed::setDecayModeByPanTau
void setDecayModeByPanTau(int decayModePanTau)
Definition: PanTauSeed.h:230
asg::AsgTool
Base class for the dual-use tool implementation classes.
Definition: AsgTool.h:47
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXnName
Gaudi::Property< 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:217
PanTau::Tool_DecayModeDeterminator::m_init
bool m_init
Definition: Tool_DecayModeDeterminator.h:75
PanTau::Tool_DecayModeDeterminator::t_3p0n_vs_3pXn
@ t_3p0n_vs_3pXn
Definition: Tool_DecayModeDeterminator.h:38
StateLessPT_NewConfig.proxy
proxy
Definition: StateLessPT_NewConfig.py:407
PanTau::PanTauSeed::getTauJet
const xAOD::TauJet * getTauJet() const
Definition: PanTauSeed.h:215
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
PanTau::PanTauSeed::getDecayModeBySubAlg
int getDecayModeBySubAlg() const
Definition: PanTauSeed.h:224
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R10X_CellBased
double m_BDTCutValue_R10X_CellBased
Definition: Tool_DecayModeDeterminator.h:68
PanTau::TauConstituent::t_Charged
@ t_Charged
Definition: TauConstituent.h:44
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R1XX_CellBased
double m_BDTCutValue_R1XX_CellBased
Definition: Tool_DecayModeDeterminator.h:71
PanTau::PanTauSeed::getConstituentsOfType
std::vector< PanTau::TauConstituent * > getConstituentsOfType(int tauConstituent_Type, bool &foundit)
Definition: PanTauSeed.cxx:338
xAOD::TauJet_v3::setPanTauDetail
void setPanTauDetail(TauJetParameters::PanTauDetails panTauDetail, int value)
Definition: TauJet_v3.cxx:367
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p1n_vs_1pXn
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_1p1n_vs_1pXn
Definition: Tool_DecayModeDeterminator.h:54
PanTau::PanTauSeed::t_ExtMode300
@ t_ExtMode300
Definition: PanTauSeed.h:49
PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStoreName
Gaudi::Property< std::string > m_Tool_InformationStoreName
Definition: Tool_DecayModeDeterminator.h:57
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1n
ToolHandle< PanTau::ITool_ModeDiscriminator > m_Tool_ModeDiscriminator_1p0n_vs_1p1n
Definition: Tool_DecayModeDeterminator.h:53
PanTau::PanTauSeed::t_NoValidInputTau
@ t_NoValidInputTau
Definition: PanTauSeed.h:34
PanTau::TauFeature::addFeature
bool addFeature(const std::string &name, const double value)
adds a new feature
Definition: TauFeature.cxx:44
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_evtStore
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
Definition: AthCommonDataStore.h:390
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_vhka
std::vector< SG::VarHandleKeyArray * > m_vhka
Definition: AthCommonDataStore.h:398
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R11X_CellBased
double m_BDTCutValue_R11X_CellBased
Definition: Tool_DecayModeDeterminator.h:69
PanTau::TauFeature
Definition: TauFeature.h:19
PanTau::Tool_DecayModeDeterminator::t_UnknownTest
@ t_UnknownTest
Definition: Tool_DecayModeDeterminator.h:39
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
PanTau::Tool_DecayModeDeterminator::m_Tool_InformationStore
ToolHandle< PanTau::ITool_InformationStore > m_Tool_InformationStore
Definition: Tool_DecayModeDeterminator.h:52
dbg::ptr
void * ptr(T *p)
Definition: SGImplSvc.cxx:74
PanTau::PanTauSeed::t_ExtMode1XX
@ t_ExtMode1XX
Definition: PanTauSeed.h:48
PanTau::Tool_DecayModeDeterminator::t_1p0n_vs_1p1n
@ t_1p0n_vs_1p1n
Definition: Tool_DecayModeDeterminator.h:36
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R110_CellBased
double m_BDTCutValue_R110_CellBased
Definition: Tool_DecayModeDeterminator.h:70
python.iconfTool.models.loaders.level
level
Definition: loaders.py:20
xAOD::TauJetParameters::Mode_1pXn
@ Mode_1pXn
Definition: TauDefs.h:388
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_3p0n_vs_3pXnName
Gaudi::Property< std::string > m_Tool_ModeDiscriminator_3p0n_vs_3pXnName
Definition: Tool_DecayModeDeterminator.h:60
IDTPMcnv.htype
htype
Definition: IDTPMcnv.py:29
PanTau::PanTauSeed::t_ExtMode11X
@ t_ExtMode11X
Definition: PanTauSeed.h:47
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T, V, H > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
AthCommonDataStore< AthCommonMsg< AlgTool > >::evtStore
ServiceHandle< StoreGateSvc > & evtStore()
The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc.
Definition: AthCommonDataStore.h:85
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:209
AthCommonDataStore
Definition: AthCommonDataStore.h:52
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
PanTau::PanTauSeed::t_ExtMode110
@ t_ExtMode110
Definition: PanTauSeed.h:46
PanTau::Tool_DecayModeDeterminator::m_varTypeName_Prefix_Basic
std::string m_varTypeName_Prefix_Basic
Definition: Tool_DecayModeDeterminator.h:65
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
AthCommonDataStore::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T, V, H > &t)
Definition: AthCommonDataStore.h:145
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
CalibDbCompareRT.dummy
dummy
Definition: CalibDbCompareRT.py:59
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
MSG::name
const std::string & name(Level lvl)
Convenience function for translating message levels to strings.
Definition: MsgLevel.cxx:19
PanTau::PanTauSeed::t_ExtMode30X
@ t_ExtMode30X
Definition: PanTauSeed.h:50
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
PanTau::Tool_DecayModeDeterminator::DecayModeTest
DecayModeTest
Definition: Tool_DecayModeDeterminator.h:35
xAOD::TauJetParameters::Mode_3p0n
@ Mode_3p0n
Definition: TauDefs.h:389
PanTau::Tool_DecayModeDeterminator::t_1p1n_vs_1pXn
@ t_1p1n_vs_1pXn
Definition: Tool_DecayModeDeterminator.h:37
PanTau::PanTauSeed::t_ExtMode10X
@ t_ExtMode10X
Definition: PanTauSeed.h:45
SG::VarHandleKeyArray::renounce
virtual void renounce()=0
SG::HandleClassifier::type
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
Definition: HandleClassifier.h:54
xAOD::TauJetParameters::PanTau_DecayModeExtended
@ PanTau_DecayModeExtended
Definition: TauDefs.h:376
PanTau::PanTauSeed::t_ExtMode100
@ t_ExtMode100
Definition: PanTauSeed.h:44
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R30X_CellBased
double m_BDTCutValue_R30X_CellBased
Definition: Tool_DecayModeDeterminator.h:72
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:240
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:56
PanTau::PanTauSeed::t_NoConstituentsAtAll
@ t_NoConstituentsAtAll
Definition: PanTauSeed.h:35
PanTau::PanTauSeed::setModeHackedByCellBased
void setModeHackedByCellBased(bool f)
Definition: PanTauSeed.h:153
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::PanTauSeed::getNumberOfConstituentsOfType
int getNumberOfConstituentsOfType(int tauConstituent_Type)
Definition: PanTauSeed.cxx:349
a
TList * a
Definition: liststreamerinfos.cxx:10
h
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
PanTau::PanTauSeed::isOfTechnicalQuality
bool isOfTechnicalQuality(int pantauSeed_TechnicalQuality) const
Definition: PanTauSeed.cxx:329
PanTau::Tool_DecayModeDeterminator::m_Tool_ModeDiscriminator_1p0n_vs_1p1nName
Gaudi::Property< std::string > m_Tool_ModeDiscriminator_1p0n_vs_1p1nName
Definition: Tool_DecayModeDeterminator.h:58
PanTau::PanTauSeed::t_ExtMode11shots
@ t_ExtMode11shots
Definition: PanTauSeed.h:55
AthCommonMsg< AlgTool >::msg
MsgStream & msg() const
Definition: AthCommonMsg.h:24
PanTau::PanTauSeed::t_NoSelectedConstituents
@ t_NoSelectedConstituents
Definition: PanTauSeed.h:36
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:629
xAOD::TauJetParameters::Mode_3pXn
@ Mode_3pXn
Definition: TauDefs.h:390
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:801
PanTau::TauConstituent
Definition: TauConstituent.h:25
SG::DataProxy
Definition: DataProxy.h:45
xAOD::TauJetParameters::Mode_NotSet
@ Mode_NotSet
Definition: TauDefs.h:392
PanTau::Tool_DecayModeDeterminator::m_BDTCutValue_R3XX_CellBased
double m_BDTCutValue_R3XX_CellBased
Definition: Tool_DecayModeDeterminator.h:73
PanTau::Tool_DecayModeDeterminator::t_nTests
@ t_nTests
Definition: Tool_DecayModeDeterminator.h:40
PanTau::TauConstituent::getShots
const std::vector< TauConstituent * > & getShots() const
Definition: TauConstituent.cxx:237
xAOD::TauJetParameters::Mode_Other
@ Mode_Other
Definition: TauDefs.h:391
fitman.k
k
Definition: fitman.py:528
PanTau::PanTauSeed::t_ExtModeOther
@ t_ExtModeOther
Definition: PanTauSeed.h:52