MUSX Document Model
Loading...
Searching...
No Matches
musx::dom::OptionsPool Class Reference

A pool that manages collections of OptionsBase objects that have no Cmper value. More...

#include <ObjectPool.h>

+ Inheritance diagram for musx::dom::OptionsPool:

Public Member Functions

void add (const std::string &nodeName, const std::shared_ptr< OptionsBase > &instance)
 Scalar version of ObjectPool::add.
 
template<typename T >
std::vector< std::shared_ptr< T > > getArray () const
 Scalar version of ObjectPool::getArray.
 
template<typename T >
std::shared_ptr< T > get () const
 Scalar version of ObjectPool::get.
 

Additional Inherited Members

- Protected Types inherited from musx::dom::ObjectPool< OptionsBase >
using ObjectPtr = std::shared_ptr< OptionsBase >
 shared pointer to ObjectBaseType
 
virtual ~ObjectPool ()=default
 virtual destructor
 
void add (const ObjectKey &key, ObjectPtr object)
 Adds an OthersBase object to the pool.
 
std::vector< std::shared_ptr< T > > getArray (const ObjectKey &key) const
 Retrieves a vector of objects of a specific type from the pool.
 
std::vector< std::shared_ptr< T > > getArrayForPart (const ObjectKey &key) const
 Retrieves a vector of objects of a specific type from the pool.
 
std::shared_ptr< T > get (const ObjectKey &key) const
 Retrieves the first (and usually only) object of a specific type from the pool.
 
std::shared_ptr< T > getEffectiveForPart (const ObjectKey &key) const
 Retrieves the first (and usually only) object of a specific type from the pool for a part.
 

Detailed Description

A pool that manages collections of OptionsBase objects that have no Cmper value.