arduino-audio-tools
Loading...
Searching...
No Matches
List< T > Class Template Reference

Double linked list. More...

#include <CodecOpusOgg.h>

Classes

class  Iterator
struct  Node

Public Member Functions

 List (Allocator &allocator=DefaultAllocator)
 Default constructor.
 List (Allocator &allocator=DefaultAllocator)
 Default constructor.
template<size_t N>
 List (const T(&a)[N], Allocator &allocator=DefaultAllocator)
 Constructor using array.
template<size_t N>
 List (const T(&a)[N], Allocator &allocator=DefaultAllocator)
 Constructor using array.
 List (List &ref)=default
 copy constructor
 List (List &ref)=default
 copy constructor
 ~List ()
 ~List ()
T & back ()
 Provides the last element.
T & back ()
 Provides the last element.
Iterator begin ()
Iterator begin ()
bool clear ()
bool clear ()
bool empty ()
bool empty ()
Iterator end ()
Iterator end ()
bool erase (Iterator it)
bool erase (Iterator it)
T & front ()
 Provides the first element.
T & front ()
 Provides the first element.
bool insert (Iterator it, const T &data)
bool insert (Iterator it, const T &data)
T & operator[] (int index)
T & operator[] (int index)
bool pop_back ()
bool pop_back ()
bool pop_back (T &data)
bool pop_back (T &data)
bool pop_front ()
bool pop_front ()
bool pop_front (T &data)
bool pop_front (T &data)
bool push_back (T data)
bool push_back (T data)
bool push_front (T data)
bool push_front (T data)
Iterator rbegin ()
Iterator rbegin ()
Iterator rend ()
Iterator rend ()
void setAllocator (Allocator &allocator)
void setAllocator (Allocator &allocator)
size_t size ()
size_t size ()
bool swap (List< T > &ref)
bool swap (List< T > &ref)

Protected Member Functions

Node * createNode ()
Node * createNode ()
void deleteNode (Node *p_delete)
void deleteNode (Node *p_delete)
Node * firstDataNode ()
Node * firstDataNode ()
Node * lastDataNode ()
Node * lastDataNode ()
void link ()
void link ()
void validate ()
void validate ()

Protected Attributes

Node first
Node last
Allocator * p_allocator = &DefaultAllocator
size_t record_count =0

Detailed Description

template<class T>
class audio_tools::audio_tools::List< T >

Double linked list.

Author
Phil Schatzmann
Template Parameters
T

Constructor & Destructor Documentation

◆ List() [1/6]

template<class T>
List ( Allocator & allocator = DefaultAllocator)
inline

Default constructor.

◆ List() [2/6]

template<class T>
List ( List< T > & ref)
default

copy constructor

◆ List() [3/6]

template<class T>
template<size_t N>
List ( const T(&) a[N],
Allocator & allocator = DefaultAllocator )
inline

Constructor using array.

◆ ~List() [1/2]

template<class T>
~List ( )
inline

◆ List() [4/6]

template<class T>
List ( Allocator & allocator = DefaultAllocator)
inline

Default constructor.

◆ List() [5/6]

template<class T>
List ( List< T > & ref)
default

copy constructor

◆ List() [6/6]

template<class T>
template<size_t N>
List ( const T(&) a[N],
Allocator & allocator = DefaultAllocator )
inline

Constructor using array.

◆ ~List() [2/2]

template<class T>
~List ( )
inline

Member Function Documentation

◆ back() [1/2]

template<class T>
T & back ( )
inline

Provides the last element.

◆ back() [2/2]

template<class T>
T & back ( )
inline

Provides the last element.

◆ begin() [1/2]

template<class T>
Iterator begin ( )
inline

◆ begin() [2/2]

template<class T>
Iterator begin ( )
inline

◆ clear() [1/2]

template<class T>
bool clear ( )
inline

◆ clear() [2/2]

template<class T>
bool clear ( )
inline

◆ createNode() [1/2]

template<class T>
Node * createNode ( )
inlineprotected

◆ createNode() [2/2]

template<class T>
Node * createNode ( )
inlineprotected

◆ deleteNode() [1/2]

template<class T>
void deleteNode ( Node * p_delete)
inlineprotected

◆ deleteNode() [2/2]

template<class T>
void deleteNode ( Node * p_delete)
inlineprotected

◆ empty() [1/2]

template<class T>
bool empty ( )
inline

◆ empty() [2/2]

template<class T>
bool empty ( )
inline

◆ end() [1/2]

template<class T>
Iterator end ( )
inline

◆ end() [2/2]

template<class T>
Iterator end ( )
inline

◆ erase() [1/2]

template<class T>
bool erase ( Iterator it)
inline

◆ erase() [2/2]

template<class T>
bool erase ( Iterator it)
inline

◆ firstDataNode() [1/2]

template<class T>
Node * firstDataNode ( )
inlineprotected

◆ firstDataNode() [2/2]

template<class T>
Node * firstDataNode ( )
inlineprotected

◆ front() [1/2]

template<class T>
T & front ( )
inline

Provides the first element.

◆ front() [2/2]

template<class T>
T & front ( )
inline

Provides the first element.

◆ insert() [1/2]

template<class T>
bool insert ( Iterator it,
const T & data )
inline

◆ insert() [2/2]

template<class T>
bool insert ( Iterator it,
const T & data )
inline

◆ lastDataNode() [1/2]

template<class T>
Node * lastDataNode ( )
inlineprotected

◆ lastDataNode() [2/2]

template<class T>
Node * lastDataNode ( )
inlineprotected

◆ link() [1/2]

template<class T>
void link ( )
inlineprotected

◆ link() [2/2]

template<class T>
void link ( )
inlineprotected

◆ operator[]() [1/2]

template<class T>
T & operator[] ( int index)
inline

◆ operator[]() [2/2]

template<class T>
T & operator[] ( int index)
inline

◆ pop_back() [1/4]

template<class T>
bool pop_back ( )
inline

◆ pop_back() [2/4]

template<class T>
bool pop_back ( )
inline

◆ pop_back() [3/4]

template<class T>
bool pop_back ( T & data)
inline

◆ pop_back() [4/4]

template<class T>
bool pop_back ( T & data)
inline

◆ pop_front() [1/4]

template<class T>
bool pop_front ( )
inline

◆ pop_front() [2/4]

template<class T>
bool pop_front ( )
inline

◆ pop_front() [3/4]

template<class T>
bool pop_front ( T & data)
inline

◆ pop_front() [4/4]

template<class T>
bool pop_front ( T & data)
inline

◆ push_back() [1/2]

template<class T>
bool push_back ( T data)
inline

◆ push_back() [2/2]

template<class T>
bool push_back ( T data)
inline

◆ push_front() [1/2]

template<class T>
bool push_front ( T data)
inline

◆ push_front() [2/2]

template<class T>
bool push_front ( T data)
inline

◆ rbegin() [1/2]

template<class T>
Iterator rbegin ( )
inline

◆ rbegin() [2/2]

template<class T>
Iterator rbegin ( )
inline

◆ rend() [1/2]

template<class T>
Iterator rend ( )
inline

◆ rend() [2/2]

template<class T>
Iterator rend ( )
inline

◆ setAllocator() [1/2]

template<class T>
void setAllocator ( Allocator & allocator)
inline

◆ setAllocator() [2/2]

template<class T>
void setAllocator ( Allocator & allocator)
inline

◆ size() [1/2]

template<class T>
size_t size ( )
inline

◆ size() [2/2]

template<class T>
size_t size ( )
inline

◆ swap() [1/2]

template<class T>
bool swap ( List< T > & ref)
inline

◆ swap() [2/2]

template<class T>
bool swap ( List< T > & ref)
inline

◆ validate() [1/2]

template<class T>
void validate ( )
inlineprotected

◆ validate() [2/2]

template<class T>
void validate ( )
inlineprotected

Member Data Documentation

◆ first

template<class T>
Node first
protected

◆ last

template<class T>
Node last
protected

◆ p_allocator

template<class T>
Allocator * p_allocator = &DefaultAllocator
protected

◆ record_count

template<class T>
size_t record_count =0
protected

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