Darwin Neuroevolution Framework
Public Member Functions | List of all members
core::ImplementationsSet< INTERFACE > Class Template Reference

A set of instances implementing common interface (primarily intended to support registering named factory objects) More...

#include <modules.h>

Inheritance diagram for core::ImplementationsSet< INTERFACE >:
core::NonCopyable

Public Member Functions

template<class FACTORY >
void add (const string &name)
 Registers a concrete implementation.
 
INTERFACE * find (const string &name) const
 Returns a previously registered instance (or nullptr if the name doesn't map to a registered instance)
 
auto begin () const
 Registered instances begin iterator.
 
auto end () const
 Registered instances end iterator.
 
bool empty () const
 Returns true if the set of registered instances is empty.
 

Detailed Description

template<class INTERFACE>
class core::ImplementationsSet< INTERFACE >

A set of instances implementing common interface (primarily intended to support registering named factory objects)


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