Trax3 3.1.0
trax track library
Loading...
Searching...
No Matches
trax::CollectionDecorator< BaseDecorator > Class Template Reference

A decorator for trax collections. More...

#include <C:/Trend/Development/Trax3/Code/trax/collections/CollectionDecorator.h>

Inheritance diagram for trax::CollectionDecorator< BaseDecorator >:

Public Types

Type definitions

These are the type definitions expected to be defined by base decorators or the decoree itself.

typedef BaseDecorator::InterfaceType InterfaceType
typedef BaseDecorator::collection_type collection_type
typedef BaseDecorator::value_type value_type

Public Member Functions

 CollectionDecorator (std::shared_ptr< InterfaceType > pComponent)
 Decorator constructor.
Collection member function forwarding.
const char * TypeName () const noexcept override
IDType Add (std::shared_ptr< value_type > pItem) override
IDType AddRelaxed (std::shared_ptr< value_type > pItem) override
bool Remove (value_type *pItem, bool zeroIDs=false) override
int Take (collection_type &ct) override
void Clear () override
int Count () const override
collection_type::iterator begin () override
collection_type::const_iterator begin () const override
collection_type::const_iterator cbegin () const override
collection_type::iterator end () override
collection_type::const_iterator end () const override
collection_type::const_iterator cend () const override
std::shared_ptr< value_type > GetFirst () const override
std::shared_ptr< value_type > GetNext (const std::shared_ptr< value_type > &pItem) const override
std::shared_ptr< value_type > GetLast () const override
std::shared_ptr< value_type > GetPrevious (const std::shared_ptr< value_type > &pItem) const override
std::shared_ptr< value_type > Get (IDType id) const override
std::shared_ptr< value_type > Get (const std::string &name) const override
void PushActive (IDType id) override
void PopActive () override
std::shared_ptr< value_type > GetActive () const override
bool IsMember (const value_type &item) const override
bool IsMember (IDType id) const override
void ShiftIDs (int offset) override
IDType MaxID () const override
IDType MinID () const override

Detailed Description

template<class BaseDecorator>
class trax::CollectionDecorator< BaseDecorator >

A decorator for trax collections.

With trax decorators can get used to augment trax objects with additional behaviour and services. Derive your own class from the decorator and overwrite its methods. Create your decorator with the trax object and supply it to the library insted of the original object.

Constructor & Destructor Documentation

◆ CollectionDecorator()

template<class BaseDecorator>
trax::CollectionDecorator< BaseDecorator >::CollectionDecorator ( std::shared_ptr< InterfaceType > pComponent)
inline

Decorator constructor.

Parameters
pComponentPointer to object that is to be decorated.

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