Zora++
What is Zora++?
Zora++ is a simple add-on for the Carmen Framework. It provides C++ wrapper classes for Carmen messages, and C++ handler classes that send/receive those messages via IPC and logfile streams. A set of macros is defined that can be used to easily create new messages (and their corresponding handler) classes.
Where can I get/download Zora++?
Zora++ is part of the AISSVN repository. Issue
svn checkout https://aissvn.informatik.uni-freiburg.de/svn/projects-carmen-freiburg
to check out the latest version. For doing so, you will need an AISSVN account.
Zora++ depends on:
- Carmen
- wxGTK
Can I see a demo application using Zora++?
Sure. The following demo application shows the main benefits of using the Zora++. The application connects to a local central
-server where it waits for messages of a (simulated) manipulator. By overwriting the OnStatusAllMessage()
-method (defined in the MessageDispatcher
-interface). It prints a dot (”.”) for every incoming manipulator status message, and sends every now and then a JointRotateMessage
. Note that the message's parameters can both be set via its constructor, as well as via its Getters/Setters.
#include <wx/wx.h> #include "zora++.h" class ZoraDemoApp : public wxApp, MessageDispatcher { public: StatusAllHandler allStatusHandler; JointRotateHandler jointRotateHandler; void OnStatusAllMessage(StatusAllMessage &msg) { printf("."); if(rand() % 30 == 0) { JointRotateMessage msg(rand() % 4,rand() % 180 - 90,20.0,0.0); msg.Send(); printf("\nRotating joint %d to position %f\n",msg.GetModule(),msg.GetPosition()); } }; bool OnInit() { IPC::GetInstance()->ConnectTo("localhost"); return true; } }; IMPLEMENT_APP(ZoraDemoApp)
HOWTOs
last modified on 2008/05/27 12:58