Mantid
Loading...
Searching...
No Matches
Public Member Functions | Private Member Functions | List of all members
Mantid::Kernel::AbstractInstantiator< Base, Args > Class Template Referenceabstract

The base class for instantiators. More...

#include <Instantiator.h>

Public Member Functions

 AbstractInstantiator ()=default
 Creates the AbstractInstantiator. More...
 
virtual std::shared_ptr< Base > createInstance (Args... args) const =0
 Creates an instance of a concrete subclass of Base. More...
 
virtual Base * createUnwrappedInstance (Args... args) const =0
 Creates an instance of a concrete subclass of Base, which is not wrapped in a shared_ptr. More...
 
virtual ~AbstractInstantiator ()=default
 Destroys the AbstractInstantiator. More...
 

Private Member Functions

 AbstractInstantiator (const AbstractInstantiator &)
 Private copy constructor. More...
 
AbstractInstantiatoroperator= (const AbstractInstantiator &)
 Private assignment operator. More...
 

Detailed Description

template<class Base, typename... Args>
class Mantid::Kernel::AbstractInstantiator< Base, Args >

The base class for instantiators.

Definition at line 23 of file Instantiator.h.

Constructor & Destructor Documentation

◆ AbstractInstantiator() [1/2]

template<class Base , typename... Args>
Mantid::Kernel::AbstractInstantiator< Base, Args >::AbstractInstantiator ( )
default

Creates the AbstractInstantiator.

◆ ~AbstractInstantiator()

template<class Base , typename... Args>
virtual Mantid::Kernel::AbstractInstantiator< Base, Args >::~AbstractInstantiator ( )
virtualdefault

Destroys the AbstractInstantiator.

◆ AbstractInstantiator() [2/2]

template<class Base , typename... Args>
Mantid::Kernel::AbstractInstantiator< Base, Args >::AbstractInstantiator ( const AbstractInstantiator< Base, Args > &  )
private

Private copy constructor.

Member Function Documentation

◆ createInstance()

template<class Base , typename... Args>
virtual std::shared_ptr< Base > Mantid::Kernel::AbstractInstantiator< Base, Args >::createInstance ( Args...  args) const
pure virtual

Creates an instance of a concrete subclass of Base.

Implemented in Mantid::Kernel::Instantiator< C, Base, Args >.

◆ createUnwrappedInstance()

template<class Base , typename... Args>
virtual Base * Mantid::Kernel::AbstractInstantiator< Base, Args >::createUnwrappedInstance ( Args...  args) const
pure virtual

Creates an instance of a concrete subclass of Base, which is not wrapped in a shared_ptr.

Implemented in Mantid::Kernel::Instantiator< C, Base, Args >.

◆ operator=()

template<class Base , typename... Args>
AbstractInstantiator & Mantid::Kernel::AbstractInstantiator< Base, Args >::operator= ( const AbstractInstantiator< Base, Args > &  )
private

Private assignment operator.


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