Utility Features

Data Structures

class  ArmarXDataPath
class  ArmarXPackageToolInterface
 The ArmarXPackageToolInterface class. More...
class  CMakePackageFinder
 The CMakePackageFinder class provides an interface to the CMake Package finder capabilities. More...
class  DynamicLibrary
 The DynamicLibrary class provides a mechanism to load libraries at runtime. More...
struct  TypeTemplateTraits
 Traits about templates taking only types as parameters. More...
class  Registrar< RegisteredType, KeyType, class >
 Stores key object pairs. More...


 Slice Documentation
 The HiddenTimedMutex class is a mutex, that has a normal boost::mutex interface, but will timeout after fixed (defined in MUTEX_TIMEOUT_MSEC) interval and throw a MutexTimeoutException, if it could not aquire the mutex in that time.
This way, the stacktrace to the deadlock can be easily retrieved.

Detailed Description

Basic Data Types

As a software developer your software consists usually deep down of the basic data types: bool, int, float, double, string. These exists of course also in the IDL Slice that we use. Additionally, you will frequently need containers of these basic types and for less typing typedefs onto these. These are also already defined in Ice in the case of a list and there is no need to redefine these typedefs again.

The scheme they are defined in is: <type>Seq.

So for example IntSeq.

They are defined in <Ice/BuiltinSequences.ice> resp. <Ice/BuiltinSequences.h>.

The complete list can be found here: https://doc.zeroc.com/display/Ice35/Ice+Slice+API#IceSliceAPI-StringSeq

Additionally, ArmarX provides a concept for transmitting custom types over one basic type: The Variants. This is an essential part of the generic Observer concept and the Statecharts.