Public Types | Public Member Functions | Static Public Member Functions
RTT::marsh::MarshallingService Class Reference

#include <MarshallingService.hpp>

Inheritance diagram for RTT::marsh::MarshallingService:
Inheritance graph
[legend]

List of all members.

Public Types

typedef boost::shared_ptr
< MarshallingService
shared_ptr

Public Member Functions

bool loadProperties (const std::string &filename) const
 MarshallingService (TaskContext *parent)
bool readProperties (const std::string &filename) const
bool readProperty (const std::string &name, const std::string &filename)
bool storeProperties (const std::string &filename) const
bool updateFile (const std::string &filename) const
bool updateProperties (const std::string &filename) const
bool writeProperties (const std::string &filename) const
bool writeProperty (const std::string &name, const std::string &filename)

Static Public Member Functions

static shared_ptr Create (TaskContext *parent)

Detailed Description

Service which loads and saves properties of a TaskContext.

Definition at line 54 of file MarshallingService.hpp.


Member Typedef Documentation

Reimplemented from RTT::Service.

Definition at line 58 of file MarshallingService.hpp.


Constructor & Destructor Documentation

Creates a MarshallingService object. You need to add the service to parent yourself, or use Create(). This object is normally created by a TaskContext.

Definition at line 62 of file MarshallingService.cpp.


Member Function Documentation

Creates a MarshallingService object and registers the service to parent.

Definition at line 56 of file MarshallingService.cpp.

bool RTT::MarshallingService::loadProperties ( const std::string &  filename) const

Read a property file and update (or create any missing) properties in the TaskContext. This function allows to dynamically add properties to a component. This can be useful in combination with Orocos scripts when the script requires additional properties from the parent TaskContext.

Definition at line 90 of file MarshallingService.cpp.

bool RTT::MarshallingService::readProperties ( const std::string &  filename) const

Read the property file and 'refresh' all the properties of the TaskContext. There may be more properties in the file than properties in the TaskContext, but all properties of the TaskContext must be present in filename. In case a type mismatch occurs, this method will fail and update no properties.

Parameters:
filenameThe file to read from.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 102 of file MarshallingService.cpp.

bool RTT::MarshallingService::readProperty ( const std::string &  name,
const std::string &  filename 
)

Read a single property from a file. The name may be a 'path' like location of a Property in the hierarchy.

Parameters:
nameThe name of the property in the file. For example "MyProp" for a top-level property or "Settings.XML.Editor" to specify a dot-separated 'path' to the property 'Editor'.
filenameThe name of the file in which to lookup name.

Definition at line 123 of file MarshallingService.cpp.

bool RTT::MarshallingService::storeProperties ( const std::string &  filename) const

Stores all properties of a TaskContext in a new file or overwrite an existing one. The file given in filename will always be overwritten and any existing content will be lost.

Parameters:
filenameThe file to store to.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 96 of file MarshallingService.cpp.

bool RTT::MarshallingService::updateFile ( const std::string &  filename) const

Write the property file with the properties of a TaskContext, which are already present in filename. No new entries are created in the file, only existing ones are updated. The file is first read in, the resulting tree is updated with the task's properties, and then written to disk again.

Parameters:
filenameThe file to read from and write to.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 117 of file MarshallingService.cpp.

bool RTT::MarshallingService::updateProperties ( const std::string &  filename) const

Read the property file and 'refresh' some properties of the TaskContext. There may be more properties in the file than properties in the TaskContext, and some may be missing in the file. This method will update 'as much as possible' properties. In case a type mismatch occurs, this method will fail and update no properties.

Parameters:
filenameThe file to read all the properties from.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 107 of file MarshallingService.cpp.

bool RTT::MarshallingService::writeProperties ( const std::string &  filename) const

Write the property file with the properties of a TaskContext. The file is first read in, the resulting tree is updated with the task's properties and then written to disk again. This allows to share files between tasks.

Parameters:
filenameThe file to read from and write to (updating).
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 112 of file MarshallingService.cpp.

bool RTT::MarshallingService::writeProperty ( const std::string &  name,
const std::string &  filename 
)

Write a single property to a file. The name may be a 'path' like location of a Property in the hierarchy.

Parameters:
nameThe name of the property in the file. For example "MyProp" for a top-level property or "Settings.XML.Editor" to specify a dot-separated 'path' to the property 'Editor'.
filenameThe name of the file in which to write name.

Definition at line 128 of file MarshallingService.cpp.


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


rtt
Author(s): RTT Developers
autogenerated on Mon Oct 6 2014 03:13:59