MARIE SVN Trunk
From MARIE
Documentation
- MARIE SVN Trunk Installation Guide
- Showcase Installation Guide
- API (doxygen) (incomplete)
- UserGuide (doxygen) (incomplete)
- Upgrading from MARIE 0.4 to MARIE 0.5
LogEntity
MARIE SVN Trunk Version is characterized by the usage of a new logging facility based on log4cxx. See all relevant information on the design and the usage of the logger here.
Supported LogEntity:
| LogEntity | Description |
| LogEntityDataFactory | Log entity entirely configurable |
| LogEntityDefaultConsole | Log entity to journalize at the console |
| LogEntityDefaultFile | Log entity to journalize in a file |
| LogEntitySuffixed | Log entity to create many files for a tag in a process |
Application Adapters
Note : Not all Application Adapters included in previous version are supported in this release yet. They will be added gradually when needed or with users collaboration. See Integrated Softwares for a complete list.
| AA | Description |
| aacarmen | Establishes communications with CARMEN, the Carnegie Mellon Navigation Toolkit.
Three adapters are available :
|
| aafd | Establishes communications with a FlowDesigner network.
|
| aaplayer | Establishes communications with a Player server and make available base interfaces to MARIE (motor, odometry, laser, IR, sonar, gripper, power, bumper, fiducial).
|
| aaplayermc | Establishes communications with multiple Player server and make available base interfaces to MARIE (motor, odometry, laser, IR, sonar, gripper, power, bumper, fiducial).
It contain an optional simulation monitoring mechanism. Supported version : Player 1.6.5, Stage 2.0.0a |
| aastatgrab | Prints system statistics such as CPU used, memory used, etc.
|
| aabehaviors | Allow the development of behavioral layer using the subsumption arbitration mechanism.
|
Communication Adapters
| CA | Description |
| mailbox | Creates buffering interface between asynchronous components. Transmitter pushes a message in the mailbox when it is ready to do so, without bothering if receiver is ready to receive it. Receiver needs to poll the mailbox to see if new message is available. |
| sharedmap | Shares data between multiple sources in key-value form. Keys and values are stored in string format. |
| splitter | Transmits data coming from one source to multiple sources without having the sender to be aware of each receivers. |
Application Managers
| AM | Description |
| ammpi | Command-line application that spawns, initializes and starts components and applications of Project. |
| appman | Command-line application interacting with component using socket-based director and configurator (deprecated). |
| wxammpi | WxWidgets application that spawns, initializes and starts components and applications of Project. |
Communication Managers
None
Cascading Functional Blocks
| CFB | Description |
| MarieImageExtractor | Deserializes data in MARIEIMAGE data format. |
| MarieImageFormatter | Serializes data in MARIEIMAGE data format. |
| MarieXMLExtractor | Deserializes data in MARIEXML data format. |
| MarieXMLFormatter | Serializes data in MARIEXML data format. |
| QtProbe | Debug tool opening a graphical probe showing serialized data. |
Communication Strategies
| CS | Description |
| MPI | Communication strategy based on MPI2 standard. It can only communicates with the parent communication interface that launched the process. |
| SharedMem | Communication strategy based on ACE Shared Memory implementation. Accepts or connects to another SharedMem. Must be managed by Project. |
| SharedMemAcceptor | Communication strategy based on ACE Shared Memory implementation. It can only accept one connection from a SharedMemConnector. |
| SharedMemConnector | Communication strategy based on ACE Shared Memory implementation. It can only connect to one SharedMemAcceptor. |
| Socket | Communication strategy based on ACE Socket implementation. Accepts or connects to another Socket. Must be managed by Project. |
| SocketAcceptor | Communication strategy based on ACE Socket implementation. It can only accept one connection from a SocketConnector. |
| SocketConnector | Communication strategy based on ACE Socket implementation. It can only connect to one SocketAcceptor. |
Data
| Data | Description |
| CommandCamera | Encapsulates camera command (absolute or relative PTZ, contrast, brightness) |
| CommandGripper | Encapsulates gripper command (close, open, etc.) |
| CommandJoystick | Encapsulates joystick command (X&Y pos, min X&Y, max X&Y, nb buttons, buttons' states) |
| CommandMotor | Encapsulates motor command (rotation and linear speed) |
| Data2DPoint | Encapsulates 2D point data (x,y). |
| Data3DPoint | Encapsulates 3D point data (x,y,z). |
| DataAssociativeMap | Encapsulates key-value data (key and value are in string format). |
| DataBumper | Encapsulates bumper data (nb bumpers, bumpers' status). |
| DataCamera | Encapsulates camera data (PTZ status, image format, image size, image raw data). |
| DataGripper | Encapsulates gripper status data. |
| DataImage | Encapsulates image data (width, height, nb planes, pixel data) |
| DataIR | Encapsulates IR data (nb irs, ranges). |
| DataLaser | Encapsulates laser data (nb lasers, ranges). |
| DataLocalisation | Encapsulates multiple audio sources localisation data (normalized 3D position, strength, age, id) |
| DataList | Encapsulates a list of DataAbstract objects. |
| DataNull | Null data. |
| DataOdometry | Encapsulates odometry data (x,y,z, yaw, pitch, roll, x speed, y speed, rot speed). |
| DataPathPlan | Encapsulates a list of 2D points corresponding to a path plan. |
| DataPower | Encapsulates power data (energy level, energy consumed, voltage level, current level, power level, energy remaining time). |
| DataRaw | Encapsulates string data information, identified with an ID. |
| DataSonar | Encapsulates sonar data (nb sonars, ranges). |
| DataSpeech | Encapsulates speech recognition data (raw text, interpreted text, level of confidence, speaker id) |
| DataVisualObject | Encapsulates 2D visual object data (absolute X&Y, camera X&Y, color, shape) |
| RequestSystem | Encapsulates MARIE's system request (init, start, stop, etc.) |
Factory & Serializer/Deserializer
| Factory Name | Description | Supported Data (SerDes) |
| MARIEIMAGE | Homemade serialization protocol for images | DataImage, DataNull |
| MARIETAB | Homemade serialization protocol based on Tab Separated Values representation | DataNull, DataOdometry |
| MARIEXML | Homemade serialization protocol using XML | CommandCamera, CommandGripper, CommandJoystick, CommandMotor, Data2DPoint, Data3DPoint, DataAssociativeMap, DataBumper, DataCamera, DataGripper, DataIR, DataLaser, DataList, DataLocalisation, DataNull, DataOdometry, DataPathPlan, DataPower, DataRaw, DataSonar, DataSpeech, DataVisualObject, RequestSystem |
Ports
| Port | Description |
| Default Port | Default Port implementation. |
Configuration Language
| Configuration Language | Description |
| XML | XML configuration language |
Tools
| Tools | Description |
| mapconv | Map converting tool |
| marie-info | Prints information on the dynamically loaded plugins such as SerDes, CS, CFB. |
Testing
| Testing Tools | Description |
| libmariecore_ut | Library containing useful Mock classes included in libmariecore (incompleted) |
| data test framework | Useful classes to test data, SerDes and Data Factories. |
MARIE Toolbox for RobotFlow
| Block | Description |
| extractMarieCommandCamera | Extracts CommandCamera data |
| extractMarieCommandGripper | Extracts CommandGripper data |
| extractMarieCommandJoystick | Extracts CommandJoystick data |
| extractMarieCommandMotor | Extracts CommandMotor data |
| extractMarieDataBumper | Extracts DataBumper data |
| extractMarieDataCamera | Extracts DataCamera data |
| extractMarieDataGripper | Extracts DataGripper data |
| extractMarieDataIR | Extracts DataIR data |
| extractMarieDataLaser | Extracts DataLaser data |
| extractMarieDataList | Extracts DataList data |
| extractMarieDataLocalisation | Extracts DataLocalisation data |
| extractMarieDataMap | Extracts DataMap data |
| extractMarieDataOdometry | Extracts DataOdometry data |
| extractMarieDataRaw | Extracts DataRaw data |
| extractMarieDataSonar | Extracts DataSonar data |
| extractMarieRequestSystem | Extracts RequestSystem data |
| isMarieDataNull | Check if input data is an instance of DataNull |
| MarieObject | FlowDesigner base object class encapsulating an instance of MARIE's DataAbstract derived object. |
| MariePeek | Sends a peek request and deserializes retrieve object using MARIEXML factory. |
| MariePull | Sends a pull request and deserializes retrieve object using MARIEXML factory. |
| MariePush | Pushes input data using MARIEXML factory. |
| newMarieCommandCamera | Creates a CommandCamera object |
| newMarieCommandGripper | Creates a CommandGripper object |
| newMarieCommandJoystick | Creates a CommandJoystick object |
| newMarieCommandMotor | Creates a CommandMotor object |
| newMarieDataBumper | Creates a DataBumper object |
| newMarieDataCamera | Creates a DataCamera object |
| newMarieDataGripper | Creates a DataGripperobject |
| newMarieDataIR | Creates a DataIR object |
| newMarieDataLaser | Creates a DataLaser object |
| newMarieDataList | Creates a DataList object |
| newMarieDataLocalisation | Creates a DataLocalisation object |
| newMarieDataMap | Creates a DataMap object |
| newMarieDataNull | Creates a DataNull object |
| newMarieDataOdometry | Creates a DataOdometry object |
| newMarieDataRaw | Creates a DataRaw object |
| newMarieDataSonar | Creates a DataSonar object |
| newMarieRequestSystem | Creates a RequestSystem object |
