ATLAS Offline Software
Loading...
Searching...
No Matches
Pythia8_UserHooks::UserSetting< T > Class Template Reference

#include <UserSetting.h>

Collaboration diagram for Pythia8_UserHooks::UserSetting< T >:

Public Member Functions

 UserSetting (const std::string &name, const T &defaultValue)
operator() (Pythia8::Settings *settingsPtr)

Protected Attributes

std::string m_paramName
m_param
Pythia8::Settings * m_settingsPtr
bool m_retrieved

Private Member Functions

uncachedRetrieve ()
double uncachedRetrieve ()
int uncachedRetrieve ()
bool uncachedRetrieve ()
std::string uncachedRetrieve ()

Detailed Description

template<class T>
class Pythia8_UserHooks::UserSetting< T >

Definition at line 17 of file UserSetting.h.

Constructor & Destructor Documentation

◆ UserSetting()

template<class T>
Pythia8_UserHooks::UserSetting< T >::UserSetting ( const std::string & name,
const T & defaultValue )
inline

Member Function Documentation

◆ operator()()

template<class T>
T Pythia8_UserHooks::UserSetting< T >::operator() ( Pythia8::Settings * settingsPtr)
inline

Definition at line 33 of file UserSetting.h.

33 {
34
35 if(m_settingsPtr == 0 && settingsPtr == 0) throw std::runtime_error("settingsPtr is not yet initialised!");
36
38
41 m_retrieved = true;
42 return m_param;
43 };

◆ uncachedRetrieve() [1/5]

template<class T>
T Pythia8_UserHooks::UserSetting< T >::uncachedRetrieve ( )
private

◆ uncachedRetrieve() [2/5]

double Pythia8_UserHooks::UserSetting< double >::uncachedRetrieve ( )
inlineprivate

Definition at line 59 of file UserSetting.h.

59 {
60 if(m_settingsPtr->isParm(m_paramName)){
61 return m_settingsPtr->parm(m_paramName);
62 }
63
64 throw std::runtime_error("UserSetting " + m_paramName + " does not exist!");
65 return m_param;
66 }

◆ uncachedRetrieve() [3/5]

int Pythia8_UserHooks::UserSetting< int >::uncachedRetrieve ( )
inlineprivate

Definition at line 69 of file UserSetting.h.

69 {
70 if(not m_settingsPtr->isMode(m_paramName)){
71 throw std::runtime_error("UserSetting " + m_paramName + " does not exist!");
72 }
73 return m_settingsPtr->mode(m_paramName);
74 }

◆ uncachedRetrieve() [4/5]

bool Pythia8_UserHooks::UserSetting< bool >::uncachedRetrieve ( )
inlineprivate

Definition at line 77 of file UserSetting.h.

77 {
78 if(not m_settingsPtr->isFlag(m_paramName)){
79 throw std::runtime_error("UserSetting " + m_paramName + " does not exist!");
80 }
81 return m_settingsPtr->flag(m_paramName);
82 }

◆ uncachedRetrieve() [5/5]

std::string Pythia8_UserHooks::UserSetting< std::string >::uncachedRetrieve ( )
inlineprivate

Definition at line 86 of file UserSetting.h.

86 {
87 if(not m_settingsPtr->isWord(m_paramName)){
88 throw std::runtime_error("UserSetting " + m_paramName + " does not exist!");
89 }
90 return m_settingsPtr->word(m_paramName);
91 }

Member Data Documentation

◆ m_param

template<class T>
T Pythia8_UserHooks::UserSetting< T >::m_param
protected

Definition at line 48 of file UserSetting.h.

◆ m_paramName

template<class T>
std::string Pythia8_UserHooks::UserSetting< T >::m_paramName
protected

Definition at line 47 of file UserSetting.h.

◆ m_retrieved

template<class T>
bool Pythia8_UserHooks::UserSetting< T >::m_retrieved
protected

Definition at line 50 of file UserSetting.h.

◆ m_settingsPtr

template<class T>
Pythia8::Settings* Pythia8_UserHooks::UserSetting< T >::m_settingsPtr
protected

Definition at line 49 of file UserSetting.h.


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