|
| DetailsPool () |
| Constructor.
|
|
void | add (const std::string &nodeName, const std::shared_ptr< DetailsBase > &instance) |
| DetailsPool version of ObjectPool::add.
|
|
template<typename T > |
std::vector< std::shared_ptr< T > > | getArray (Cmper partId) const |
| version of ObjectPool::getArray for getting all of them
|
|
template<typename T , typename std::enable_if_t<!std::is_base_of_v< EntryDetailsBase, T >, int > = 0> |
std::vector< std::shared_ptr< T > > | getArray (Cmper partId, Cmper cmper1, std::optional< Cmper > cmper2=std::nullopt) const |
| DetailsPool version of ObjectPool::getArray.
|
|
template<typename T , typename std::enable_if_t< std::is_base_of_v< EntryDetailsBase, T >, int > = 0> |
std::vector< std::shared_ptr< T > > | getArray (Cmper partId, EntryNumber entnum) const |
| EntryDetailsPool version of ObjectPool::getArray.
|
|
template<typename T , typename std::enable_if_t<!std::is_base_of_v< EntryDetailsBase, T >, int > = 0> |
std::shared_ptr< T > | get (Cmper partId, Cmper cmper1, Cmper cmper2, std::optional< Inci > inci=std::nullopt) const |
| DetailsPool version of ObjectPool::get.
|
|
template<typename T , typename std::enable_if_t< std::is_base_of_v< EntryDetailsBase, T >, int > = 0> |
std::shared_ptr< T > | get (Cmper partId, EntryNumber entnum, std::optional< Inci > inci=std::nullopt) const |
| EntryDetailsPool version of ObjectPool::get.
|
|
template<typename T , typename std::enable_if_t< std::is_base_of_v< NoteDetailsBase, T >, int > = 0> |
std::shared_ptr< T > | getForNote (const NoteInfoPtr ¬eInfo, const std::optional< Cmper > &forPartId=std::nullopt) |
| Returns the detail for a particular note.
|
|
|
using | ObjectPtr = std::shared_ptr< DetailsBase > |
| shared pointer to ObjectBaseType
|
|
| ObjectPool (const std::unordered_map< std::string, dom::Base::ShareMode > &knownShareModes={}) |
| Constructs the object pool.
|
|
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.
|
|
A pool that manages collections of DetailsBase
objects, organized by XML node names and Cmper
values.
Examples of OneCmperBase
classes are OthersBase and TextsBase.