|
pianod2
multisource multiuser scriptable networked music player
|
Base class for storing lists of thingies, which need to be reference counted accurately. More...
#include <retainedlist.h>


Public Member Functions | |
| ~ThingieList () | |
| Release items when being destroyed. More... | |
| ThingieList ()=default | |
| ThingieList (const ThingieList &list) | |
| Copy-construct items into this list. More... | |
| ThingieList (ThingieList &&list) | |
| Move-construct items into this list. More... | |
| ThingieList & | operator= (const ThingieList &list) |
| Copy assign into the list. More... | |
| ThingieList & | operator= (ThingieList &&list) |
| Move assign into the list. More... | |
| template<class... Args> | |
| iterator | emplace (const_iterator pos, Args &&...args)=delete |
| template<class... Args> | |
| void | emplace_back (Args &&...args)=delete |
| iterator | insert (const_iterator pos, std::initializer_list< MusicThingie * >)=delete |
| void | clear (void) |
| Replace all the usual methods with ones that manage object retention. More... | |
| iterator | erase (const_iterator target) |
| iterator | erase (const_iterator first, const_iterator last) |
| iterator | insert (const_iterator where, MusicThingie *const &add) |
| iterator | insert (const_iterator where, MusicThingie *&&add) |
| template<class InputIterator > | |
| iterator | insert (const_iterator where, InputIterator first, InputIterator last) |
| void | push_back (MusicThingie *add) |
| template<typename InsertionType > | |
| void | push_back (const Retainer< InsertionType > &add) |
| void | push_front (MusicThingie *add) |
| template<typename InsertionType > | |
| void | push_front (const Retainer< InsertionType > &add) |
| void | pop_back (void) |
| void | pop_front (void) |
| void | resize (size_type)=delete |
| void | join (const ThingieList &from) |
| Append another thingielist to this one. More... | |
| void | join (ThingieList &&from) |
| Append another thingielist to this one. More... | |
| void | limitTo (MusicThingie::Type type) |
| Purge anything that isn't a certain type. More... | |
| bool | purge (const Media::Source *const source) |
| Purge any items from a particular source from the list. More... | |
Private Types | |
| using | list_type = std::vector< MusicThingie * > |
Base class for storing lists of thingies, which need to be reference counted accurately.
All operations automatically retain & release the objects stored herein.
|
private |
| ThingieList::~ThingieList | ( | void | ) |
Release items when being destroyed.

|
default |
| ThingieList::ThingieList | ( | const ThingieList & | list | ) |
Copy-construct items into this list.
Let the base constructor deal with copying, so it optimizes for efficiency; afterward we just need to increment the reference counts.
| list | The list to construct with. |

| ThingieList::ThingieList | ( | ThingieList && | list | ) |
Move-construct items into this list.
| list | The list to construct with. |
| void ThingieList::clear | ( | void | ) |
Replace all the usual methods with ones that manage object retention.
Clear out the contents.


|
delete |
|
delete |
| ThingieList::iterator ThingieList::erase | ( | const_iterator | first, |
| const_iterator | last | ||
| ) |
| ThingieList::iterator ThingieList::erase | ( | const_iterator | target | ) |

|
delete |

|
inline |

| iterator ThingieList::insert | ( | const_iterator | where, |
| MusicThingie *&& | add | ||
| ) |
| ThingieList::iterator ThingieList::insert | ( | const_iterator | where, |
| MusicThingie *const & | add | ||
| ) |

| void ThingieList::join | ( | const ThingieList & | from | ) |
Append another thingielist to this one.
| from | The list to append. |

| void ThingieList::join | ( | ThingieList && | from | ) |
Append another thingielist to this one.
| from | The list to append. |
| void ThingieList::limitTo | ( | MusicThingie::Type | type | ) |
Purge anything that isn't a certain type.

| ThingieList & ThingieList::operator= | ( | const ThingieList & | list | ) |
Copy assign into the list.
| list | The list to construct from. |


| ThingieList & ThingieList::operator= | ( | ThingieList && | list | ) |
Move assign into the list.
| list | The list to move from. |
| void ThingieList::pop_back | ( | void | ) |

| void ThingieList::pop_front | ( | void | ) |


| bool ThingieList::purge | ( | const Media::Source *const | source | ) |
Purge any items from a particular source from the list.
| source | The source whose items to remove. |


|
inline |

| void ThingieList::push_back | ( | MusicThingie * | add | ) |


|
inline |

| void ThingieList::push_front | ( | MusicThingie * | add | ) |


|
delete |