CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
List of all members | Public Types | Static Public Member Functions | Protected Member Functions | Static Private Member Functions
ThePEG::Proxy< T > Class Template Reference

#include <Proxy.h>

Inheritance diagram for ThePEG::Proxy< T >:
ThePEG::ProxyBase

Public Types

typedef Proxy Base
 
- Public Types inherited from ThePEG::ProxyBase
typedef unsigned long ProxyID
 

Static Public Member Functions

static std::shared_ptr< Tcreate ()
 
static std::shared_ptr< Tfind (ProxyID id)
 

Protected Member Functions

 Proxy (ProxyID id)
 

Static Private Member Functions

static ProxyBasector (ProxyID id)
 

Additional Inherited Members

- Public Member Functions inherited from ThePEG::ProxyBase
ProxyID getID () const
 
ProxyBaseoperator= (const ProxyBase &orig)=delete
 
 ProxyBase (const ProxyBase &orig)=delete
 
virtual ~ProxyBase ()
 

Detailed Description

template<class T>
class ThePEG::Proxy< T >

Definition at line 12 of file Proxy.h.

Member Typedef Documentation

◆ Base

template<class T>
typedef Proxy ThePEG::Proxy< T >::Base

Definition at line 43 of file Proxy.h.

Constructor & Destructor Documentation

◆ Proxy()

template<class T>
ThePEG::Proxy< T >::Proxy ( ProxyID  id)
inlineprotected

Definition at line 49 of file Proxy.h.

49 : ProxyBase(id) {}
ProxyBase(const ProxyBase &orig)=delete

Member Function Documentation

◆ create()

template<class T>
static std::shared_ptr<T> ThePEG::Proxy< T >::create ( )
inlinestatic

Definition at line 45 of file Proxy.h.

45 { return std::static_pointer_cast<T>(ProxyBase::create(&Proxy::ctor)); }
static ProxyBase * ctor(ProxyID id)
Definition: Proxy.h:52
static std::shared_ptr< ProxyBase > create(ctor_t ctor)
Definition: Proxy.cc:36
long double T

◆ ctor()

template<class T>
static ProxyBase* ThePEG::Proxy< T >::ctor ( ProxyID  id)
inlinestaticprivate

Definition at line 52 of file Proxy.h.

Referenced by ThePEG::Proxy< Proxy >::create().

52 { return new T(id); }
long double T

◆ find()

template<class T>
static std::shared_ptr<T> ThePEG::Proxy< T >::find ( ProxyID  id)
inlinestatic

Definition at line 46 of file Proxy.h.

46 { return std::dynamic_pointer_cast<T>(ProxyBase::find(id)); }
static std::shared_ptr< ProxyBase > find(ProxyID id)
Definition: Proxy.cc:50
long double T