ATLAS Offline Software
Loading...
Searching...
No Matches
CP::PartonDecorator Struct Reference

Struct to manage and apply decorators to the EventInfo object. More...

#include <DecoratorHelpers.h>

Collaboration diagram for CP::PartonDecorator:

Classes

struct  ParticleDecorators
 Decorators of one scalar particle prefix; pdgId is nullptr if the "<prefix>_pdgId" decorator was not initialized. More...
struct  VectorParticleDecorators
 Decorators of one vector particle prefix. More...

Public Member Functions

void setPrefix (const std::string &prefix)
 Set the prefix prepended to all decorator names.
void setEventInfo (const xAOD::EventInfo *eventInfo)
 Set the EventInfo object to decorate for the current event.
void initializeFloatDecorator (const std::string &name)
 Initialize a float decorator by bare name.
void initializeVectorFloatDecorator (const std::string &name)
 Initialize a vector-of-float decorator by bare name.
void initializeFloatDecorator (const std::vector< std::string > &names)
 Initialize multiple float decorators by a list of bare names.
void initializePtEtaPhiMDecorator (const std::string &prefix)
 Initialize pt, eta, phi, m float decorators for a bare prefix.
void initializeParticleDecorators (const std::string &prefix)
 Initialize pt, eta, phi, m float and pdgId int decorators for a bare prefix.
void initializeVectorPtEtaPhiMDecorator (const std::string &prefix)
 Initialize vector pt, eta, phi, m float decorators for a bare prefix.
void initializeVectorParticleDecorators (const std::string &prefix)
 Initialize vector pt, eta, phi, m float and pdgId int decorators for a bare prefix.
void initializeIntDecorator (const std::string &name)
 Initialize an integer decorator by bare name.
void initializeVectorIntDecorator (const std::string &name)
 Initialize a vector-of-int decorator by bare name.
void initializeIntDecorator (const std::vector< std::string > &names)
 Initialize multiple integer decorators by a list of bare names.
const SG::Decorator< int > * getIntDecorator (const std::string &name) const
 Retrieve a pointer to an integer decorator by bare name.
const SG::Decorator< std::vector< int > > * getVectorIntDecorator (const std::string &name) const
 Retrieve a pointer to a vector-of-int decorator by bare name.
const SG::Decorator< float > * getFloatDecorator (const std::string &name) const
 Retrieve a pointer to a float decorator by bare name.
const SG::Decorator< std::vector< float > > * getVectorFloatDecorator (const std::string &name) const
 Retrieve a pointer to a vector-of-float decorator by bare name.
void decorateDefault (const std::string &prefix)
 Decorate with default particle kinematics (bare prefix).
void decorateVectorDefault (const std::string &prefix)
 Decorate with default vector particle kinematics (bare prefix).
void decorateDefaultNoPdgId (const std::string &prefix)
 Decorate with default particle kinematics, no PDG ID (bare prefix).
void decorateCustom (const std::string &name, float value)
 Decorate with a custom float value (bare name).
void decorateCustom (const std::string &name, int value)
 Decorate with a custom integer value (bare name).
void decorateParticle (const std::string &prefix, const ROOT::Math::PtEtaPhiMVector &p)
 Decorate with particle kinematics, no PDG ID (bare prefix).
void decorateParticle (const std::string &prefix, const ROOT::Math::PtEtaPhiMVector &p, int pdgId)
 Decorate with particle kinematics and PDG ID (bare prefix).
void decorateVectorParticle (const std::string &prefix, const std::vector< ROOT::Math::PtEtaPhiMVector > &vec_p, const std::vector< int > &vec_pdgId)
 Decorate with a vector of particle kinematics and PDG IDs (bare prefix).

Public Attributes

std::unordered_map< std::string, SG::Decorator< float > > floatDecorators
std::unordered_map< std::string, SG::Decorator< std::vector< float > > > vectorfloatDecorators
std::unordered_map< std::string, SG::Decorator< int > > intDecorators
std::unordered_map< std::string, SG::Decorator< std::vector< int > > > vectorintDecorators

Private Member Functions

std::string fullName (const std::string &name) const
 Returns the full (prefixed) decorator key for internal use.
template<typename T>
const T * findDecorator (const std::unordered_map< std::string, T > &decorators, const std::string &name) const
 Look up a decorator by bare name; throws if it was not initialized.
void clearCaches ()
 Invalidate the per-prefix bundles, e.g. after new decorators were added.
const ParticleDecorators & particleDecorators (const std::string &prefix)
 Resolve (once) the scalar decorators belonging to a bare prefix.
const VectorParticleDecorators & vectorParticleDecorators (const std::string &prefix)
 Resolve (once) the vector decorators belonging to a bare prefix.
const SG::Decorator< int > & pdgIdDecorator (const ParticleDecorators &decs, const std::string &prefix) const
 The pdgId decorator of a bundle; throws if it was not initialized.

Private Attributes

std::string m_prefix
 Prefix prepended to all decorator names.
const xAOD::EventInfo * m_eventInfo
 Target object; set once per event via setEventInfo().
std::unordered_map< std::string, ParticleDecorators > m_particleCache
 Per-prefix decorator bundles, keyed by bare prefix.
std::unordered_map< std::string, VectorParticleDecorators > m_vectorParticleCache

Detailed Description

Struct to manage and apply decorators to the EventInfo object.

PartonDecorator centralises all decoration of the xAOD::EventInfo for a single parton history instance. Two pieces of per-instance state are set once and reused:

  • Prefix (setPrefix): prepended to every decorator name so that multiple histories running in parallel do not overwrite each other's branches.
  • EventInfo (setEventInfo): the target object for all decorate* calls; set once per event at the start of runHistorySaver.

All decorate* methods therefore take only the branch name and the value(s) to write — no object pointer argument is needed at call sites. The decorators belonging to one particle prefix are resolved once and cached, so repeated decorate* calls do not rebuild the individual decorator names.

Definition at line 231 of file DecoratorHelpers.h.

Member Function Documentation

◆ clearCaches()

void CP::PartonDecorator::clearCaches ( )
inlineprivate

Invalidate the per-prefix bundles, e.g. after new decorators were added.

Definition at line 518 of file DecoratorHelpers.h.

518 {
519 m_particleCache.clear();
520 m_vectorParticleCache.clear();
521 }
std::unordered_map< std::string, VectorParticleDecorators > m_vectorParticleCache
std::unordered_map< std::string, ParticleDecorators > m_particleCache
Per-prefix decorator bundles, keyed by bare prefix.

◆ decorateCustom() [1/2]

void CP::PartonDecorator::decorateCustom ( const std::string & name,
float value )
inline

Decorate with a custom float value (bare name).

Definition at line 414 of file DecoratorHelpers.h.

414 {
416 }
void FillParticleInfo(const SG::Decorator< T > &dec, const U &value, const V *object)
Template function to fill particle information into a given object.
const xAOD::EventInfo * m_eventInfo
Target object; set once per event via setEventInfo().
const SG::Decorator< float > * getFloatDecorator(const std::string &name) const
Retrieve a pointer to a float decorator by bare name.

◆ decorateCustom() [2/2]

void CP::PartonDecorator::decorateCustom ( const std::string & name,
int value )
inline

Decorate with a custom integer value (bare name).

Definition at line 419 of file DecoratorHelpers.h.

419 {
421 }
const SG::Decorator< int > * getIntDecorator(const std::string &name) const
Retrieve a pointer to an integer decorator by bare name.

◆ decorateDefault()

void CP::PartonDecorator::decorateDefault ( const std::string & prefix)
inline

Decorate with default particle kinematics (bare prefix).

Writes sentinel values: pt=-1, eta=-999, phi=-999, m=-1, pdgId=0.

Definition at line 391 of file DecoratorHelpers.h.

391 {
392 const ParticleDecorators& decs = particleDecorators(prefix);
393 FillDefaultParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m,
394 pdgIdDecorator(decs, prefix), m_eventInfo);
395 }
void FillDefaultParticleInfo(const SG::Decorator< T > &dec_pt, const SG::Decorator< T > &dec_eta, const SG::Decorator< T > &dec_phi, const SG::Decorator< T > &dec_m, U *object)
Template function to fill default (placeholder) particle kinematics into an object.
Decorators of one scalar particle prefix; pdgId is nullptr if the "<prefix>_pdgId" decorator was not ...
const ParticleDecorators & particleDecorators(const std::string &prefix)
Resolve (once) the scalar decorators belonging to a bare prefix.
const SG::Decorator< int > & pdgIdDecorator(const ParticleDecorators &decs, const std::string &prefix) const
The pdgId decorator of a bundle; throws if it was not initialized.

◆ decorateDefaultNoPdgId()

void CP::PartonDecorator::decorateDefaultNoPdgId ( const std::string & prefix)
inline

Decorate with default particle kinematics, no PDG ID (bare prefix).

Definition at line 407 of file DecoratorHelpers.h.

407 {
408 const ParticleDecorators& decs = particleDecorators(prefix);
409 FillDefaultParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m,
411 }

◆ decorateParticle() [1/2]

void CP::PartonDecorator::decorateParticle ( const std::string & prefix,
const ROOT::Math::PtEtaPhiMVector & p )
inline

Decorate with particle kinematics, no PDG ID (bare prefix).

Parameters
prefixBare decorator prefix.
pThe particle four-vector.

Definition at line 429 of file DecoratorHelpers.h.

430 {
431 const ParticleDecorators& decs = particleDecorators(prefix);
432 FillParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m, p, m_eventInfo);
433 }

◆ decorateParticle() [2/2]

void CP::PartonDecorator::decorateParticle ( const std::string & prefix,
const ROOT::Math::PtEtaPhiMVector & p,
int pdgId )
inline

Decorate with particle kinematics and PDG ID (bare prefix).

Parameters
prefixBare decorator prefix.
pThe particle four-vector.
pdgIdThe PDG ID of the particle.

Definition at line 442 of file DecoratorHelpers.h.

443 {
444 const ParticleDecorators& decs = particleDecorators(prefix);
445 FillParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m,
446 pdgIdDecorator(decs, prefix), p, pdgId, m_eventInfo);
447 }

◆ decorateVectorDefault()

void CP::PartonDecorator::decorateVectorDefault ( const std::string & prefix)
inline

Decorate with default vector particle kinematics (bare prefix).

Definition at line 398 of file DecoratorHelpers.h.

398 {
400 FillDefaultVectorParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m,
401 *decs.pdgId, m_eventInfo);
402 }
void FillDefaultVectorParticleInfo(const SG::Decorator< std::vector< T > > &dec_pt, const SG::Decorator< std::vector< T > > &dec_eta, const SG::Decorator< std::vector< T > > &dec_phi, const SG::Decorator< std::vector< T > > &dec_m, U *object)
Template function to fill default (placeholder) vector particle kinematics into an object.
Decorators of one vector particle prefix.
const VectorParticleDecorators & vectorParticleDecorators(const std::string &prefix)
Resolve (once) the vector decorators belonging to a bare prefix.

◆ decorateVectorParticle()

void CP::PartonDecorator::decorateVectorParticle ( const std::string & prefix,
const std::vector< ROOT::Math::PtEtaPhiMVector > & vec_p,
const std::vector< int > & vec_pdgId )
inline

Decorate with a vector of particle kinematics and PDG IDs (bare prefix).

Parameters
prefixBare decorator prefix.
vec_pVector of particle four-vectors.
vec_pdgIdVector of PDG IDs.

Definition at line 457 of file DecoratorHelpers.h.

460 {
462 for (size_t i = 0; i < vec_p.size(); i++) {
463 FillVectorParticleInfo(*decs.pt, *decs.eta, *decs.phi, *decs.m,
464 *decs.pdgId, vec_p.at(i), vec_pdgId.at(i),
466 }
467 }
void FillVectorParticleInfo(const SG::Decorator< std::vector< T > > &dec, const U &value, const V *object)
Template function to fill vector particle information into a given object.

◆ findDecorator()

template<typename T>
const T * CP::PartonDecorator::findDecorator ( const std::unordered_map< std::string, T > & decorators,
const std::string & name ) const
inlineprivate

Look up a decorator by bare name; throws if it was not initialized.

Definition at line 508 of file DecoratorHelpers.h.

509 {
510 const std::string key = fullName(name);
511 auto it = decorators.find(key);
512 if (it != decorators.end())
513 return &it->second;
514 throw std::runtime_error("Decorator with name " + key + " not found.");
515 }
std::string fullName(const std::string &name) const
Returns the full (prefixed) decorator key for internal use.

◆ fullName()

std::string CP::PartonDecorator::fullName ( const std::string & name) const
inlineprivate

Returns the full (prefixed) decorator key for internal use.

Definition at line 502 of file DecoratorHelpers.h.

502 {
503 return m_prefix.empty() ? name : m_prefix + "_" + name;
504 }
std::string m_prefix
Prefix prepended to all decorator names.

◆ getFloatDecorator()

const SG::Decorator< float > * CP::PartonDecorator::getFloatDecorator ( const std::string & name) const
inline

Retrieve a pointer to a float decorator by bare name.

Exceptions
std::runtime_errorif the decorator is not found.

Definition at line 370 of file DecoratorHelpers.h.

370 {
372 }
const T * findDecorator(const std::unordered_map< std::string, T > &decorators, const std::string &name) const
Look up a decorator by bare name; throws if it was not initialized.
std::unordered_map< std::string, SG::Decorator< float > > floatDecorators

◆ getIntDecorator()

const SG::Decorator< int > * CP::PartonDecorator::getIntDecorator ( const std::string & name) const
inline

Retrieve a pointer to an integer decorator by bare name.

Exceptions
std::runtime_errorif the decorator is not found.

Definition at line 353 of file DecoratorHelpers.h.

353 {
355 }
std::unordered_map< std::string, SG::Decorator< int > > intDecorators

◆ getVectorFloatDecorator()

const SG::Decorator< std::vector< float > > * CP::PartonDecorator::getVectorFloatDecorator ( const std::string & name) const
inline

Retrieve a pointer to a vector-of-float decorator by bare name.

Exceptions
std::runtime_errorif the decorator is not found.

Definition at line 378 of file DecoratorHelpers.h.

379 {
381 }
std::unordered_map< std::string, SG::Decorator< std::vector< float > > > vectorfloatDecorators

◆ getVectorIntDecorator()

const SG::Decorator< std::vector< int > > * CP::PartonDecorator::getVectorIntDecorator ( const std::string & name) const
inline

Retrieve a pointer to a vector-of-int decorator by bare name.

Exceptions
std::runtime_errorif the decorator is not found.

Definition at line 361 of file DecoratorHelpers.h.

362 {
364 }
std::unordered_map< std::string, SG::Decorator< std::vector< int > > > vectorintDecorators

◆ initializeFloatDecorator() [1/2]

void CP::PartonDecorator::initializeFloatDecorator ( const std::string & name)
inline

Initialize a float decorator by bare name.

Definition at line 267 of file DecoratorHelpers.h.

267 {
268 const std::string key = fullName(name);
269 floatDecorators.try_emplace(key, key);
270 clearCaches();
271 }
void clearCaches()
Invalidate the per-prefix bundles, e.g. after new decorators were added.

◆ initializeFloatDecorator() [2/2]

void CP::PartonDecorator::initializeFloatDecorator ( const std::vector< std::string > & names)
inline

Initialize multiple float decorators by a list of bare names.

Definition at line 281 of file DecoratorHelpers.h.

281 {
282 for (const auto& name : names)
284 }
static const EventInfo_v1::Accessor< std::vector< std::string > > names("streamTagNames")
void initializeFloatDecorator(const std::string &name)
Initialize a float decorator by bare name.

◆ initializeIntDecorator() [1/2]

void CP::PartonDecorator::initializeIntDecorator ( const std::string & name)
inline

Initialize an integer decorator by bare name.

Definition at line 328 of file DecoratorHelpers.h.

328 {
329 const std::string key = fullName(name);
330 intDecorators.try_emplace(key, key);
331 clearCaches();
332 }

◆ initializeIntDecorator() [2/2]

void CP::PartonDecorator::initializeIntDecorator ( const std::vector< std::string > & names)
inline

Initialize multiple integer decorators by a list of bare names.

Definition at line 342 of file DecoratorHelpers.h.

342 {
343 for (const auto& name : names)
345 }
void initializeIntDecorator(const std::string &name)
Initialize an integer decorator by bare name.

◆ initializeParticleDecorators()

void CP::PartonDecorator::initializeParticleDecorators ( const std::string & prefix)
inline

Initialize pt, eta, phi, m float and pdgId int decorators for a bare prefix.

Definition at line 302 of file DecoratorHelpers.h.

302 {
304 initializeIntDecorator(prefix + "_pdgId");
305 }
void initializePtEtaPhiMDecorator(const std::string &prefix)
Initialize pt, eta, phi, m float decorators for a bare prefix.

◆ initializePtEtaPhiMDecorator()

void CP::PartonDecorator::initializePtEtaPhiMDecorator ( const std::string & prefix)
inline

Initialize pt, eta, phi, m float decorators for a bare prefix.

Parameters
prefixBare prefix (e.g. "MC_Z_beforeFSR"); "_pt" etc. are appended.

Definition at line 291 of file DecoratorHelpers.h.

291 {
292 initializeFloatDecorator(prefix + "_pt");
293 initializeFloatDecorator(prefix + "_eta");
294 initializeFloatDecorator(prefix + "_phi");
295 initializeFloatDecorator(prefix + "_m");
296 }

◆ initializeVectorFloatDecorator()

void CP::PartonDecorator::initializeVectorFloatDecorator ( const std::string & name)
inline

Initialize a vector-of-float decorator by bare name.

Definition at line 274 of file DecoratorHelpers.h.

274 {
275 const std::string key = fullName(name);
276 vectorfloatDecorators.try_emplace(key, key);
277 clearCaches();
278 }

◆ initializeVectorIntDecorator()

void CP::PartonDecorator::initializeVectorIntDecorator ( const std::string & name)
inline

Initialize a vector-of-int decorator by bare name.

Definition at line 335 of file DecoratorHelpers.h.

335 {
336 const std::string key = fullName(name);
337 vectorintDecorators.try_emplace(key, key);
338 clearCaches();
339 }

◆ initializeVectorParticleDecorators()

void CP::PartonDecorator::initializeVectorParticleDecorators ( const std::string & prefix)
inline

Initialize vector pt, eta, phi, m float and pdgId int decorators for a bare prefix.

Definition at line 322 of file DecoratorHelpers.h.

322 {
324 initializeVectorIntDecorator(prefix + "_pdgId");
325 }
void initializeVectorIntDecorator(const std::string &name)
Initialize a vector-of-int decorator by bare name.
void initializeVectorPtEtaPhiMDecorator(const std::string &prefix)
Initialize vector pt, eta, phi, m float decorators for a bare prefix.

◆ initializeVectorPtEtaPhiMDecorator()

void CP::PartonDecorator::initializeVectorPtEtaPhiMDecorator ( const std::string & prefix)
inline

Initialize vector pt, eta, phi, m float decorators for a bare prefix.

Definition at line 311 of file DecoratorHelpers.h.

311 {
312 initializeVectorFloatDecorator(prefix + "_pt");
313 initializeVectorFloatDecorator(prefix + "_eta");
314 initializeVectorFloatDecorator(prefix + "_phi");
315 initializeVectorFloatDecorator(prefix + "_m");
316 }
void initializeVectorFloatDecorator(const std::string &name)
Initialize a vector-of-float decorator by bare name.

◆ particleDecorators()

const ParticleDecorators & CP::PartonDecorator::particleDecorators ( const std::string & prefix)
inlineprivate

Resolve (once) the scalar decorators belonging to a bare prefix.

Exceptions
std::runtime_errorif a kinematic decorator is not found.

Definition at line 525 of file DecoratorHelpers.h.

525 {
526 auto it = m_particleCache.find(prefix);
527 if (it != m_particleCache.end())
528 return it->second;
530 decs.pt = getFloatDecorator(prefix + "_pt");
531 decs.eta = getFloatDecorator(prefix + "_eta");
532 decs.phi = getFloatDecorator(prefix + "_phi");
533 decs.m = getFloatDecorator(prefix + "_m");
534 auto pdgIdIt = intDecorators.find(fullName(prefix + "_pdgId"));
535 if (pdgIdIt != intDecorators.end())
536 decs.pdgId = &pdgIdIt->second;
537 return m_particleCache.emplace(prefix, decs).first->second;
538 }
const SG::Decorator< float > * pt

◆ pdgIdDecorator()

const SG::Decorator< int > & CP::PartonDecorator::pdgIdDecorator ( const ParticleDecorators & decs,
const std::string & prefix ) const
inlineprivate

The pdgId decorator of a bundle; throws if it was not initialized.

Definition at line 557 of file DecoratorHelpers.h.

558 {
559 if (!decs.pdgId)
560 throw std::runtime_error("Decorator with name " +
561 fullName(prefix + "_pdgId") + " not found.");
562 return *decs.pdgId;
563 }

◆ setEventInfo()

void CP::PartonDecorator::setEventInfo ( const xAOD::EventInfo * eventInfo)
inline

Set the EventInfo object to decorate for the current event.

Must be called once per event before any decorate*() calls. The pointer is not owned and must remain valid for the duration of event processing.

Parameters
eventInfoPointer to the current xAOD::EventInfo.

Definition at line 260 of file DecoratorHelpers.h.

260 {
261 m_eventInfo = eventInfo;
262 }

◆ setPrefix()

void CP::PartonDecorator::setPrefix ( const std::string & prefix)
inline

Set the prefix prepended to all decorator names.

Must be called before any initialize*() calls. All public methods accept bare names (e.g. "MC_Z_beforeFSR") and the prefix is applied internally.

Parameters
prefixThe prefix string (e.g. "Tzq"). May be empty.

Definition at line 247 of file DecoratorHelpers.h.

247 {
249 clearCaches();
250 }

◆ vectorParticleDecorators()

const VectorParticleDecorators & CP::PartonDecorator::vectorParticleDecorators ( const std::string & prefix)
inlineprivate

Resolve (once) the vector decorators belonging to a bare prefix.

Exceptions
std::runtime_errorif a decorator is not found.

Definition at line 542 of file DecoratorHelpers.h.

543 {
544 auto it = m_vectorParticleCache.find(prefix);
545 if (it != m_vectorParticleCache.end())
546 return it->second;
548 decs.pt = getVectorFloatDecorator(prefix + "_pt");
549 decs.eta = getVectorFloatDecorator(prefix + "_eta");
550 decs.phi = getVectorFloatDecorator(prefix + "_phi");
551 decs.m = getVectorFloatDecorator(prefix + "_m");
552 decs.pdgId = getVectorIntDecorator(prefix + "_pdgId");
553 return m_vectorParticleCache.emplace(prefix, decs).first->second;
554 }
const SG::Decorator< std::vector< float > > * pt
const SG::Decorator< std::vector< int > > * getVectorIntDecorator(const std::string &name) const
Retrieve a pointer to a vector-of-int decorator by bare name.
const SG::Decorator< std::vector< float > > * getVectorFloatDecorator(const std::string &name) const
Retrieve a pointer to a vector-of-float decorator by bare name.

Member Data Documentation

◆ floatDecorators

std::unordered_map<std::string, SG::Decorator<float> > CP::PartonDecorator::floatDecorators

Definition at line 232 of file DecoratorHelpers.h.

◆ intDecorators

std::unordered_map<std::string, SG::Decorator<int> > CP::PartonDecorator::intDecorators

Definition at line 235 of file DecoratorHelpers.h.

◆ m_eventInfo

const xAOD::EventInfo* CP::PartonDecorator::m_eventInfo
private
Initial value:
{
nullptr}

Target object; set once per event via setEventInfo().

Definition at line 490 of file DecoratorHelpers.h.

490 {
491 nullptr};

◆ m_particleCache

std::unordered_map<std::string, ParticleDecorators> CP::PartonDecorator::m_particleCache
private

Per-prefix decorator bundles, keyed by bare prefix.

The pointers stay valid because decorators are never erased or replaced once created.

Definition at line 495 of file DecoratorHelpers.h.

◆ m_prefix

std::string CP::PartonDecorator::m_prefix
private

Prefix prepended to all decorator names.

Definition at line 489 of file DecoratorHelpers.h.

◆ m_vectorParticleCache

std::unordered_map<std::string, VectorParticleDecorators> CP::PartonDecorator::m_vectorParticleCache
private

Definition at line 497 of file DecoratorHelpers.h.

◆ vectorfloatDecorators

std::unordered_map<std::string, SG::Decorator<std::vector<float> > > CP::PartonDecorator::vectorfloatDecorators

Definition at line 234 of file DecoratorHelpers.h.

◆ vectorintDecorators

std::unordered_map<std::string, SG::Decorator<std::vector<int> > > CP::PartonDecorator::vectorintDecorators

Definition at line 237 of file DecoratorHelpers.h.


The documentation for this struct was generated from the following file: