#include <BufferInterface.hpp>
Public Types | |
typedef boost::call_traits< T > ::param_type | param_t |
typedef boost::call_traits< T > ::param_type | param_t |
typedef boost::call_traits< T > ::reference | reference_t |
typedef boost::call_traits< T > ::reference | reference_t |
typedef boost::shared_ptr < BufferInterface< T > > | shared_ptr |
typedef boost::shared_ptr < BufferInterface< T > > | shared_ptr |
typedef BufferBase::size_type | size_type |
typedef BufferBase::size_type | size_type |
typedef T | value_t |
typedef T | value_t |
Public Member Functions | |
virtual void | data_sample (const T &sample)=0 |
virtual void | data_sample (const T &sample)=0 |
virtual size_type | Pop (std::vector< value_t > &items)=0 |
virtual bool | Pop (reference_t item)=0 |
virtual size_type | Pop (std::vector< value_t > &items)=0 |
virtual bool | Pop (reference_t item)=0 |
virtual value_t * | PopWithoutRelease ()=0 |
virtual value_t * | PopWithoutRelease ()=0 |
virtual size_type | Push (const std::vector< value_t > &items)=0 |
virtual bool | Push (param_t item)=0 |
virtual size_type | Push (const std::vector< value_t > &items)=0 |
virtual bool | Push (param_t item)=0 |
virtual void | Release (value_t *item)=0 |
virtual void | Release (value_t *item)=0 |
virtual | ~BufferInterface () |
virtual | ~BufferInterface () |
A Buffer is an object which is used to store (Push) and retrieve (Pop) values from.
T | The value type stored in this buffer. |
Definition at line 55 of file install/include/rtt/base/BufferInterface.hpp.
typedef boost::call_traits<T>::param_type RTT::base::BufferInterface< T >::param_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 63 of file rtt/base/BufferInterface.hpp.
typedef boost::call_traits<T>::param_type RTT::base::BufferInterface< T >::param_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 63 of file install/include/rtt/base/BufferInterface.hpp.
typedef boost::call_traits<T>::reference RTT::base::BufferInterface< T >::reference_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 64 of file rtt/base/BufferInterface.hpp.
typedef boost::call_traits<T>::reference RTT::base::BufferInterface< T >::reference_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 64 of file install/include/rtt/base/BufferInterface.hpp.
typedef boost::shared_ptr< BufferInterface<T> > RTT::base::BufferInterface< T >::shared_ptr |
Reimplemented from RTT::base::BufferBase.
Definition at line 62 of file rtt/base/BufferInterface.hpp.
typedef boost::shared_ptr< BufferInterface<T> > RTT::base::BufferInterface< T >::shared_ptr |
Reimplemented from RTT::base::BufferBase.
Definition at line 62 of file install/include/rtt/base/BufferInterface.hpp.
typedef BufferBase::size_type RTT::base::BufferInterface< T >::size_type |
Reimplemented from RTT::base::BufferBase.
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 60 of file rtt/base/BufferInterface.hpp.
typedef BufferBase::size_type RTT::base::BufferInterface< T >::size_type |
Reimplemented from RTT::base::BufferBase.
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 60 of file install/include/rtt/base/BufferInterface.hpp.
typedef T RTT::base::BufferInterface< T >::value_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 59 of file rtt/base/BufferInterface.hpp.
typedef T RTT::base::BufferInterface< T >::value_t |
Reimplemented in RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::Buffer< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
Definition at line 59 of file install/include/rtt/base/BufferInterface.hpp.
virtual RTT::base::BufferInterface< T >::~BufferInterface | ( | ) | [inline, virtual] |
Definition at line 66 of file install/include/rtt/base/BufferInterface.hpp.
virtual RTT::base::BufferInterface< T >::~BufferInterface | ( | ) | [inline, virtual] |
Definition at line 66 of file rtt/base/BufferInterface.hpp.
virtual void RTT::base::BufferInterface< T >::data_sample | ( | const T & | sample | ) | [pure virtual] |
Initializes this buffer with a data sample, such that for dynamical allocated types T, the buffer can reserve place to hold these elements.
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual void RTT::base::BufferInterface< T >::data_sample | ( | const T & | sample | ) | [pure virtual] |
Initializes this buffer with a data sample, such that for dynamical allocated types T, the buffer can reserve place to hold these elements.
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual size_type RTT::base::BufferInterface< T >::Pop | ( | std::vector< value_t > & | items | ) | [pure virtual] |
Read the whole buffer.
items | is to be filled with all values in the buffer, with items.begin() the oldest value. |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual bool RTT::base::BufferInterface< T >::Pop | ( | reference_t | item | ) | [pure virtual] |
Read the oldest value from the buffer.
item | is to be set with a value from the buffer. |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual size_type RTT::base::BufferInterface< T >::Pop | ( | std::vector< value_t > & | items | ) | [pure virtual] |
Read the whole buffer.
items | is to be filled with all values in the buffer, with items.begin() the oldest value. |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual bool RTT::base::BufferInterface< T >::Pop | ( | reference_t | item | ) | [pure virtual] |
Read the oldest value from the buffer.
item | is to be set with a value from the buffer. |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual value_t* RTT::base::BufferInterface< T >::PopWithoutRelease | ( | ) | [pure virtual] |
Returns a pointer to the first element in the buffer. The pointer is only garanteed to stay valid until the next pop operation.
Note the pointer needs the be released by calling Release on the buffer.
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual value_t* RTT::base::BufferInterface< T >::PopWithoutRelease | ( | ) | [pure virtual] |
Returns a pointer to the first element in the buffer. The pointer is only garanteed to stay valid until the next pop operation.
Note the pointer needs the be released by calling Release on the buffer.
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual size_type RTT::base::BufferInterface< T >::Push | ( | const std::vector< value_t > & | items | ) | [pure virtual] |
Write a sequence of values to the buffer.
items | the values to write |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual bool RTT::base::BufferInterface< T >::Push | ( | param_t | item | ) | [pure virtual] |
Write a single value to the buffer.
item | the value to write |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual size_type RTT::base::BufferInterface< T >::Push | ( | const std::vector< value_t > & | items | ) | [pure virtual] |
Write a sequence of values to the buffer.
items | the values to write |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual bool RTT::base::BufferInterface< T >::Push | ( | param_t | item | ) | [pure virtual] |
Write a single value to the buffer.
item | the value to write |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual void RTT::base::BufferInterface< T >::Release | ( | value_t * | item | ) | [pure virtual] |
Releases the pointer
item | pointer aquired using PopWithoutRelease() |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.
virtual void RTT::base::BufferInterface< T >::Release | ( | value_t * | item | ) | [pure virtual] |
Releases the pointer
item | pointer aquired using PopWithoutRelease() |
Implemented in RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, RTT::base::BufferUnSync< T >, RTT::base::BufferLocked< T >, RTT::base::BufferLockFree< T >, and RTT::base::BufferUnSync< T >.