Public Types | Public Member Functions | Public Attributes
ecl::PushAndPop< Type, DynamicStorage > Class Template Reference

Surpport push and pack operation. More...

#include <push_and_pop_dynamic.hpp>

List of all members.

Public Types

typedef const Type * const_iterator
typedef const Type & const_reference
typedef std::reverse_iterator
< const_iterator
const_reverse_iterator
typedef std::ptrdiff_t difference_type
typedef
formatters::PushAndPopFormatter
< Type, DynamicStorage
Formatter
 Formatter for this class.
typedef Type * iterator
typedef Type & reference
typedef std::reverse_iterator
< iterator
reverse_iterator
typedef std::size_t size_type
typedef Type value_type

Public Member Functions

unsigned int asize ()
 The size allocated in memory for the fifo.
iterator begin () ecl_assert_throw_decl(StandardException)
const_iterator begin () const ecl_assert_throw_decl(StandardException)
void clear ()
iterator end () ecl_assert_throw_decl(StandardException)
const_iterator end () const ecl_assert_throw_decl(StandardException)
void fill (const Type &d)
void operator() (const PushAndPop< Type, 0 > &otherOne)
Type & operator[] (int idx)
const Type & operator[] (int idx) const
Type pop_front ()
void push_back (const Type &datum)
 Pushes an element onto the back of the container.
 PushAndPop ()
 Default constructor.
 PushAndPop (const unsigned int length) ecl_assert_throw_decl(StandardException)
 PushAndPop (const unsigned int length, const Type &d) ecl_assert_throw_decl(StandardException)
reverse_iterator rbegin () ecl_assert_throw_decl(StandardException)
const_reverse_iterator rbegin () const ecl_assert_throw_decl(StandardException)
reverse_iterator rend () ecl_assert_throw_decl(StandardException)
const_reverse_iterator rend () const ecl_assert_throw_decl(StandardException)
void resize (unsigned int length)
unsigned int size () const
virtual ~PushAndPop ()

Public Attributes

ecl::Array< Type > data
int follower
int leader
unsigned int size_fifo

Detailed Description

template<typename Type>
class ecl::PushAndPop< Type, DynamicStorage >

Surpport push and pack operation.

ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG! ACHTUNG!

This is very experimental and has a few unfinished, surprising. automatic behaviours.

Usage:

 @code
See also:
ecl::Array.

Definition at line 71 of file push_and_pop_dynamic.hpp.


Member Typedef Documentation

template<typename Type >
typedef const Type* ecl::PushAndPop< Type, DynamicStorage >::const_iterator

Constant iterator type.

Definition at line 76 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef const Type& ecl::PushAndPop< Type, DynamicStorage >::const_reference

Element const reference type.

Definition at line 78 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef std::reverse_iterator<const_iterator> ecl::PushAndPop< Type, DynamicStorage >::const_reverse_iterator

Constant reverse iterator type.

Definition at line 82 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef std::ptrdiff_t ecl::PushAndPop< Type, DynamicStorage >::difference_type

Definition at line 80 of file push_and_pop_dynamic.hpp.

Formatter for this class.

Definition at line 83 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef Type* ecl::PushAndPop< Type, DynamicStorage >::iterator

Iterator type.

Definition at line 75 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef Type& ecl::PushAndPop< Type, DynamicStorage >::reference

Element reference type.

Definition at line 77 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef std::reverse_iterator<iterator> ecl::PushAndPop< Type, DynamicStorage >::reverse_iterator

Reverse iterator type.

Definition at line 81 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef std::size_t ecl::PushAndPop< Type, DynamicStorage >::size_type

Type used to denote the length of the array.

Definition at line 79 of file push_and_pop_dynamic.hpp.

template<typename Type >
typedef Type ecl::PushAndPop< Type, DynamicStorage >::value_type

Element type.

Definition at line 74 of file push_and_pop_dynamic.hpp.


Constructor & Destructor Documentation

template<typename Type >
ecl::PushAndPop< Type, DynamicStorage >::PushAndPop ( ) [inline]

Default constructor.

Creates a dynamic push and pop container of zero length.

Definition at line 90 of file push_and_pop_dynamic.hpp.

template<typename Type >
ecl::PushAndPop< Type, DynamicStorage >::PushAndPop ( const unsigned int  length) [inline]

Definition at line 92 of file push_and_pop_dynamic.hpp.

template<typename Type >
ecl::PushAndPop< Type, DynamicStorage >::PushAndPop ( const unsigned int  length,
const Type &  d 
) [inline]

Definition at line 99 of file push_and_pop_dynamic.hpp.

template<typename Type >
virtual ecl::PushAndPop< Type, DynamicStorage >::~PushAndPop ( ) [inline, virtual]

Definition at line 108 of file push_and_pop_dynamic.hpp.


Member Function Documentation

template<typename Type >
unsigned int ecl::PushAndPop< Type, DynamicStorage >::asize ( ) [inline]

The size allocated in memory for the fifo.

This is different to the actual used size.

See also:
size()

Definition at line 263 of file push_and_pop_dynamic.hpp.

template<typename Type >
iterator ecl::PushAndPop< Type, DynamicStorage >::begin ( ) [inline]

Generates a pointer (iterator) pointing to the start of the array.

Returns:
iterator : points to the beginning of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 125 of file push_and_pop_dynamic.hpp.

template<typename Type >
const_iterator ecl::PushAndPop< Type, DynamicStorage >::begin ( ) const [inline]

Generates a const pointer (iterator) pointing to the start of the array.

Returns:
const_iterator : constant pointer (iterator) pointing to the end of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 134 of file push_and_pop_dynamic.hpp.

template<typename Type >
void ecl::PushAndPop< Type, DynamicStorage >::clear ( ) [inline]

Definition at line 275 of file push_and_pop_dynamic.hpp.

template<typename Type >
iterator ecl::PushAndPop< Type, DynamicStorage >::end ( ) [inline]

Generates an pointer (iterator) pointing to the end of the array.

Returns:
iterator : points to the end of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 143 of file push_and_pop_dynamic.hpp.

template<typename Type >
const_iterator ecl::PushAndPop< Type, DynamicStorage >::end ( ) const [inline]

Generates a const pointer (iterator) pointing to the end of the array.

Returns:
const_iterator : constant pointer (iterator) pointing to the end of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 152 of file push_and_pop_dynamic.hpp.

template<typename Type >
void ecl::PushAndPop< Type, DynamicStorage >::fill ( const Type &  d) [inline]

Definition at line 244 of file push_and_pop_dynamic.hpp.

template<typename Type >
void ecl::PushAndPop< Type, DynamicStorage >::operator() ( const PushAndPop< Type, 0 > &  otherOne) [inline]

Definition at line 208 of file push_and_pop_dynamic.hpp.

template<typename Type >
Type& ecl::PushAndPop< Type, DynamicStorage >::operator[] ( int  idx) [inline]

Definition at line 198 of file push_and_pop_dynamic.hpp.

template<typename Type >
const Type& ecl::PushAndPop< Type, DynamicStorage >::operator[] ( int  idx) const [inline]

Definition at line 203 of file push_and_pop_dynamic.hpp.

template<typename Type >
Type ecl::PushAndPop< Type, DynamicStorage >::pop_front ( ) [inline]

Definition at line 236 of file push_and_pop_dynamic.hpp.

template<typename Type >
void ecl::PushAndPop< Type, DynamicStorage >::push_back ( const Type &  datum) [inline]

Pushes an element onto the back of the container.

If there is no empty room, it simply makes room by popping an element of the front.

Definition at line 224 of file push_and_pop_dynamic.hpp.

template<typename Type >
reverse_iterator ecl::PushAndPop< Type, DynamicStorage >::rbegin ( ) [inline]

Generates a reverse iterator pointing to the end of the array.

Returns:
reverse_iterator : points to the end of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 161 of file push_and_pop_dynamic.hpp.

template<typename Type >
const_reverse_iterator ecl::PushAndPop< Type, DynamicStorage >::rbegin ( ) const [inline]

Generates a constant reverse iterator pointing to the end of the array.

Returns:
const_reverse_iterator : constant reverse iterator pointing to the end of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 170 of file push_and_pop_dynamic.hpp.

template<typename Type >
reverse_iterator ecl::PushAndPop< Type, DynamicStorage >::rend ( ) [inline]

Generates a reverse iterator pointing to the beginning of the array.

Returns:
reverse_iterator : points to the beginning of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 179 of file push_and_pop_dynamic.hpp.

template<typename Type >
const_reverse_iterator ecl::PushAndPop< Type, DynamicStorage >::rend ( ) const [inline]

Generates a constant reverse iterator pointing to the beginning of the array.

Returns:
const_reverse_iterator : constant reverse iterator pointing to the beginning of the array.
Exceptions:
StandardException: throws if no storage has been allocated [debug mode only].

Definition at line 188 of file push_and_pop_dynamic.hpp.

template<typename Type >
void ecl::PushAndPop< Type, DynamicStorage >::resize ( unsigned int  length) [inline]

Definition at line 249 of file push_and_pop_dynamic.hpp.

template<typename Type >
unsigned int ecl::PushAndPop< Type, DynamicStorage >::size ( ) const [inline]

Definition at line 268 of file push_and_pop_dynamic.hpp.


Member Data Documentation

template<typename Type >
ecl::Array<Type> ecl::PushAndPop< Type, DynamicStorage >::data

Definition at line 282 of file push_and_pop_dynamic.hpp.

template<typename Type >
int ecl::PushAndPop< Type, DynamicStorage >::follower

Definition at line 285 of file push_and_pop_dynamic.hpp.

template<typename Type >
int ecl::PushAndPop< Type, DynamicStorage >::leader

Definition at line 284 of file push_and_pop_dynamic.hpp.

template<typename Type >
unsigned int ecl::PushAndPop< Type, DynamicStorage >::size_fifo

Definition at line 283 of file push_and_pop_dynamic.hpp.


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


ecl_containers
Author(s): Daniel Stonier
autogenerated on Thu Jun 6 2019 21:17:43