Public Member Functions | Static Private Member Functions | Private Attributes | List of all members
PLMD::ActionRegistration< ActionClass > Class Template Reference

Each instance of this specialized class represents an action that can be called with the specified directive. More...

#include <ActionRegister.h>

Public Member Functions

 ActionRegistration (std::string_view directive)
 On construction register the ActionClass with the wanted directive. More...
 
 ~ActionRegistration ()
 On destruction deregister the ActionClass (useful when you unload a shared object) More...
 

Static Private Member Functions

static std::unique_ptr< Actioncreate (const ActionOptions &ao)
 

Private Attributes

ActionRegister::ID id
 

Detailed Description

template<typename ActionClass>
class PLMD::ActionRegistration< ActionClass >

Each instance of this specialized class represents an action that can be called with the specified directive.

As soon it goes out of scope it will deregister the directive from the singleton ActionRegister

Constructor & Destructor Documentation

◆ ActionRegistration()

template<typename ActionClass >
PLMD::ActionRegistration< ActionClass >::ActionRegistration ( std::string_view  directive)
inline

On construction register the ActionClass with the wanted directive.

◆ ~ActionRegistration()

template<typename ActionClass >
PLMD::ActionRegistration< ActionClass >::~ActionRegistration ( )
inline

On destruction deregister the ActionClass (useful when you unload a shared object)

Member Function Documentation

◆ create()

template<typename ActionClass >
static std::unique_ptr<Action> PLMD::ActionRegistration< ActionClass >::create ( const ActionOptions ao)
inlinestaticprivate

Member Data Documentation

◆ id

template<typename ActionClass >
ActionRegister::ID PLMD::ActionRegistration< ActionClass >::id
private

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