xentara-plugin v2.0.3
The Xentara Plugin Framework
Loading...
Searching...
No Matches
xentara::skill::ElementFactory Class Referenceabstract

A factory for creating skill elements. More...

#include <xentara/skill/ElementFactory.hpp>

+ Inheritance diagram for xentara::skill::ElementFactory:

Public Member Functions

virtual ~ElementFactory ()=0
 Virtual destructor.
 
template<std::derived_from< Element > Derived, typename... Arguments>
auto makeShared (Arguments &&... arguments) const -> std::shared_ptr< Derived >
 Creates a shared pointer containing an element.
 
- Public Member Functions inherited from xentara::utils::tools::Unique
constexpr Unique () noexcept=default
 
constexpr Unique (Unique &&) noexcept=default
 
constexpr Uniqueoperator= (Unique &&) noexcept=default
 
 Unique (const Unique &)=delete
 
Uniqueoperator= (const Unique &)=delete
 

Detailed Description

A factory for creating skill elements.

Constructor & Destructor Documentation

◆ ~ElementFactory()

xentara::skill::ElementFactory::~ElementFactory ( )
pure virtualdefault

Virtual destructor.

Member Function Documentation

◆ makeShared()

template<std::derived_from< Element > Derived, typename... Arguments>
auto xentara::skill::ElementFactory::makeShared ( Arguments &&...  arguments) const -> std::shared_ptr<Derived>

Creates a shared pointer containing an element.

Template Parameters
DerivedThe class of the element to be created
Parameters
argumentsThe arguments for the constructor
Returns