ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
Pythia8_UserResonance::UserResonanceFactory::Creator< T > Class Template Reference

#include <UserResonanceFactory.h>

Inheritance diagram for Pythia8_UserResonance::UserResonanceFactory::Creator< T >:
Collaboration diagram for Pythia8_UserResonance::UserResonanceFactory::Creator< T >:

Public Member Functions

 Creator (const std::string &name)
 
 ~Creator ()
 
std::shared_ptr< ResonanceWidths > create (int idResIn) const
 

Private Attributes

std::string m_name
 

Detailed Description

template<class T>
class Pythia8_UserResonance::UserResonanceFactory::Creator< T >

Definition at line 42 of file UserResonanceFactory.h.

Constructor & Destructor Documentation

◆ Creator()

template<class T >
Pythia8_UserResonance::UserResonanceFactory::Creator< T >::Creator ( const std::string &  name)
inline

Definition at line 45 of file UserResonanceFactory.h.

45  {
46  m_name = name;
48  }

◆ ~Creator()

template<class T >
Pythia8_UserResonance::UserResonanceFactory::Creator< T >::~Creator ( )
inline

Definition at line 50 of file UserResonanceFactory.h.

50  {
51  if(s_creators()[m_name] == this){
52  s_creators().erase(m_name);
53  }
54  }

Member Function Documentation

◆ create()

template<class T >
std::shared_ptr<ResonanceWidths> Pythia8_UserResonance::UserResonanceFactory::Creator< T >::create ( int  idResIn) const
inlinevirtual

Implements Pythia8_UserResonance::UserResonanceFactory::ICreator.

Definition at line 56 of file UserResonanceFactory.h.

56  {
57  return std::make_shared<T>(idResIn);
58  }

Member Data Documentation

◆ m_name

template<class T >
std::string Pythia8_UserResonance::UserResonanceFactory::Creator< T >::m_name
private

Definition at line 62 of file UserResonanceFactory.h.


The documentation for this class was generated from the following file:
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
Pythia8_UserResonance::UserResonanceFactory::s_creators
static std::map< std::string, const ICreator * > & s_creators()
static function to instantiate map of string name Vs. creator object on first use
Definition: UserResonanceFactory.cxx:24
Pythia8_UserResonance::UserResonanceFactory::Creator::m_name
std::string m_name
Definition: UserResonanceFactory.h:62