Orocos Real-Time Toolkit  2.8.3
Namespaces | Classes | Typedefs | Enumerations | Functions | Variables
RTT Namespace Reference

Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute. More...

Namespaces

 base
 Base classes of RTT classes.
 
 corba
 CORBA (OmniORB/TAO) code for network data transport.
 
 detail
 Convenient short notation for every sub-namespace of RTT.
 
 dev
 
 extras
 Extra classes not neccesary to build an Orocos application, but are handy in some cases, or serve as an example on how to extend the RTT.
 
 internal
 Classes which contain all implementation code for the RTT.
 
 marsh
 Classes for reading/writing properties to/from file or data stream.
 
 mqueue
 
 os
 OS Abstractions such as Mutexes, Semaphores and Threads.
 
 plugin
 Classes and functions for creating and loading plugins.
 
 scripting
 Parser code for the Orocos real-time scripting language.
 
 types
 Classes for typekits for describing and handling user data types.
 

Classes

class  Activity
 An Activity is an object that represents a thread. More...
 
class  Alias
 This class is the most basic Attribute implementation (only suitable for reading a internal::DataSource), does not allow any assignment, just stores a internal::DataSourceBase, and returns it. More...
 
struct  ArgumentDescription
 Description of one Argument of a Command. More...
 
class  Attribute
 An Attribute has a name and contains data which can be set and get. More...
 
class  CleanupHandle
 A connection Handle of a (connected) slot which disconnects and cleans up (free all resources) the connection object in its destructor. More...
 
class  ComponentFactories
 A global variable storing all component factories added with ORO_LIST_COMPONENT_TYPE. More...
 
class  ComponentFactoryLoader
 A helper class storing a single component factory in case of static library deployments. More...
 
class  ComponentLoader
 
class  ConfigurationInterface
 A class for keeping track of Attribute, Constant and Property objects of a TaskContext. More...
 
class  ConnPolicy
 A connection policy object describes how a given connection should behave. More...
 
class  Constant
 As opposed to a Attribute, a Constant can not be assigned to a new value after creation. More...
 
class  DataFlowInterface
 The Interface of a TaskContext which exposes its data-flow ports. More...
 
class  ExecutionEngine
 An execution engine serialises (executes one after the other) the execution of all commands, programs, state machines and incomming events for a task. More...
 
class  file_parse_exception
 This is an exception class that keeps a parse_exception pointer along with the location in the file and the file where it occurred. More...
 
struct  finder
 
struct  get_capacity
 
struct  get_size
 
class  Handle
 The Handle holds the information, and allows manipulation, of a connection between a internal::Signal Handler function and the Signal itself. More...
 
class  InputPort
 A component's data input port. More...
 
struct  invalid_handle_exception
 Exception thrown when a factory is requested to create an object with an invalid SendHandle. More...
 
class  Logger
 A simple logging class to debug/ analyse what is going on in the Orocos system. More...
 
class  Marshalling
 Service requester to load and save properties of a TaskContext. More...
 
struct  name_not_found_exception
 Exception thrown when a factory is requested to create an object with an unknown name. More...
 
struct  no_asynchronous_operation_exception
 Exception thrown when a factory is requested to produce an asynchronous object while it is not available for that operation. More...
 
struct  non_lvalue_args_exception
 Exception thrown when a factory is requested to create an object, and one of the arguments needed to be an lvalue (AssignableDataSource) and an rvalue (plain DataSource) was given. More...
 
class  Operation
 The operation ties a C or C++ function into a component interface. More...
 
class  OperationCaller
 A OperationCaller serves as a placeholder (aka 'proxy') for a remote Operation. More...
 
class  OperationInterface
 Holds all exported operations of a component and is able to produce callers for these operations. More...
 
class  OperationInterfacePart
 This class defines the interface for creating operation objects without using C++ templates. More...
 
class  OutputPort
 A component's data output port. More...
 
class  parse_exception
 This is the uppermost exception class in the parser system. More...
 
class  Property
 A property represents a named value of any type with a description. More...
 
class  PropertyBag
 A container for holding references to properties. More...
 
struct  RemoveMsg
 
class  ScopedHandle
 A scoped connection Handle of a (connected) slot which disconnects a slot from a signal in its destructor. More...
 
class  Scripting
 The method interface of the scripting plugin. More...
 
class  SendHandle
 The SendHandle is used to collect the result values of an asynchronous invocation. More...
 
class  Service
 This class allows storage and retrieval of operations, ports, attributes and properties provided by a component. More...
 
class  ServiceRequester
 An object that expresses you wish to use a service. More...
 
class  TaskContext
 The TaskContext is the C++ representation of an Orocos component. More...
 
struct  wrong_number_of_args_exception
 Exception thrown when a factory is requested to create an object but the wrong number of arguments was given. More...
 
struct  wrong_types_of_args_exception
 Exception thrown when a factory is requested to create an object, but a wrong argument type was given. More...
 

Typedefs

typedef TaskContext *(* ComponentLoaderSignature) (std::string instance_name)
 This signature defines how a component can be instantiated. More...
 
typedef std::map< std::string, ComponentLoaderSignatureFactoryMap
 
typedef double Seconds
 Seconds are stored as a double precision float. More...
 
typedef long secs
 seconds as a signed long. More...
 
typedef long msecs
 milliseconds as a signed long. More...
 
typedef long usecs
 microseconds as a signed long. More...
 
typedef long long nsecs
 nanoseconds as a signed long long. More...
 
typedef long long psecs
 picoseconds as a signed long long More...
 
typedef std::basic_string< char, std::char_traits< char >, RTT::os::rt_allocator< char > > rt_string
 Real-time allocatable, dynamically-sized string. More...
 
typedef std::basic_ostringstream< char, std::char_traits< char >, RTT::os::rt_allocator< char > > rt_ostringstream
 Real-time allocatable, dynamically-size output string stream. More...
 
typedef boost::shared_ptr< ServiceServicePtr
 

Enumerations

enum  ExecutionThread { OwnThread, ClientThread }
 Users can choose if an operation's function is executed in the component's thread (OwnThread) or in the thread of the caller (ClientThread). More...
 
enum  FlowStatus { NoData = 0, OldData = 1, NewData = 2 }
 Returns the status of a data flow read. More...
 
enum  LoggerLevel {
  Never = 0, Fatal, Critical, Error,
  Warning, Info, Debug, RealTime
}
 Enumerate all log-levels from absolute silence to everything. More...
 
enum  SendStatus { CollectFailure = -2, SendFailure = -1, SendNotReady = 0, SendSuccess = 1 }
 Returns the status of a send() or collect() invocation. More...
 

Functions

RTT_API std::ostream & operator<< (std::ostream &os, FlowStatus fs)
 
std::istream & operator>> (std::istream &is, FlowStatus &fs)
 
msecs secs_to_msecs (const secs s)
 
usecs secs_to_usecs (const secs s)
 
nsecs secs_to_nsecs (const secs s)
 
psecs secs_to_psecs (const secs s)
 
usecs msecs_to_usecs (const msecs ms)
 
nsecs msecs_to_nsecs (const msecs ms)
 
psecs msecs_to_psecs (const msecs ms)
 
nsecs usecs_to_nsecs (const usecs us)
 
psecs usecs_to_psecs (const usecs us)
 
psecs nsecs_to_psecs (const nsecs ns)
 
msecs Seconds_to_msecs (const Seconds s)
 
Seconds msecs_to_Seconds (const msecs ns)
 
usecs Seconds_to_usecs (const Seconds s)
 
Seconds usecs_to_Seconds (const usecs ns)
 
nsecs Seconds_to_nsecs (const Seconds s)
 
Seconds nsecs_to_Seconds (const nsecs ns)
 
psecs Seconds_to_psecs (const Seconds s)
 
Seconds psecs_to_Seconds (const psecs ps)
 
template<typename T >
std::ostream & operator<< (std::ostream &os, Property< T > &p)
 
std::ostream & operator<< (std::ostream &os, const PropertyBag &bag)
 Recursively prints out the contents of this bag. More...
 
std::istream & operator>> (std::istream &is, PropertyBag &bag)
 Not implemented. More...
 
PropertyBasefindProperty (const PropertyBag &bag, const std::string &path, const std::string &separator=std::string("."))
 This function locates a Property in nested PropertyBags. More...
 
vector< string > listProperties (const PropertyBag &bag, const std::string &separator=std::string("."))
 List all properties in a PropertyBag in a single list. More...
 
vector< string > listPropertyDescriptions (const PropertyBag &bag, const std::string &separator=std::string("."))
 List all descriptions of properties in a PropertyBag in a single list. More...
 
bool storeProperty (PropertyBag &bag, const std::string &path, base::PropertyBase *item, const std::string &separator=std::string("."))
 Stores a property in a bag given a certain path with transfer of ownership. More...
 
bool removeProperty (PropertyBag &bag, const std::string &path, const std::string &separator=std::string("."))
 Removes a property from a bag given a certain path. More...
 
bool updateOrRefreshProperty (PropertyBase *source, PropertyBase *target, bool update)
 
bool refreshProperties (const PropertyBag &target, const PropertyBag &source, bool strict=false)
 This function refreshes the values of the properties in one PropertyBag with the values of the properties of another PropertyBag. More...
 
bool refreshProperty (const PropertyBag &target, const base::PropertyBase &source)
 Refresh one Property in the target bag with the new value. More...
 
bool copyProperties (PropertyBag &target, const PropertyBag &source)
 This function copies (recursively) the Properties of one Bag into another Bag. More...
 
bool updateProperties (PropertyBag &target, const PropertyBag &source)
 This function updates (recursively) the values of Property objects of one Bag with the values of Property objects of another bag. More...
 
bool updateProperty (PropertyBag &target, const PropertyBag &source, const std::string &path, const std::string &separator=".")
 This function updates (recursively) the values of a single Property object of one Bag with the property of another bag. More...
 
bool refreshProperty (PropertyBag &target, const PropertyBag &source, const std::string &path, const std::string &separator=".")
 This function refreshes (recursively) the values of a single Property object of one Bag with the property of another bag. More...
 
void deleteProperties (PropertyBag &target)
 This function iterates over a PropertyBag and deletes all Property objects in it without recursion. More...
 
void deletePropertyBag (PropertyBag &target)
 This function iterates over a PropertyBag and recursively deletes all Property objects. More...
 
void flattenPropertyBag (PropertyBag &target, const std::string &separator=".")
 This function flattens a PropertyBag recursively. More...
 
std::string makeString (const RTT::rt_string &str)
 convert from real-time string to std::string More...
 
std::ostream & operator<< (std::ostream &os, SendStatus fs)
 
std::istream & operator>> (std::istream &is, SendStatus &fs)
 
bool connectPorts (TaskContext *A, TaskContext *B)
 Connect the Data Flow Ports of A and B in both directions, by matching port names. More...
 
bool connectPeers (TaskContext *A, TaskContext *B)
 Set up the Execution Flow (who knows who) between A and B in both directions. More...
 
OperatorRepository::shared_ptr operators ()
 This global function provides the short notation for OperatorRepository::Instance() More...
 

Variables

char const * default_comp_path_build
 
const long MSECS_IN_SECS = 1000
 
const long USECS_IN_SECS = 1000 * MSECS_IN_SECS
 
const long NSECS_IN_SECS = 1000 * USECS_IN_SECS
 
const long long PSECS_IN_SECS = 1000LL * NSECS_IN_SECS
 
const long USECS_IN_MSECS = 1000
 
const long NSECS_IN_MSECS = 1000 * USECS_IN_MSECS
 
const long PSECS_IN_MSECS = 1000 * NSECS_IN_MSECS
 
const long NSECS_IN_USECS = 1000
 
const long PSECS_IN_USECS = 1000 * NSECS_IN_USECS
 
const long PSECS_IN_NSECS = 1000
 

Detailed Description

Contains TaskContext, Activity, OperationCaller, Operation, Property, InputPort, OutputPort, Attribute.

The Real-Time Toolkit is documented in The Orocos Real-Time Toolkit Online Manual

Typedef Documentation

typedef TaskContext*(* RTT::ComponentLoaderSignature) (std::string instance_name)

This signature defines how a component can be instantiated.

Definition at line 50 of file Component.hpp.

typedef std::map<std::string,ComponentLoaderSignature> RTT::FactoryMap

Definition at line 51 of file Component.hpp.

typedef long RTT::msecs

milliseconds as a signed long.

Definition at line 61 of file Time.hpp.

typedef long long RTT::nsecs

nanoseconds as a signed long long.

Definition at line 69 of file Time.hpp.

typedef long long RTT::psecs

picoseconds as a signed long long

Definition at line 73 of file Time.hpp.

typedef std::basic_ostringstream<char, std::char_traits<char>, RTT::os::rt_allocator<char> > RTT::rt_ostringstream

Real-time allocatable, dynamically-size output string stream.

Definition at line 53 of file rt_string.hpp.

typedef std::basic_string<char, std::char_traits<char>, RTT::os::rt_allocator<char> > RTT::rt_string

Real-time allocatable, dynamically-sized string.

Definition at line 50 of file rt_string.hpp.

typedef double RTT::Seconds

Seconds are stored as a double precision float.

Definition at line 53 of file Time.hpp.

typedef long RTT::secs

seconds as a signed long.

Definition at line 57 of file Time.hpp.

typedef boost::shared_ptr<Service> RTT::ServicePtr

Definition at line 86 of file rtt-fwd.hpp.

typedef long RTT::usecs

microseconds as a signed long.

Definition at line 65 of file Time.hpp.

Enumeration Type Documentation

Users can choose if an operation's function is executed in the component's thread (OwnThread) or in the thread of the caller (ClientThread).

Enumerator
OwnThread 
ClientThread 
Examples:
/home/jenkins/workspace/rtt-doc/rtt/TaskContext.hpp.

Definition at line 59 of file OperationBase.hpp.

Returns the status of a data flow read.

NoData means that the channel is disconnected or never written to. NewData means that the returned data is new data. OldData means that the returned data was already read.

Enumerator
NoData 
OldData 
NewData 

Definition at line 54 of file FlowStatus.hpp.

Enumerate all log-levels from absolute silence to everything.

Warning
If you enable 'RealTime' logging, this may break realtime performance. Use With Care and NOT on production systems.
See also
Logger::allowRealTime()
Enumerator
Never 
Fatal 
Critical 
Error 
Warning 
Info 
Debug 
RealTime 

Definition at line 345 of file Logger.hpp.

Returns the status of a send() or collect() invocation.

Enumerator
CollectFailure 
SendFailure 

Returned when the result of the send() could not be collected.

This happens when the 'caller' has not been set in the OperationCaller.

SendNotReady 

Returned when the send() failed to deliver the operation call to the receiving component.

This happens when the operation's component is in FatalError or has a full message queue.

SendSuccess 

Returned when the send() succeeded, but the operation has not yet been executed by the receiving component.

Definition at line 53 of file SendStatus.hpp.

Function Documentation

RTT_API bool RTT::connectPeers ( TaskContext A,
TaskContext B 
)

Set up the Execution Flow (who knows who) between A and B in both directions.

Both will be able to use each other's interface.

See also
TaskContext::connectPeers
Examples:
/home/jenkins/workspace/rtt-doc/rtt/TaskContext.hpp.

Definition at line 400 of file TaskContext.cpp.

References RTT::TaskContext::connectPeers().

Referenced by RTT::TaskContext::getActivity().

RTT_API bool RTT::connectPorts ( TaskContext A,
TaskContext B 
)

Connect the Data Flow Ports of A and B in both directions, by matching port names.

See also
TaskContext::connectPorts
Examples:
/home/jenkins/workspace/rtt-doc/rtt/TaskContext.hpp.

Definition at line 396 of file TaskContext.cpp.

References RTT::TaskContext::connectPorts().

Referenced by RTT::TaskContext::ports().

std::string RTT::makeString ( const RTT::rt_string str)
inline

convert from real-time string to std::string

Definition at line 56 of file rt_string.hpp.

References RTT_EXT_IMPL.

nsecs RTT::msecs_to_nsecs ( const msecs  ms)
inline

Definition at line 95 of file Time.hpp.

References NSECS_IN_MSECS.

psecs RTT::msecs_to_psecs ( const msecs  ms)
inline

Definition at line 96 of file Time.hpp.

References PSECS_IN_MSECS.

Seconds RTT::msecs_to_Seconds ( const msecs  ns)
inline

Definition at line 104 of file Time.hpp.

usecs RTT::msecs_to_usecs ( const msecs  ms)
inline

Definition at line 94 of file Time.hpp.

References USECS_IN_MSECS.

psecs RTT::nsecs_to_psecs ( const nsecs  ns)
inline

Definition at line 101 of file Time.hpp.

References PSECS_IN_NSECS.

Seconds RTT::nsecs_to_Seconds ( const nsecs  ns)
inline
RTT_API std::ostream & RTT::operator<< ( std::ostream &  os,
FlowStatus  fs 
)
RTT_API std::ostream & RTT::operator<< ( std::ostream &  os,
SendStatus  fs 
)

Definition at line 46 of file SendStatus.cpp.

References CollectFailure, SendFailure, SendNotReady, and SendSuccess.

template<typename T >
std::ostream& RTT::operator<< ( std::ostream &  os,
Property< T > &  p 
)

Definition at line 442 of file Property.hpp.

RTT_API std::istream & RTT::operator>> ( std::istream &  is,
FlowStatus fs 
)
RTT_API std::istream & RTT::operator>> ( std::istream &  is,
SendStatus fs 
)

Definition at line 67 of file SendStatus.cpp.

References CollectFailure, SendFailure, SendNotReady, and SendSuccess.

OperatorRepository::shared_ptr RTT::operators ( )

This global function provides the short notation for OperatorRepository::Instance()

Definition at line 132 of file Operators.cpp.

References RTT::types::OperatorRepository::Instance().

Seconds RTT::psecs_to_Seconds ( const psecs  ps)
inline

Definition at line 110 of file Time.hpp.

msecs RTT::Seconds_to_msecs ( const Seconds  s)
inline

Definition at line 103 of file Time.hpp.

References secs_to_msecs().

nsecs RTT::Seconds_to_nsecs ( const Seconds  s)
inline
psecs RTT::Seconds_to_psecs ( const Seconds  s)
inline

Definition at line 109 of file Time.hpp.

References secs_to_psecs().

usecs RTT::Seconds_to_usecs ( const Seconds  s)
inline

Definition at line 105 of file Time.hpp.

References secs_to_usecs().

msecs RTT::secs_to_msecs ( const secs  s)
inline

Definition at line 89 of file Time.hpp.

References MSECS_IN_SECS.

Referenced by Seconds_to_msecs().

nsecs RTT::secs_to_nsecs ( const secs  s)
inline

Definition at line 91 of file Time.hpp.

References NSECS_IN_SECS.

Referenced by Seconds_to_nsecs().

psecs RTT::secs_to_psecs ( const secs  s)
inline

Definition at line 92 of file Time.hpp.

References PSECS_IN_SECS.

Referenced by Seconds_to_psecs().

usecs RTT::secs_to_usecs ( const secs  s)
inline

Definition at line 90 of file Time.hpp.

References USECS_IN_SECS.

Referenced by Seconds_to_usecs().

bool RTT::updateOrRefreshProperty ( PropertyBase source,
PropertyBase target,
bool  update 
)
nsecs RTT::usecs_to_nsecs ( const usecs  us)
inline

Definition at line 98 of file Time.hpp.

References NSECS_IN_USECS.

psecs RTT::usecs_to_psecs ( const usecs  us)
inline

Definition at line 99 of file Time.hpp.

References PSECS_IN_USECS.

Seconds RTT::usecs_to_Seconds ( const usecs  ns)
inline

Definition at line 106 of file Time.hpp.

Variable Documentation

char const* RTT::default_comp_path_build
const long RTT::MSECS_IN_SECS = 1000

Definition at line 75 of file Time.hpp.

Referenced by secs_to_msecs().

const long RTT::NSECS_IN_MSECS = 1000 * USECS_IN_MSECS

Definition at line 81 of file Time.hpp.

Referenced by msecs_to_nsecs().

const long RTT::NSECS_IN_SECS = 1000 * USECS_IN_SECS

Definition at line 77 of file Time.hpp.

Referenced by secs_to_nsecs(), and RTT::Logger::startup().

const long RTT::NSECS_IN_USECS = 1000

Definition at line 84 of file Time.hpp.

Referenced by usecs_to_nsecs().

const long RTT::PSECS_IN_MSECS = 1000 * NSECS_IN_MSECS

Definition at line 82 of file Time.hpp.

Referenced by msecs_to_psecs().

const long RTT::PSECS_IN_NSECS = 1000

Definition at line 87 of file Time.hpp.

Referenced by nsecs_to_psecs().

const long long RTT::PSECS_IN_SECS = 1000LL * NSECS_IN_SECS

Definition at line 78 of file Time.hpp.

Referenced by secs_to_psecs().

const long RTT::PSECS_IN_USECS = 1000 * NSECS_IN_USECS

Definition at line 85 of file Time.hpp.

Referenced by usecs_to_psecs().

const long RTT::USECS_IN_MSECS = 1000

Definition at line 80 of file Time.hpp.

Referenced by msecs_to_usecs().

const long RTT::USECS_IN_SECS = 1000 * MSECS_IN_SECS

Definition at line 76 of file Time.hpp.

Referenced by secs_to_usecs().