Public Types | Public Member Functions
orogen_transports::TypelibMarshaller< T > Struct Template Reference

#include <TypelibMarshaller.hpp>

Inheritance diagram for orogen_transports::TypelibMarshaller< T >:
Inheritance graph
[legend]

List of all members.

Public Types

typedef
TypelibMarshallerBase::Handle 
Handle

Public Member Functions

TypelibMarshallerBase::HandlecreateSample ()
void deleteOrocosSample (Handle *data)
void deleteSamples (Handle *data)
void deleteTypelibSample (Handle *data)
RTT::base::DataSourceBase::shared_ptr getDataSource (Handle *handle)
bool readDataSource (RTT::base::DataSourceBase &source_base, Handle *handle)
void refreshOrocosSample (Handle *handle)
void refreshTypelibSample (Handle *handle)
uint8_t * releaseOrocosSample (Handle *handle)
void setOrocosSample (Handle *handle, void *data, bool refresh_typelib=true)
void setTypelibSample (Handle *handle, uint8_t *data, bool refresh_orocos=true)
 TypelibMarshaller (std::string const &orocos_name, Typelib::Registry const &registry)
void writeDataSource (RTT::base::DataSourceBase &source, Handle const *handle)

Detailed Description

template<typename T>
struct orogen_transports::TypelibMarshaller< T >

Definition at line 11 of file TypelibMarshaller.hpp.


Member Typedef Documentation

Definition at line 13 of file TypelibMarshaller.hpp.


Constructor & Destructor Documentation

template<typename T >
orogen_transports::TypelibMarshaller< T >::TypelibMarshaller ( std::string const &  orocos_name,
Typelib::Registry const &  registry 
) [inline]

Definition at line 15 of file TypelibMarshaller.hpp.


Member Function Documentation

template<typename T >
TypelibMarshallerBase::Handle* orogen_transports::TypelibMarshaller< T >::createSample ( ) [inline, virtual]

Creates a sample handler, which is an opaque type used to read/write/marshal data. Unlike createHandle(), the handle returned by this method already contains a preallocated data sample. It can therefore be used as-is for readPort.

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 18 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::deleteOrocosSample ( Handle data) [inline, virtual]

Destroys the orocos-related data sample that is stored in data.

For non-opaque types, this is the same than destroyOrocosSample and destroyData. It is different only for opaque types.

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 19 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::deleteSamples ( Handle data) [inline]

Definition at line 21 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::deleteTypelibSample ( Handle data) [inline, virtual]

Destroys the typelib-related data sample that is stored in data.

For non-opaque types, this is the same than destroyTypelibSample and destroyData. It is different only for opaque types.

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 20 of file TypelibMarshaller.hpp.

template<typename T >
RTT::base::DataSourceBase::shared_ptr orogen_transports::TypelibMarshaller< T >::getDataSource ( Handle handle) [inline, virtual]

Returns a data source that can be used to modify the Orocos sample stored in this handle

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 66 of file TypelibMarshaller.hpp.

template<typename T >
bool orogen_transports::TypelibMarshaller< T >::readDataSource ( RTT::base::DataSourceBase source,
Handle handle 
) [inline, virtual]

Reads the data from a data source a handle

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 71 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::refreshOrocosSample ( Handle data) [inline, virtual]

Updates the value of data->orocos_sample based on the data in data->typelib_sample

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 61 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::refreshTypelibSample ( Handle handle) [inline, virtual]

Updates the value of data->typelib_sample based on the data in data->orocos_sample

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 56 of file TypelibMarshaller.hpp.

template<typename T >
uint8_t* orogen_transports::TypelibMarshaller< T >::releaseOrocosSample ( Handle sample) [inline, virtual]

Returns a type-pruned pointer to the C++ object, and passes ownership along

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 39 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::setOrocosSample ( Handle data,
void *  sample,
bool  refresh_typelib = true 
) [inline, virtual]

Updates the sample handler by using a data sample that Typelib understands. +typelib_data+ must be pointing to an object whose type is the one returned by getMarshallingType.

The handle will then point directly to the given data sample, i.e. calls to read might modify that sample directly.

The ownership of typelib_data is retained by the caller. I.e. it has to delete it.

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 33 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::setTypelibSample ( Handle data,
uint8_t *  typelib_data,
bool  refresh_orocos = true 
) [inline, virtual]

Updates the sample handler by using a data sample that Typelib understands. +typelib_data+ must be pointing to an object whose type is the one returned by getMarshallingType.

The handle will then point directly to the given data sample, i.e. calls to read might modify that sample directly.

The ownership of typelib_data is retained by the caller. I.e. it has to delete it.

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 27 of file TypelibMarshaller.hpp.

template<typename T >
void orogen_transports::TypelibMarshaller< T >::writeDataSource ( RTT::base::DataSourceBase source,
Handle const *  handle 
) [inline, virtual]

Writes the data from from the handle into the data source

Implements orogen_transports::TypelibMarshallerBase.

Definition at line 82 of file TypelibMarshaller.hpp.


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


rtt_typelib
Author(s): Sylvain Joyeux/sylvain.joyeux@m4x.org
autogenerated on Sat Jun 8 2019 18:49:39