ATLAS Offline Software
Classes | Public Member Functions | Static Public Member Functions | Private Member Functions | Static Private Member Functions | List of all members
Pythia8_UserHooks::UserHooksFactory Class Reference

#include <UserHooksFactory.h>

Collaboration diagram for Pythia8_UserHooks::UserHooksFactory:

Classes

class  Creator
 
class  ICreator
 

Public Member Functions

template<>
std::map< std::string, double > & userSettings ()
 

Static Public Member Functions

static UserHooks * create (const std::string &hookName)
 
template<typename T >
static std::map< std::string, T > & userSettings ()
 
static std::map< std::string, double > & userParams ()
 
static std::map< std::string, int > & userModes ()
 
static std::map< std::string, std::string > & userWords ()
 

Private Member Functions

 UserHooksFactory ()
 

Static Private Member Functions

static std::map< std::string, const ICreator * > & s_creators ()
 static function to instantiate map of string name Vs. creator object on first use More...
 

Detailed Description

Definition at line 35 of file UserHooksFactory.h.

Constructor & Destructor Documentation

◆ UserHooksFactory()

Pythia8_UserHooks::UserHooksFactory::UserHooksFactory ( )
inlineprivate

Definition at line 43 of file UserHooksFactory.h.

43 {};

Member Function Documentation

◆ create()

UserHooks * Pythia8_UserHooks::UserHooksFactory::create ( const std::string &  hookName)
static

Definition at line 10 of file UserHooksFactory.cxx.

10  {
11  std::map<std::string, const ICreator*>::const_iterator it = s_creators().find(name);
12  if(it == s_creators().end()){
13  throw std::runtime_error("Pythia 8 UserHooksFactory: cannot create user hook " + name);
14  }
15  return it->second->create();
16  }

◆ s_creators()

std::map< std::string, const UserHooksFactory::ICreator * > & Pythia8_UserHooks::UserHooksFactory::s_creators ( )
staticprivate

static function to instantiate map of string name Vs. creator object on first use

Definition at line 19 of file UserHooksFactory.cxx.

19  {
20  static std::map<std::string, const UserHooksFactory::ICreator*> creators;
21  return creators;
22  }

◆ userModes()

static std::map<std::string, int>& Pythia8_UserHooks::UserHooksFactory::userModes ( )
static

◆ userParams()

static std::map<std::string, double>& Pythia8_UserHooks::UserHooksFactory::userParams ( )
static

◆ userSettings() [1/2]

template<>
std::map< std::string, std::string > & Pythia8_UserHooks::UserHooksFactory::userSettings ( )

Definition at line 25 of file UserHooksFactory.cxx.

25  {
26  static std::map<std::string, double> settings;
27  return settings;
28  }

◆ userSettings() [2/2]

template<typename T >
static std::map<std::string, T>& Pythia8_UserHooks::UserHooksFactory::userSettings ( )
static

◆ userWords()

static std::map<std::string, std::string>& Pythia8_UserHooks::UserHooksFactory::userWords ( )
static

The documentation for this class was generated from the following files:
skel.it
it
Definition: skel.GENtoEVGEN.py:423
mergePhysValFiles.end
end
Definition: DataQuality/DataQualityUtils/scripts/mergePhysValFiles.py:93
Pythia8_UserHooks::UserHooksFactory::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: UserHooksFactory.cxx:19
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195