A class which provides locked/protected access to one typed element of data. More...
#include <DataObjectLocked.hpp>

Public Types | |
| typedef T | DataType |
Public Member Functions | |
| virtual void | data_sample (const DataType &sample) |
| DataObjectLocked (const T &initial_value=T()) | |
| virtual void | Get (DataType &pull) const |
| virtual DataType | Get () const |
| virtual void | Set (const DataType &push) |
Private Attributes | |
| T | data |
| os::Mutex | lock |
A class which provides locked/protected access to one typed element of data.
It allows multiple read/write requests using a single lock. This is the in any case threadsafe implementation, and can be blocking in situations where you do not want that.
Definition at line 57 of file DataObjectLocked.hpp.
| typedef T RTT::base::DataObjectLocked< T >::DataType |
The type of the data.
Reimplemented from RTT::base::DataObjectInterface< T >.
Definition at line 78 of file DataObjectLocked.hpp.
| RTT::base::DataObjectLocked< T >::DataObjectLocked | ( | const T & | initial_value = T() | ) | [inline] |
Construct a DataObjectLocked by name.
| _name | The name of this DataObject. |
Definition at line 72 of file DataObjectLocked.hpp.
| virtual void RTT::base::DataObjectLocked< T >::data_sample | ( | const DataType & | sample | ) | [inline, virtual] |
Provides a data sample to initialize this data object. As such enough storage space can be allocated before the actual writing begins.
| sample |
Implements RTT::base::DataObjectInterface< T >.
Definition at line 86 of file DataObjectLocked.hpp.
| virtual void RTT::base::DataObjectLocked< T >::Get | ( | DataType & | pull | ) | const [inline, virtual] |
Get a copy of the Data of this data object.
| pull | A copy of the data. |
Implements RTT::base::DataObjectInterface< T >.
Definition at line 80 of file DataObjectLocked.hpp.
| virtual DataType RTT::base::DataObjectLocked< T >::Get | ( | ) | const [inline, virtual] |
Get a copy of the data of this data object.
Implements RTT::base::DataObjectInterface< T >.
Definition at line 82 of file DataObjectLocked.hpp.
| virtual void RTT::base::DataObjectLocked< T >::Set | ( | const DataType & | push | ) | [inline, virtual] |
Set the data to a certain value.
| push | The data which must be set. |
Implements RTT::base::DataObjectInterface< T >.
Definition at line 84 of file DataObjectLocked.hpp.
T RTT::base::DataObjectLocked< T >::data [private] |
One element of Data.
Definition at line 65 of file DataObjectLocked.hpp.
os::Mutex RTT::base::DataObjectLocked< T >::lock [mutable, private] |
Definition at line 60 of file DataObjectLocked.hpp.