PropertyLoader Class Reference

#include <rtt/PropertyLoader.hpp>

List of all members.


Detailed Description

Load and save property files to a TaskContext's PropertyBag.

The default file format is 'cpf' from the CPFMarshaller class.

Definition at line 51 of file PropertyLoader.hpp.


Public Member Functions

bool load (const std::string &filename, TaskContext *target) const
 Read the XML cpf file and create (or refresh the matching properties) of the given TaskContext.
bool configure (const std::string &filename, TaskContext *target, bool all=true) const
 Read the XML cpf file and 'refresh' the matching properties of the given TaskContext.
bool save (const std::string &filename, TaskContext *target, bool all=true) const
 Write the XML cpf file with the properties of the given TaskContext.
bool configure (const std::string &filename, TaskContext *target, const std::string &name) const
 Read a single property from a file.
bool save (const std::string &filename, TaskContext *target, const std::string &name) const
 Write a single property to a file, or update an existing file.

Member Function Documentation

bool load ( const std::string &  filename,
TaskContext target 
) const

Read the XML cpf file and create (or refresh the matching properties) of the given TaskContext.

Any property in the file which is not in the target, is created in the target.

Parameters:
filename The file to read from.
target The TaskContext to load the new properties into.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 53 of file PropertyLoader.cpp.

References RTT::copyProperties(), RTT::deletePropertyBag(), TaskContext::getName(), TaskContext::properties(), RTT::refreshProperties(), and RTT::updateProperties().

Referenced by MarshallingAccess::loadProperties().

bool configure ( const std::string &  filename,
TaskContext target,
bool  all = true 
) const

Read the XML cpf file and 'refresh' the matching properties of the given TaskContext.

There may be more properties in the file than properties in the target.

Parameters:
filename The file to read from.
target The TaskContext to configure.
all Configure all properties of target. Return an error if not all properties were found in filename.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 116 of file PropertyLoader.cpp.

References RTT::copyProperties(), RTT::deletePropertyBag(), TaskContext::getName(), TaskContext::properties(), and RTT::refreshProperties().

Referenced by MarshallingAccess::readProperties(), MarshallingAccess::readProperty(), and MarshallingAccess::updateProperties().

bool save ( const std::string &  filename,
TaskContext target,
bool  all = true 
) const

Write the XML cpf file with the properties of the given 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:
filename The file to read from and write to (updating).
target The TaskContext to configure.
all Write out all properties of target to filename, add missing ones if necessary.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 175 of file PropertyLoader.cpp.

References RTT::deletePropertyBag(), TaskContext::getName(), PropertyBagIntrospector::introspect(), TaskContext::properties(), RTT::refreshProperties(), and RTT::updateProperties().

Referenced by MarshallingAccess::updateFile(), MarshallingAccess::writeProperties(), and MarshallingAccess::writeProperty().

bool configure ( const std::string &  filename,
TaskContext target,
const std::string &  name 
) const

Read a single property from a file.

Parameters:
filename The file to read from.
target The TaskContext to configure.
name The path to or name of a property in target.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 255 of file PropertyLoader.cpp.

References TaskContext::properties(), and RTT::refreshProperty().

bool save ( const std::string &  filename,
TaskContext target,
const std::string &  name 
) const

Write a single property to a file, or update an existing file.

Parameters:
filename The file to update or write to.
target The TaskContext to configure.
name The path to or name of a property in target.
Returns:
true on success, false on error, consult Logger output for messages.

Definition at line 295 of file PropertyLoader.cpp.

References RTT::deletePropertyBag(), TaskContext::getName(), PropertyBagIntrospector::introspect(), TaskContext::properties(), and RTT::updateProperty().


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

Generated on Mon Jan 19 16:53:58 2009 for OrocosReal-TimeToolkit by  doxygen 1.5.6