ATLAS Offline Software
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
xAODMaker::TauJetCnvTool Class Reference

#include <TauJetCnvTool.h>

Inheritance diagram for xAODMaker::TauJetCnvTool:
Collaboration diagram for xAODMaker::TauJetCnvTool:

Public Member Functions

 TauJetCnvTool (const std::string &type, const std::string &name, const IInterface *parent)
 Constructor with parameters: More...
 
virtual ~TauJetCnvTool () override
 Destructor: More...
 
virtual StatusCode initialize () override
 
virtual StatusCode convert (const Analysis::TauJetContainer *inputTaus, xAOD::TauJetContainer *xaodTauJets) const override
 Function that fills an existing xAOD::TauJetContainer. 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 > &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
 

Static Public Member Functions

static const InterfaceID & interfaceID ()
 Gaudi interface definition. More...
 

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

 TauJetCnvTool ()
 Default constructor: More...
 
void setLinks (const Analysis::TauJet &aodtau, xAOD::TauJet &xaodtau) const
 
ElementLink< xAOD::TrackParticleContainergetNewTrackLink (const ElementLink< Rec::TrackParticleContainer > &oldLink, const std::string &name) const
 
ElementLink< xAOD::JetContainergetNewJetLink (const ElementLink< JetCollection > &oldLink, const std::string &name) const
 
void copyPanTauDetails (const Analysis::TauJet &aodtau, xAOD::TauJet &xaodtau) const
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
 specialization for handling Gaudi::Property<SG::VarHandleKey> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleKeyArrayType &)
 specialization for handling Gaudi::Property<SG::VarHandleKeyArray> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &hndl, const SG::VarHandleType &)
 specialization for handling Gaudi::Property<SG::VarHandleBase> More...
 
Gaudi::Details::PropertyBase & declareGaudiProperty (Gaudi::Property< T > &t, const SG::NotHandleType &)
 specialization for handling everything that's not a Gaudi::Property<SG::VarHandleKey> or a <SG::VarHandleKeyArray> More...
 

Private Attributes

std::string m_inDetTrackParticles
 Containers. More...
 
std::string m_jets
 Location/Key for jets. More...
 
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

Definition at line 37 of file TauJetCnvTool.h.

Member Typedef Documentation

◆ StoreGateSvc_t

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

Definition at line 388 of file AthCommonDataStore.h.

Constructor & Destructor Documentation

◆ TauJetCnvTool() [1/2]

xAODMaker::TauJetCnvTool::TauJetCnvTool ( const std::string &  type,
const std::string &  name,
const IInterface *  parent 
)

Constructor with parameters:

Definition at line 30 of file TauJetCnvTool.cxx.

32  :
34  , m_inDetTrackParticles("InDetTrackParticles")
35  , m_jets("AntiKt4LCTopoJets")
36  {
37  declareInterface< ITauJetCnvTool > (this);
38  //
39  // Property declaration
40  //
41  declareProperty( "TrackContainerName", m_inDetTrackParticles );
42  declareProperty( "JetContainerName", m_jets );
43  }

◆ ~TauJetCnvTool()

xAODMaker::TauJetCnvTool::~TauJetCnvTool ( )
overridevirtual

Destructor:

Definition at line 47 of file TauJetCnvTool.cxx.

48  {}

◆ TauJetCnvTool() [2/2]

xAODMaker::TauJetCnvTool::TauJetCnvTool ( )
private

Default constructor:

Member Function Documentation

◆ convert()

StatusCode xAODMaker::TauJetCnvTool::convert ( const Analysis::TauJetContainer inputTaus,
xAOD::TauJetContainer xAODTauJets 
) const
overridevirtual

Function that fills an existing xAOD::TauJetContainer.

Implements xAODMaker::ITauJetCnvTool.

Definition at line 59 of file TauJetCnvTool.cxx.

60  {
63 
64  for( ; it!= itE; ++it)
65  {
66  const Analysis::TauJet * tau = *it;
67 
68  ATH_MSG_DEBUG( "trying to convert tau with pt="<< tau->pt() << " eta=" << tau->eta() << " phi=" << tau->phi() << " m=" << tau->m() );
69 
70  xAOD::TauJet* xtaujet = new xAOD::TauJet();
71  xaodTauJets->push_back( xtaujet );
72 
73  xtaujet->setP4( tau->pt(), tau->eta(), tau->phi(), tau->m() );
74 
75  ATH_MSG_DEBUG( "converted xtau with pt="<< xtaujet->pt() << " eta=" << xtaujet->eta() << " phi=" << xtaujet->phi() << " m=" << xtaujet->m() );
76 
77  ATH_MSG_DEBUG( "trying to convert tau jetseed 4-vector with pt="<< tau->getHLV(TauJetParameters::JetSeed).perp() << " eta=" << tau->getHLV(TauJetParameters::JetSeed).eta() << " phi=" << tau->getHLV(TauJetParameters::JetSeed).phi() << " m=" << tau->getHLV(TauJetParameters::JetSeed).m() );
78 
79 
81 
82  ATH_MSG_DEBUG( "converted xtau jetseed 4-vector with pt="<< xtaujet->ptJetSeed() << " eta=" << xtaujet->etaJetSeed() << " phi=" << xtaujet->phiJetSeed() << " m=" << xtaujet->mJetSeed() );
83 
84  ATH_MSG_DEBUG( "trying to convert tau detectoraxis 4-vector with pt="<< tau->getHLV(TauJetParameters::DetectorAxis).perp() << " eta=" << tau->getHLV(TauJetParameters::DetectorAxis).eta() << " phi=" << tau->getHLV(TauJetParameters::DetectorAxis).phi() << " m=" << tau->getHLV(TauJetParameters::DetectorAxis).m() );
85 
87 
88  ATH_MSG_DEBUG( "converted xtau detectoraxis 4-vector with pt="<< xtaujet->ptDetectorAxis() << " eta=" << xtaujet->etaDetectorAxis() << " phi=" << xtaujet->phiDetectorAxis() << " m=" << xtaujet->mDetectorAxis() );
89 
90 
91  ATH_MSG_DEBUG( "trying to convert tau intermediateaxis 4-vector with pt="<< tau->getHLV(TauJetParameters::IntermediateAxis).perp() << " eta=" << tau->getHLV(TauJetParameters::IntermediateAxis).eta() << " phi=" << tau->getHLV(TauJetParameters::IntermediateAxis).phi() << " m=" << tau->getHLV(TauJetParameters::IntermediateAxis).m() );
92 
94 
95  ATH_MSG_DEBUG( "converted xtau intermediateaxis 4-vector with pt="<< xtaujet->ptIntermediateAxis() << " eta=" << xtaujet->etaIntermediateAxis() << " phi=" << xtaujet->phiIntermediateAxis() << " m=" << xtaujet->mIntermediateAxis() );
96 
97 
98  ATH_MSG_DEBUG( "trying to convert tau tauenergyscale 4-vector with pt="<< tau->getHLV(TauJetParameters::TauEnergyScale).perp() << " eta=" << tau->getHLV(TauJetParameters::TauEnergyScale).eta() << " phi=" << tau->getHLV(TauJetParameters::TauEnergyScale).phi() << " m=" << tau->getHLV(TauJetParameters::TauEnergyScale).m() );
99 
101 
102  ATH_MSG_DEBUG( "converted xtau tauenergyscale 4-vector with pt="<< xtaujet->ptTauEnergyScale() << " eta=" << xtaujet->etaTauEnergyScale() << " phi=" << xtaujet->phiTauEnergyScale() << " m=" << xtaujet->mTauEnergyScale() );
103 
104  ATH_MSG_DEBUG( "trying to convert tau intermediateaxis 4-vector with pt="<< tau->getHLV(TauJetParameters::TauEtaCalib).perp() << " eta=" << tau->getHLV(TauJetParameters::TauEtaCalib).eta() << " phi=" << tau->getHLV(TauJetParameters::TauEtaCalib).phi() << " m=" << tau->getHLV(TauJetParameters::TauEtaCalib).m() );
105 
107 
108  ATH_MSG_DEBUG( "converted xtau intermediateaxis 4-vector with pt="<< xtaujet->ptTauEtaCalib() << " eta=" << xtaujet->etaTauEtaCalib() << " phi=" << xtaujet->phiTauEtaCalib() << " m=" << xtaujet->mTauEtaCalib() );
109 
110  //trying to set element links
111  ATH_MSG_DEBUG( "trying to set element links for tau with numTrack=" << tau->numTrack() );
112 
113  // this method leads to a segfault when converting Run 1 BS to xAOD.
114  // It was decided that the links are not needed in the reprocessed files
115  // (for data analysis), therefore is disabled (ATR-13562)
116  //
117  // setLinks((*tau), (*xtaujet));
118 
119  ATH_MSG_DEBUG( "converted xaod tau with numTrack=" << xtaujet->nTracks() );
120 
121 
122  ATH_MSG_DEBUG( "trying to convert tau with ROIWord=" << tau->ROIWord() );
123  xtaujet->setROIWord( tau->ROIWord());
124  ATH_MSG_DEBUG( "converted xaod tau with ROIWord=" << xtaujet->ROIWord() );
125 
126  ATH_MSG_DEBUG( "trying to convert tau with charge=" << tau->charge() );
127  xtaujet->setCharge( tau->charge() );
128  ATH_MSG_DEBUG( "converted xaod tau with charge=" << xtaujet->charge() );
129 
130  //set PID variables
131 
132  ATH_MSG_DEBUG( "trying to convert tau with BDTElescore=" << tau->tauID()->discriminant(TauJetParameters::BDTEleScore) );
134  ATH_MSG_DEBUG( "converted xaod tau with BDTEleScore=" << xtaujet->discriminant(xAOD::TauJetParameters::BDTEleScore ) );
135 
137  // xtaujet->setDiscriminant(xAOD::TauJetParameters::BDTJetScoreBkgTrans , tau->tauID()->discriminant(TauJetParameters::BDTJetScoreBkgTrans) );
139  // xtaujet->setDiscriminant(xAOD::TauJetParameters::Likelihood , tau->tauID()->discriminant(TauJetParameters::Likelihood) );
140  // xtaujet->setDiscriminant(xAOD::TauJetParameters::SafeLikelihood , tau->tauID()->discriminant(TauJetParameters::SafeLikelihood) );
141 
142  ATH_MSG_DEBUG( "trying to convert tau with MuonVeto=" << tau->tauID()->isTau(TauJetParameters::MuonVeto) );
144 
151 
152  ATH_MSG_DEBUG( "set individual details variables" );
153 
154  //set individual details variables
155 
156  const Analysis::TauCommonDetails* commonDetails(tau->details<Analysis::TauCommonDetails>());
157  if(commonDetails != nullptr)
158  {
159  int tempint = 0;
160 
161  ATH_MSG_DEBUG( "tau with nCharged " << tau->numTrack() );
162  xtaujet->setDetail(xAOD::TauJetParameters::nCharged , static_cast<int>( tau->numTrack() ) );
163  if( xtaujet->detail( xAOD::TauJetParameters::nCharged, tempint ) )
164  ATH_MSG_DEBUG( "converted xaod tau with nPi0 " << tempint );
165 
166 
167  ATH_MSG_DEBUG( "tau with pi0ConeDR " << commonDetails->Pi0ConeDR() );
168  xtaujet->setPi0ConeDR( commonDetails->Pi0ConeDR() );
169  ATH_MSG_DEBUG( "converted xaod tau with pi0ConeDR " << xtaujet->pi0ConeDR() );
170 
171  ATH_MSG_DEBUG( "tau with trackFilterProngs " << commonDetails->TrackFilterProngs() );
172  xtaujet->setTrackFilterProngs( commonDetails->TrackFilterProngs() );
173  ATH_MSG_DEBUG( "converted xaod tau with trackFilterProngs " << xtaujet->trackFilterProngs() );
174 
175  ATH_MSG_DEBUG( "tau with trackFilterQuality " << commonDetails->TrackFilterQuality() );
176  xtaujet->setTrackFilterQuality( commonDetails->TrackFilterQuality() );
177  ATH_MSG_DEBUG( "converted xaod tau with trackFilterQuality " << xtaujet->trackFilterQuality() );
178 
179 
180  // for (unsigned int i = 0; i < commonDetails->TrackFilterPass().size(); ++i)
181  // {
182 
183  // ATH_MSG_DEBUG( " tau with trackFilterPass " << commonDetails->TrackFilterPass().at(i) << " for track " << i );
184 
185  // xtaujet->setTrackFlag(*getNewTrackLink(tau->conversionTrackLinkVector().at(i), m_inDetTrackParticles), xAOD::TauJetParameters::failTrackFilter, commonDetails->TrackFilterPass().at(i) );
186  // // xtaujet->setTrackFilterPass( i, static_cast<int> (commonDetails->TrackFilterPass().at(i)) );
187 
188  // // ATH_MSG_DEBUG( "converted xaod tau with trackFilterPass " << xtaujet->trackFlag(tau->track(i), xAOD::TauJetParameters::failTrackFilter ) << " for track " << i );
189 
190  // }
191 
192 
193 
194  ATH_MSG_DEBUG( "found details container for this tau with SeedCalo_EMRadius " << commonDetails->seedCalo_EMRadius() );
195 
196  xtaujet->setDetail(xAOD::TauJetParameters::ipZ0SinThetaSigLeadTrk , static_cast<float>( commonDetails->ipZ0SinThetaSigLeadTrk() ) );
197  xtaujet->setDetail(xAOD::TauJetParameters::etOverPtLeadTrk , static_cast<float>( commonDetails->etOverPtLeadTrk() ) );
198  xtaujet->setDetail(xAOD::TauJetParameters::leadTrkPt , static_cast<float>( commonDetails->leadTrkPt() ) );
199  xtaujet->setDetail(xAOD::TauJetParameters::ipSigLeadTrk , static_cast<float>( commonDetails->ipSigLeadTrk() ) );
200  // xtaujet->setDetail(xAOD::TauJetParameters::ipSigLeadLooseTrk , static_cast<float>( commonDetails->ipSigLeadLooseTrk() ) );
201  // xtaujet->setDetail(xAOD::TauJetParameters::etOverPtLeadLooseTrk , static_cast<float>( commonDetails->etOverPtLeadLooseTrk() ) );
202  // xtaujet->setDetail(xAOD::TauJetParameters::leadLooseTrkPt , static_cast<float>( commonDetails->leadLooseTrkPt() ) );
203  // xtaujet->setDetail(xAOD::TauJetParameters::chrgLooseTrk , static_cast<float>( commonDetails->chrgLooseTrk() ) );
204  xtaujet->setDetail(xAOD::TauJetParameters::massTrkSys , static_cast<float>( commonDetails->massTrkSys() ) );
205  xtaujet->setDetail(xAOD::TauJetParameters::trkWidth2 , static_cast<float>( commonDetails->trkWidth2() ) );
206  xtaujet->setDetail(xAOD::TauJetParameters::trFlightPathSig , static_cast<float>( commonDetails->trFlightPathSig() ) );
207  // xtaujet->setDetail(xAOD::TauJetParameters::etEflow , static_cast<float>( commonDetails->etEflow() ) );
208  // xtaujet->setDetail(xAOD::TauJetParameters::mEflow , static_cast<float>( commonDetails->mEflow() ) );
209  // xtaujet->setDetail(xAOD::TauJetParameters::ele_E237E277 , static_cast<float>( commonDetails->ele_E237E277() ) );
210  // xtaujet->setDetail(xAOD::TauJetParameters::ele_PresamplerFraction , static_cast<float>( commonDetails->ele_PresamplerFraction() ) );
211  // xtaujet->setDetail(xAOD::TauJetParameters::ele_ECALFirstFraction , static_cast<float>( commonDetails->ele_ECALFirstFraction() ) );
212  xtaujet->setDetail(xAOD::TauJetParameters::numCells , static_cast<int>( commonDetails->numCells() ) );
213  xtaujet->setDetail(xAOD::TauJetParameters::numTopoClusters , static_cast<int>( commonDetails->numTopoClusters() ) );
214  xtaujet->setDetail(xAOD::TauJetParameters::numEffTopoClusters , static_cast<float>( commonDetails->numEffTopoClusters() ) );
215  xtaujet->setDetail(xAOD::TauJetParameters::topoInvMass , static_cast<float>( commonDetails->topoInvMass() ) );
216  xtaujet->setDetail(xAOD::TauJetParameters::effTopoInvMass , static_cast<float>( commonDetails->effTopoInvMass() ) );
217  xtaujet->setDetail(xAOD::TauJetParameters::topoMeanDeltaR , static_cast<float>( commonDetails->topoMeanDeltaR() ) );
218  xtaujet->setDetail(xAOD::TauJetParameters::effTopoMeanDeltaR , static_cast<float>( commonDetails->effTopoMeanDeltaR() ) );
219  xtaujet->setDetail(xAOD::TauJetParameters::EMRadius , static_cast<float>( commonDetails->seedCalo_EMRadius() ) );
220 
221  float tempfloat = 0;
222  if ( xtaujet->detail(xAOD::TauJetParameters::EMRadius, tempfloat) )
223  ATH_MSG_DEBUG( "converted details for this xaod tau with SeedCalo_EMRadius " << tempfloat );
224  else
225  ATH_MSG_DEBUG( "error getting SeedCalo_EMRadius from xaod tau " );
226 
227  xtaujet->setDetail(xAOD::TauJetParameters::hadRadius , static_cast<float>( commonDetails->seedCalo_hadRadius() ) );
228  xtaujet->setDetail(xAOD::TauJetParameters::etEMAtEMScale , static_cast<float>( commonDetails->seedCalo_etEMAtEMScale() ) );
229  xtaujet->setDetail(xAOD::TauJetParameters::etHadAtEMScale , static_cast<float>( commonDetails->seedCalo_etHadAtEMScale() ) );
230  xtaujet->setDetail(xAOD::TauJetParameters::isolFrac , static_cast<float>( commonDetails->seedCalo_isolFrac() ) );
231  xtaujet->setDetail(xAOD::TauJetParameters::centFrac , static_cast<float>( commonDetails->seedCalo_centFrac() ) );
232  xtaujet->setDetail(xAOD::TauJetParameters::stripWidth2 , static_cast<float>( commonDetails->seedCalo_stripWidth2() ) );
233  xtaujet->setDetail(xAOD::TauJetParameters::nStrip , static_cast<int>( commonDetails->seedCalo_nStrip() ) );
234  // xtaujet->setDetail(xAOD::TauJetParameters::etEMCalib , static_cast<float>( commonDetails->seedCalo_etEMCalib() ) );
235  // xtaujet->setDetail(xAOD::TauJetParameters::etHadCalib , static_cast<float>( commonDetails->seedCalo_etHadCalib() ) );
236  // xtaujet->setDetail(xAOD::TauJetParameters::seedCalo_eta , static_cast<float>( commonDetails->seedCalo_eta() ) );
237  // xtaujet->setDetail(xAOD::TauJetParameters::seedCalo_phi , static_cast<float>( commonDetails->seedCalo_phi() ) );
238  // xtaujet->setDetail(xAOD::TauJetParameters::nIsolLooseTrk , static_cast<float>( commonDetails->seedCalo_nIsolLooseTrk() ) );
239  xtaujet->setDetail(xAOD::TauJetParameters::trkAvgDist , static_cast<float>( commonDetails->seedCalo_trkAvgDist() ) );
240  xtaujet->setDetail(xAOD::TauJetParameters::trkRmsDist , static_cast<float>( commonDetails->seedCalo_trkRmsDist() ) );
241  xtaujet->setDetail(xAOD::TauJetParameters::lead2ClusterEOverAllClusterE , static_cast<float>( commonDetails->seedCalo_lead2ClusterEOverAllClusterE() ) );
242  xtaujet->setDetail(xAOD::TauJetParameters::lead3ClusterEOverAllClusterE , static_cast<float>( commonDetails->seedCalo_lead3ClusterEOverAllClusterE() ) );
243  xtaujet->setDetail(xAOD::TauJetParameters::caloIso , static_cast<float>( commonDetails->seedCalo_caloIso() ) );
244  xtaujet->setDetail(xAOD::TauJetParameters::caloIsoCorrected , static_cast<float>( commonDetails->seedCalo_caloIsoCorrected() ) );
245  xtaujet->setDetail(xAOD::TauJetParameters::dRmax , static_cast<float>( commonDetails->seedCalo_dRmax() ) );
246  xtaujet->setDetail(xAOD::TauJetParameters::secMaxStripEt , static_cast<float>( commonDetails->seedTrk_secMaxStripEt() ) );
247  xtaujet->setDetail(xAOD::TauJetParameters::sumEMCellEtOverLeadTrkPt , static_cast<float>( commonDetails->seedTrk_sumEMCellEtOverLeadTrkPt() ) );
248  xtaujet->setDetail(xAOD::TauJetParameters::hadLeakEt , static_cast<float>( commonDetails->seedTrk_hadLeakEt() ) );
249 
250  // xtaujet->setDetail(xAOD::TauJetParameters::EM_TES_scale , static_cast<float>( commonDetails->EM_TES_scale() ) );
251  // xtaujet->setDetail(xAOD::TauJetParameters::LC_TES_precalib , static_cast<float>( commonDetails->LC_TES_precalib() ) );
252  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing1 , static_cast<float>( commonDetails->cellBasedEnergyRing1() ) );
253  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing2 , static_cast<float>( commonDetails->cellBasedEnergyRing2() ) );
254  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing3 , static_cast<float>( commonDetails->cellBasedEnergyRing3() ) );
255  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing4 , static_cast<float>( commonDetails->cellBasedEnergyRing4() ) );
256  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing5 , static_cast<float>( commonDetails->cellBasedEnergyRing5() ) );
257  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing6 , static_cast<float>( commonDetails->cellBasedEnergyRing6() ) );
258  xtaujet->setDetail(xAOD::TauJetParameters::cellBasedEnergyRing7 , static_cast<float>( commonDetails->cellBasedEnergyRing7() ) );
259  xtaujet->setDetail(xAOD::TauJetParameters::TRT_NHT_OVER_NLT , static_cast<float>( commonDetails->TRT_NHT_OVER_NLT() ) );
260  // xtaujet->setTauJetVtxFraction( commonDetails->tauJetVtxFraction() );
261  } else {
262  ATH_MSG_WARNING( "there was no TauDetails container found" );
263  }
264 
265  //copy pantau details
266  ATH_MSG_DEBUG( "go looking for pantau details container " );
267 
268  copyPanTauDetails((*tau), (*xtaujet));
269 
270  }
271 
272 
273  return StatusCode::SUCCESS;
274  }

◆ copyPanTauDetails()

void xAODMaker::TauJetCnvTool::copyPanTauDetails ( const Analysis::TauJet aodtau,
xAOD::TauJet xaodtau 
) const
private

Definition at line 391 of file TauJetCnvTool.cxx.

391  {
392 
393  // const PanTau::PanTauDetails* cellBasedDetails_PanTau(0);
394  // cellBasedDetails_PanTau = aodtau.details<const PanTau::PanTauDetails>("PanTau_SeedDetailsCellBased");
395  // //with details_SGKey being
396  // // PanTau_SeedDetailsCellBased
397  // //or PanTau_SeedDetailseflowRec
398 
399  // int tempint = 0;
400  // float tempfloat = 0;
401 
402  // if (!cellBasedDetails_PanTau)
403  // {
404  // ATH_MSG_DEBUG( "TauJet has no associated cellBased PanTauDetails --- This must not be bad - if PanTau rejected a tauRec seed, that tauRec seed will not have PanTauDetails");
405  // }
406  // else
407  // {
408  // ATH_MSG_DEBUG( "trying to convert tau with cellBased isPanTauCandidate =" << cellBasedDetails_PanTau->isPanTauCandidate() );
409  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_isPanTauCandidate, cellBasedDetails_PanTau->isPanTauCandidate() ) ;
410  // if( xaodtau.panTauDetail(xAOD::TauJetParameters::PanTau_isPanTauCandidate, tempint ) )
411  // {
412  // ATH_MSG_DEBUG( "converted xaod tau with cellBased isPanTauCandidate =" << tempint);
413  // }
414  // else
415  // {
416  // ATH_MSG_DEBUG( "something went wrong in setting xAOD tau's cellBased isPanTauCandidate ");
417  // }
418 
419  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_DecayModeProto, cellBasedDetails_PanTau->RecoModeSubAlg() ) ;
420  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_DecayMode, cellBasedDetails_PanTau->RecoModePanTau() ) ;
421 
422  // ATH_MSG_DEBUG( "trying to convert tau with cellBased BDTValue_1p0n_vs_1p1n =" << cellBasedDetails_PanTau->BDTValue_1p0n_vs_1p1n() );
423  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTValue_1p0n_vs_1p1n, static_cast<float>(cellBasedDetails_PanTau->BDTValue_1p0n_vs_1p1n() ) ) ;
424 
425  // if( xaodtau.panTauDetail(xAOD::TauJetParameters::PanTau_BDTValue_1p0n_vs_1p1n, tempfloat ) )
426  // {
427  // ATH_MSG_DEBUG( "converted xaod tau with cellBased BDTValue_1p0n_vs_1p1n =" << tempfloat);
428  // }
429  // else
430  // {
431  // ATH_MSG_DEBUG( "something went wrong in setting xAOD tau's cellBased BDTValue_1p0n_vs_1p1n ");
432  // }
433 
434 
435  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTValue_1p1n_vs_1pXn, static_cast<float>(cellBasedDetails_PanTau->BDTValue_1p1n_vs_1pXn() ) ) ;
436  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTValue_3p0n_vs_3pXn, static_cast<float>(cellBasedDetails_PanTau->BDTValue_3p0n_vs_3pXn() ) ) ;
437  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Basic_NNeutralConsts, cellBasedDetails_PanTau->CellBased_Basic_NNeutralConsts() ) ;
438  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Charged_JetMoment_EtDRxTotalEt, static_cast<float>(cellBasedDetails_PanTau->CellBased_Charged_JetMoment_EtDRxTotalEt() ) ) ;
439  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Charged_StdDev_Et_WrtEtAllConsts, static_cast<float>(cellBasedDetails_PanTau->CellBased_Charged_StdDev_Et_WrtEtAllConsts() ) ) ;
440  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_HLV_SumM, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_HLV_SumM() ) ) ;
441  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_1, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_PID_BDTValues_BDTSort_1() ) ) ;
442  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_PID_BDTValues_BDTSort_2, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_PID_BDTValues_BDTSort_2() ) ) ;
443  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_Ratio_1stBDTEtOverEtAllConsts, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_Ratio_1stBDTEtOverEtAllConsts() ) ) ;
444  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_Ratio_EtOverEtAllConsts, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_Ratio_EtOverEtAllConsts() ) ) ;
445  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Neutral_Shots_NPhotonsInSeed, static_cast<float>(cellBasedDetails_PanTau->CellBased_Neutral_Shots_NPhotonsInSeed() ) ) ;
446  // xaodtau.setPanTauDetail( xAOD::TauJetParameters::PanTau_BDTVar_Combined_DeltaR1stNeutralTo1stCharged, static_cast<float>(cellBasedDetails_PanTau->CellBased_Combined_DeltaR1stNeutralTo1stCharged() ) ) ;
447 
448  // }
449 
450 
451 
452 
453  }

◆ declareGaudiProperty() [1/4]

Gaudi::Details::PropertyBase& AthCommonDataStore< AthCommonMsg< AlgTool > >::declareGaudiProperty ( Gaudi::Property< T > &  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 > &  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 > &  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 > &  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 > &  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; }

◆ 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

◆ getNewJetLink()

ElementLink< xAOD::JetContainer > xAODMaker::TauJetCnvTool::getNewJetLink ( const ElementLink< JetCollection > &  oldLink,
const std::string &  name 
) const
private

Definition at line 385 of file TauJetCnvTool.cxx.

385  {
387  newLink.resetWithKeyAndIndex( name, oldLink.index() );
388  return newLink;
389  }

◆ getNewTrackLink()

ElementLink< xAOD::TrackParticleContainer > xAODMaker::TauJetCnvTool::getNewTrackLink ( const ElementLink< Rec::TrackParticleContainer > &  oldLink,
const std::string &  name 
) const
private

Definition at line 379 of file TauJetCnvTool.cxx.

379  {
381  newLink.resetWithKeyAndIndex( name, oldLink.index() );
382  return newLink;
383  }

◆ initialize()

StatusCode xAODMaker::TauJetCnvTool::initialize ( )
overridevirtual

Definition at line 52 of file TauJetCnvTool.cxx.

53  {
54  ATH_MSG_INFO ("Initializing " << name() << "...");
55 
56  return StatusCode::SUCCESS;
57  }

◆ 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.

◆ interfaceID()

static const InterfaceID& xAODMaker::ITauJetCnvTool::interfaceID ( )
inlinestaticinherited

Gaudi interface definition.

Definition at line 49 of file ITauJetCnvTool.h.

49  {
50  return IID_ITauJetCnvTool;
51  }

◆ 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  }

◆ 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.

◆ 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  }

◆ setLinks()

void xAODMaker::TauJetCnvTool::setLinks ( const Analysis::TauJet aodtau,
xAOD::TauJet xaodtau 
) const
private

Definition at line 276 of file TauJetCnvTool.cxx.

276  {
277 
278  // Need to reset links from old TrackParticle to xAOD::TrackParticles
279 
280  for (unsigned int i = 0; i != aodtau.numTrack(); ++i)
281  {
282  ATH_MSG_DEBUG( "track number : " << i << " has pt: " << (aodtau.track(i) ? aodtau.track(i)->pt() : -1111.) );
283  }
284 
285  //set track links
286  //ElementLinkVector<Rec::TrackParticleContainer>::const_iterator trackit = aodtau.trackLinkVector().begin();
287  //ElementLinkVector<Rec::TrackParticleContainer>::const_iterator trackitE = aodtau.trackLinkVector().end();
288 
289 
290  // for( ; trackit!= trackitE; ++trackit)
291  // {
292  // xaodtau.addTrackLink(getNewTrackLink((*trackit), m_inDetTrackParticles) );
293  // }
294 
295 
296  // for (unsigned int i = 0; i != xaodtau.nTracks(); ++i)
297  // {
298  // ATH_MSG_DEBUG( "xtau track number : " << i << " has pt: " << xaodtau.track(i)->pt() );
299  // }
300 
301 
302  // for (unsigned int i = 0; i != aodtau.numConversionTrack(); ++i)
303  // {
304  // ATH_MSG_DEBUG( "conversion track number : " << i << " has pt: " << aodtau.conversionTrack(i)->pt() );
305  // }
306 
307  // //set conversion track links
308  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator convTrackit = aodtau.conversionTrackLinkVector().begin();
309  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator convTrackitE = aodtau.conversionTrackLinkVector().end();
310 
311  // for( ; convTrackit!= convTrackitE; ++convTrackit)
312  // {
313  // xaodtau.setTrackFlag( *getNewTrackLink((*convTrackit), m_inDetTrackParticles), xAOD::TauJetParameters::isConversion, true);
314  // // xaodtau.addConversionTrackLink(getNewTrackLink((*convTrackit), m_inDetTrackParticles) );
315  // }
316 
317  //Blake, fix me!!!
318  // for (unsigned int i = 0; i != xaodtau.nConversionTracks(); ++i) {
319  // // ATH_MSG_DEBUG( "xtau conversion track number : " << i << " has pt: " << xaodtau.conversionTrack(i)->pt() );
320  // }
321 
322 
323 
324  //get common details member, because wide and other tracks are stored there
325  const Analysis::TauCommonDetails* commonDetails(aodtau.details<Analysis::TauCommonDetails>());
326 
327 
328  for (unsigned int i = 0; i != commonDetails->seedCalo_nWideTrk(); ++i)
329  {
330  ATH_MSG_DEBUG( "wide track number : " << i << " has pt: " << commonDetails->seedCalo_wideTrk(i)->pt() );
331  }
332 
333  // //set wide track links
334  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator wideTrackit = commonDetails->seedCalo_wideTrk().begin();
335  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator wideTrackitE = commonDetails->seedCalo_wideTrk().end();
336 
337  // for( ; wideTrackit!= wideTrackitE; ++wideTrackit)
338  // {
339  // xaodtau.addWideTrackLink(getNewTrackLink((*wideTrackit), m_inDetTrackParticles) );
340  // }
341 
342  // for (unsigned int i = 0; i != xaodtau.nWideTracks(); ++i)
343  // {
344  // ATH_MSG_DEBUG( "xtau wide track number : " << i << " has pt: " << xaodtau.wideTrack(i)->pt() );
345  // }
346 
347 
348  // for (unsigned int i = 0; i != commonDetails->nOtherTrk(); ++i)
349  // {
350  // ATH_MSG_DEBUG( "other track number : " << i << " has pt: " << commonDetails->otherTrk(i)->pt() );
351  // }
352 
353  // //set other track links
354  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator otherTrackit = commonDetails->otherTrk().begin();
355  // ElementLinkVector<Rec::TrackParticleContainer>::const_iterator otherTrackitE = commonDetails->otherTrk().end();
356 
357  // for( ; otherTrackit!= otherTrackitE; ++otherTrackit)
358  // {
359  // xaodtau.addOtherTrackLink(getNewTrackLink((*otherTrackit), m_inDetTrackParticles) );
360  // }
361 
362 
363  // for (unsigned int i = 0; i != xaodtau.nOtherTracks(); ++i) {
364  // ATH_MSG_DEBUG( "xtau other track number : " << i << " has pt: " << xaodtau.otherTrack(i)->pt() );
365  // }
366 
367 
368  ATH_MSG_DEBUG( "trying to set jet link " );
369 
370  ATH_MSG_DEBUG( "tau jet seed has pt : " << aodtau.jet()->pt() );
371 
372  xaodtau.setJetLink(getNewJetLink(aodtau.jetLink(), m_jets) );
373 
374  ATH_MSG_DEBUG( "tau jet seed has pt : " << (*xaodtau.jetLink())->pt() );
375 
376 
377  }

◆ 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_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_inDetTrackParticles

std::string xAODMaker::TauJetCnvTool::m_inDetTrackParticles
private

Containers.

Location/Key for TrackParticles from ID.

Definition at line 80 of file TauJetCnvTool.h.

◆ m_jets

std::string xAODMaker::TauJetCnvTool::m_jets
private

Location/Key for jets.

Definition at line 81 of file TauJetCnvTool.h.

◆ m_varHandleArraysDeclared

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

Definition at line 399 of file AthCommonDataStore.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:
xAOD::TauJetParameters::cellBasedEnergyRing4
@ cellBasedEnergyRing4
Ring 4: 0.10 < R < 0.125.
Definition: TauDefs.h:252
TauJetParameters::MuonVeto
@ MuonVeto
Definition: TauJetParameters.h:109
xAOD::TauJet_v3::phiDetectorAxis
double phiDetectorAxis() const
xAOD::TauJetParameters::trkRmsDist
@ trkRmsDist
Get the RMS of track distance to calorimeter seed.
Definition: TauDefs.h:216
xAOD::TauJet_v3::trackFilterQuality
int trackFilterQuality() const
xAOD::TauJet_v3::etaTauEtaCalib
double etaTauEtaCalib() const
Analysis::TauJet::track
const Rec ::TrackParticle * track(unsigned int i) const
Tracks associated to Tau candidate.
xAOD::TauJet_v3::mTauEnergyScale
double mTauEnergyScale() const
xAOD::TauJet_v3::mDetectorAxis
double mDetectorAxis() const
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
xAOD::TauJet_v3::etaTauEnergyScale
double etaTauEnergyScale() const
xAOD::TauJetParameters::trkWidth2
@ trkWidth2
Definition: TauDefs.h:162
python.PerfMonSerializer.p
def p
Definition: PerfMonSerializer.py:743
xAOD::TauJetParameters::topoInvMass
@ topoInvMass
get invariant mass from topoclusters of jet associated to tau candidate
Definition: TauDefs.h:177
xAOD::TauJetParameters::cellBasedEnergyRing7
@ cellBasedEnergyRing7
Ring 7: 0.2 < R < 0.4.
Definition: TauDefs.h:258
xAOD::TauJetParameters::hadLeakEt
@ hadLeakEt
Definition: TauDefs.h:232
ParticleImpl::pt
virtual double pt() const
transverse momentum
Definition: ParticleImpl.h:554
xAOD::TauJet_v3::pi0ConeDR
float pi0ConeDR() const
xAOD::TauJetParameters::IntermediateAxis
@ IntermediateAxis
Definition: TauDefs.h:338
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
xAOD::TauJetParameters::trFlightPathSig
@ trFlightPathSig
Definition: TauDefs.h:163
xAOD::TauJet_v3::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
Definition: TauJet_v3.cxx:253
xAOD::TauJetParameters::lead2ClusterEOverAllClusterE
@ lead2ClusterEOverAllClusterE
Get sum of 2 leading cluster energy over all cluster energy.
Definition: TauDefs.h:218
xAOD::TauJet_v3::phiIntermediateAxis
double phiIntermediateAxis() const
xAOD::TauJet_v3::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
Analysis::TauJet::getHLV
CLHEP::HepLorentzVector getHLV(TauJetParameters ::TauCalibType type) const
xAOD::TauJet_v3::etaDetectorAxis
double etaDetectorAxis() const
xAOD::TauJet_v3::etaIntermediateAxis
double etaIntermediateAxis() const
xAOD::TauJetParameters::nCharged
@ nCharged
Definition: TauDefs.h:266
xAOD::TauJet_v3::setJetLink
void setJetLink(const JetLink_t &jetLink)
AthCommonDataStore< AthCommonMsg< AlgTool > >::declareProperty
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
Definition: AthCommonDataStore.h:145
TauJetParameters::EleBDTLoose
@ EleBDTLoose
Definition: TauJetParameters.h:127
xAOD::TauJet_v3::setCharge
void setCharge(float)
xAOD::TauJet_v3::m
virtual double m() const
The invariant mass of the particle.
TauJetParameters::JetBDTSigMedium
@ JetBDTSigMedium
Definition: TauJetParameters.h:125
Analysis::TauJet::jet
const Jet * jet() const
seed Jet, might be NULL if not seeded from a Jet
xAOD::TauJet_v3::nTracks
size_t nTracks(TauJetParameters::TauTrackFlag flag=TauJetParameters::TauTrackFlag::classifiedCharged) const
Definition: TauJet_v3.cxx:526
skel.it
it
Definition: skel.GENtoEVGEN.py:423
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
TauJetParameters::EleBDTMedium
@ EleBDTMedium
Definition: TauJetParameters.h:128
Analysis::TauJet::details
const T * details(const std::string &name) const
Get first details object stored in SG collection with matching name.
xAOD::TauJetParameters::TauEtaCalib
@ TauEtaCalib
Definition: TauDefs.h:340
xAOD::TauJetParameters::secMaxStripEt
@ secMaxStripEt
migrate only seedTrk_ variables which are used in reco and ID and without prefix
Definition: TauDefs.h:230
xAOD::TauJetParameters::lead3ClusterEOverAllClusterE
@ lead3ClusterEOverAllClusterE
Get sum of 3 leading cluster energy over all cluster energy.
Definition: TauDefs.h:220
xAOD::TauJetParameters::JetBDTSigMedium
@ JetBDTSigMedium
Definition: TauDefs.h:137
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Analysis::TauJet::jetLink
const ElementLink< JetCollection > jetLink() const
ElementLink to seed Jet, might be invalid if not seeded from a Jet
xAOD::TauJetParameters::EleBDTLoose
@ EleBDTLoose
Definition: TauDefs.h:139
xAOD::TauJet_v3::ptJetSeed
double ptJetSeed() const
xAOD::TauJetParameters::cellBasedEnergyRing1
@ cellBasedEnergyRing1
EM+TES final scale.
Definition: TauDefs.h:246
xAOD::TauJetParameters::EleBDTMedium
@ EleBDTMedium
Definition: TauDefs.h:140
xAOD::TauJet_v3::ptDetectorAxis
double ptDetectorAxis() const
xAOD::TauJetParameters::cellBasedEnergyRing6
@ cellBasedEnergyRing6
Ring 6: 0.15 < R < 0.2.
Definition: TauDefs.h:256
xAOD::TauJet_v3::setIsTau
void setIsTau(TauJetParameters::IsTauFlag flag, bool value)
Set Flag for tau acceptance based on predefined arbitrary criteria.
Definition: TauJet_v3.cxx:280
TauJetParameters::IntermediateAxis
@ IntermediateAxis
Definition: TauJetParameters.h:193
xAOD::TauJetParameters::hadRadius
@ hadRadius
Get hadron calorimeter radius.
Definition: TauDefs.h:192
xAOD::TauJet_v3::setP4
void setP4(double pt, double eta, double phi, double m)
Set methods for IParticle values.
Definition: TauJet_v3.cxx:172
xAOD::TauJetParameters::ipSigLeadTrk
@ ipSigLeadTrk
Definition: TauDefs.h:160
xAOD::TauJetParameters::JetSeed
@ JetSeed
Definition: TauDefs.h:336
TruthTest.itE
itE
Definition: TruthTest.py:25
Analysis::TauJet::tauID
const TauPID * tauID() const
Get TauPID object containing discriminant values.
xAOD::TauJet_v3::mTauEtaCalib
double mTauEtaCalib() const
SG::VarHandleKeyArray::setOwner
virtual void setOwner(IDataHandleHolder *o)=0
xAOD::TauJetParameters::stripWidth2
@ stripWidth2
Get strip width ^2.
Definition: TauDefs.h:202
xAOD::TauJetParameters::centFrac
@ centFrac
Get centrality fraction.
Definition: TauDefs.h:200
xAOD::TauJet_v3::phiJetSeed
double phiJetSeed() const
xAOD::TauJetParameters::dRmax
@ dRmax
Get maximal dR of tracks associated to calo-seeded tau.
Definition: TauDefs.h:226
ParticleImpl::m
virtual double m() const
mass
Definition: ParticleImpl.h:464
Analysis::TauPID::discriminant
double discriminant(TauJetParameters::TauID discID) const
Get value of discriminant.
xAOD::TauJet_v3::ROIWord
unsigned int ROIWord() const
the ROIWord, in case TauJet is used in EF trigger
xAOD::TauJet_v3::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
xAOD::TauJetParameters::JetBDTSigLoose
@ JetBDTSigLoose
Definition: TauDefs.h:136
Analysis::TauCommonDetails
Basic detail class containing information for track and calo seeded tau reconstruction algorithms.
Definition: TauCommonDetails.h:38
xAOD::TauJet_v3::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
xAOD::TauJetParameters::etHadAtEMScale
@ etHadAtEMScale
Get Hadronic energy at EM scale.
Definition: TauDefs.h:196
xAOD::TauJetParameters::topoMeanDeltaR
@ topoMeanDeltaR
get mean distance to leading topocluster for topoclusters of jet associated to tau candidate
Definition: TauDefs.h:181
xAOD::TauJetParameters::effTopoMeanDeltaR
@ effTopoMeanDeltaR
get mean distance to leading topocluster for effective topoclusters of jet associated to tau candidat...
Definition: TauDefs.h:183
xAOD::TauJet_v3::ptTauEnergyScale
double ptTauEnergyScale() const
AthCommonDataStore
Definition: AthCommonDataStore.h:52
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
ParticleImpl::charge
virtual ChargeType charge() const
returns charge as a typedef ChargeType currently Charge Type is a double for jets this may be changed...
Definition: ParticleImpl.h:718
Analysis::TauJet::numTrack
unsigned int numTrack() const
number of Tracks associated to Tau candidate, CAUTION not to be confused with numberOfTracks()!
lumiFormat.i
int i
Definition: lumiFormat.py:92
xAOD::TauJetParameters::caloIso
@ caloIso
Get sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4
Definition: TauDefs.h:222
TauJetParameters::BDTEleScore
@ BDTEleScore
Boosted Decision Tree score for electron rejection.
Definition: TauJetParameters.h:76
xAOD::TauJetParameters::cellBasedEnergyRing2
@ cellBasedEnergyRing2
Ring 2: 0.05 < R < 0.075.
Definition: TauDefs.h:248
ATH_MSG_DEBUG
#define ATH_MSG_DEBUG(x)
Definition: AthMsgStreamMacros.h:29
xAOD::TauJetParameters::trkAvgDist
@ trkAvgDist
Get calibrated EM transverse energy (DEPRECATED since r19)
Definition: TauDefs.h:214
xAOD::TauJet_v3
Class describing a tau jet.
Definition: TauJet_v3.h:41
Analysis::TauPID::isTau
bool isTau(TauJetParameters::IsTauFlag flag) const
Get Flag for tau acceptance based on predefined arbitrary criteria.
xAOD::TauJet_v3::etaJetSeed
double etaJetSeed() const
xAOD::TauJet_v3::setTrackFilterProngs
void setTrackFilterProngs(int)
TauJetParameters::JetBDTSigLoose
@ JetBDTSigLoose
Definition: TauJetParameters.h:124
xAOD::TauJet_v3::jetLink
const JetLink_t & jetLink() const
Analysis::TauJet
Object for taus common for ESD and AOD.
Definition: Reconstruction/tauEvent/tauEvent/TauJet.h:61
test_pyathena.parent
parent
Definition: test_pyathena.py:15
ParticleImpl::phi
virtual double phi() const
phi in [-pi,pi[
Definition: ParticleImpl.h:524
xAOD::TauJet_v3::setTrackFilterQuality
void setTrackFilterQuality(int)
xAOD::TauJetParameters::etOverPtLeadTrk
@ etOverPtLeadTrk
Definition: TauDefs.h:158
xAOD::TauJetParameters::caloIsoCorrected
@ caloIsoCorrected
Get sum of transvers energy of clusters around jet seed within 0.2 < dR < 0.4 (pile up corrected)
Definition: TauDefs.h:224
xAOD::TauJet_v3::ptTauEtaCalib
double ptTauEtaCalib() const
TauJetParameters::JetSeed
@ JetSeed
Definition: TauJetParameters.h:191
AthCommonDataStore< AthCommonMsg< AlgTool > >::m_detStore
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
Definition: AthCommonDataStore.h:393
ParticleImpl::eta
virtual double eta() const
pseudo rapidity
Definition: ParticleImpl.h:514
xAOD::TauJet
TauJet_v3 TauJet
Definition of the current "tau version".
Definition: Event/xAOD/xAODTau/xAODTau/TauJet.h:17
xAOD::TauJetParameters::numTopoClusters
@ numTopoClusters
get number of topocluster constituents of jet associated to tau candidate
Definition: TauDefs.h:173
xAOD::TauJet_v3::phiTauEnergyScale
double phiTauEnergyScale() const
xAOD::TauJet_v3::mJetSeed
double mJetSeed() const
xAOD::TauJetParameters::EleBDTTight
@ EleBDTTight
Definition: TauDefs.h:141
xAOD::TauJetParameters::cellBasedEnergyRing5
@ cellBasedEnergyRing5
Ring 5: 0.125 < R < 0.15.
Definition: TauDefs.h:254
Analysis::TauJet::ROIWord
unsigned int ROIWord() const
Retrieve ROI Word (trigger purposes)
xAOD::TauJetParameters::massTrkSys
@ massTrkSys
Definition: TauDefs.h:161
AthAlgTool::AthAlgTool
AthAlgTool()
Default constructor:
xAOD::TauJetParameters::TauEnergyScale
@ TauEnergyScale
Definition: TauDefs.h:339
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
xAODMaker::TauJetCnvTool::m_jets
std::string m_jets
Location/Key for jets.
Definition: TauJetCnvTool.h:81
xAOD::TauJet_v3::detail
bool detail(TauJetParameters::Detail detail, int &value) const
Set veto flag.
Definition: TauJet_v3.cxx:292
xAOD::TauJetParameters::JetBDTSigTight
@ JetBDTSigTight
Definition: TauDefs.h:138
merge_scale_histograms.doc
string doc
Definition: merge_scale_histograms.py:9
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
TauJetParameters::DetectorAxis
@ DetectorAxis
Definition: TauJetParameters.h:192
xAOD::TauJetParameters::BDTJetScore
@ BDTJetScore
Boosted Decision Tree socre for Jet rejection (not transformed)
Definition: TauDefs.h:78
xAOD::TauJetParameters::nStrip
@ nStrip
Get number of strips.
Definition: TauDefs.h:204
xAOD::TauJetParameters::TRT_NHT_OVER_NLT
@ TRT_NHT_OVER_NLT
TRT hits high threshold over low threshold.
Definition: TauDefs.h:260
TauJetParameters::EleBDTTight
@ EleBDTTight
Definition: TauJetParameters.h:129
xAOD::TauJetParameters::cellBasedEnergyRing3
@ cellBasedEnergyRing3
Ring 3: 0.075 < R < 0.10.
Definition: TauDefs.h:250
TauJetParameters::TauEtaCalib
@ TauEtaCalib
Definition: TauJetParameters.h:195
xAOD::TauJetParameters::numEffTopoClusters
@ numEffTopoClusters
get number of effective topocluster constituents of jet associated to tau candidate !...
Definition: TauDefs.h:175
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
xAOD::TauJet_v3::setPi0ConeDR
void setPi0ConeDR(float)
TauJetParameters::BDTJetScore
@ BDTJetScore
discriminant for PDRS (used by tau1p3p)
Definition: TauJetParameters.h:74
xAOD::TauJet_v3::phiTauEtaCalib
double phiTauEtaCalib() const
xAOD::TauJetParameters::BDTEleScore
@ BDTEleScore
Boosted Decision Tree score for electron rejection.
Definition: TauDefs.h:80
xAOD::TauJetParameters::MuonVeto
@ MuonVeto
Definition: TauDefs.h:121
xAOD::TauJetParameters::ipZ0SinThetaSigLeadTrk
@ ipZ0SinThetaSigLeadTrk
Definition: TauDefs.h:157
a
TList * a
Definition: liststreamerinfos.cxx:10
xAOD::TauJet_v3::mIntermediateAxis
double mIntermediateAxis() const
xAOD::TauJetParameters::numCells
@ numCells
Definition: TauDefs.h:171
TauJetParameters::BDTJetScoreSigTrans
@ BDTJetScoreSigTrans
BDT score which is signal transformed/flattened.
Definition: TauJetParameters.h:80
h
xAOD::TauJet_v3::setROIWord
void setROIWord(unsigned int)
ATH_MSG_WARNING
#define ATH_MSG_WARNING(x)
Definition: AthMsgStreamMacros.h:32
xAOD::TauJetParameters::sumEMCellEtOverLeadTrkPt
@ sumEMCellEtOverLeadTrkPt
Definition: TauDefs.h:231
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
ParticleSigStateImpl::pt
virtual double pt() const
transverse momentum
Definition: ParticleSigStateImpl.h:767
xAOD::TauJet_v3::charge
float charge() const
xAOD::TauJetParameters::effTopoInvMass
@ effTopoInvMass
get invariant mass from effective topoclusters of jet associated to tau candidate
Definition: TauDefs.h:179
xAOD::TauJet_v3::setDetail
void setDetail(TauJetParameters::Detail detail, int value)
Definition: TauJet_v3.cxx:337
SG::VarHandleBase::vhKey
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
Definition: StoreGate/src/VarHandleBase.cxx:616
xAOD::TauJetParameters::isolFrac
@ isolFrac
Get isolation fraction.
Definition: TauDefs.h:198
declareProperty
#define declareProperty(n, p, h)
Definition: BaseFakeBkgTool.cxx:15
xAODMaker::TauJetCnvTool::m_inDetTrackParticles
std::string m_inDetTrackParticles
Containers.
Definition: TauJetCnvTool.h:80
xAODMaker::TauJetCnvTool::copyPanTauDetails
void copyPanTauDetails(const Analysis::TauJet &aodtau, xAOD::TauJet &xaodtau) const
Definition: TauJetCnvTool.cxx:391
python.Bindings.keys
keys
Definition: Control/AthenaPython/python/Bindings.py:790
xAOD::TauJetParameters::DetectorAxis
@ DetectorAxis
Definition: TauDefs.h:337
xAOD::TauJet_v3::ptIntermediateAxis
double ptIntermediateAxis() const
TauJetParameters::JetBDTSigTight
@ JetBDTSigTight
Definition: TauJetParameters.h:126
xAOD::TauJetParameters::BDTJetScoreSigTrans
@ BDTJetScoreSigTrans
BDT score which is signal transformed/flattened.
Definition: TauDefs.h:84
xAOD::TauJetParameters::EMRadius
@ EMRadius
Get E_T radius.
Definition: TauDefs.h:190
xAODMaker::TauJetCnvTool::getNewJetLink
ElementLink< xAOD::JetContainer > getNewJetLink(const ElementLink< JetCollection > &oldLink, const std::string &name) const
Definition: TauJetCnvTool.cxx:385
xAOD::TauJet_v3::setDiscriminant
void setDiscriminant(TauJetParameters::TauID discID, double disc)
Set value of discriminant.
Definition: TauJet_v3.cxx:265
TauJetParameters::TauEnergyScale
@ TauEnergyScale
Definition: TauJetParameters.h:194
AthCommonDataStore::declareGaudiProperty
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition: AthCommonDataStore.h:156
xAOD::TauJetParameters::etEMAtEMScale
@ etEMAtEMScale
Get EM energy at EM scale.
Definition: TauDefs.h:194
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
fitman.k
k
Definition: fitman.py:528
xAOD::TauJet_v3::trackFilterProngs
int trackFilterProngs() const
xAOD::TauJetParameters::leadTrkPt
@ leadTrkPt
Definition: TauDefs.h:159