[Rock-dev] Rock Cpp
Janosch Machowinski
Janosch.Machowinski at dfki.de
Wed Feb 24 15:29:07 CET 2016
Hi,
I'm glad to inform you, that the first stable version of
Rock Cpp is out there. To use it, you need to use a recent
version of Orogen (newer than the last release) and add
git at github.com:rock-cpp/package_set.git
to your manifest. This will trigger a rebuild of all orocos
packages.
Afterwards, for every orocos package, there will be a
library named <orocosPackage>-proxies available.
You need to link against every proxy, that you actually use
in your program.
Helper classes and tooling can be found in the package
tools/orocos_cpp
An example :
#include <rtt/transports/corba/TaskContextServer.hpp>
#include <orocos_cpp/Spawner.hpp>
#include <orocos_cpp/ConfigurationHelper.hpp>
#include <orocos_cpp/TransformerHelper.hpp>
#include <orocos_cpp/LoggingHelper.hpp>
#include <orocos/odometry/proxies/Skid.hpp>
using namespace orocos_cpp;
int main(int argc, char**argv)
{
//always needed
RTT::corba::TaskContextServer::InitOrb(argc, argv);
const std::string odometryName("OdoName");
Spawner &spawner(Spawner::getInstace());
spawner.spawnTask("odometry::Skid", odometryName);
spawner.waitUntilAllReady(base::Time::fromSeconds(2.0));
odometry::proxies::Skid odometry(odometryName);
RTT::InputPort<base::samples::RigidBodyState> &odoReader =
odometry.odometry_samples.getReader(RTT::ConnPolicy::buffer(50));
ConfigurationHelper confHelper;
confHelper.applyConfig(&odometry, "default", "myRobot");
smurf::Robot robotGeometry;
TransformerHelper trHelper(robotGeometry);
trHelper.configureTransformer(&odometry);
LoggingHelper logHelper;
logHelper.logTasks();
odometry.configure();
odometry.start();
while(spawner.checkAllProcesses())
{
base::samples::RigidBodyState odoValue;
while(odoReader.read(odoValue) == RTT::NewData)
{
//doSomething;
}
}
odometry.stop();
spawner.killAll();
return 0;
}
Greetings
Janosch
--
Dipl. Inf. Janosch Machowinski
SAR- & Sicherheitsrobotik
Universität Bremen
FB 3 - Mathematik und Informatik
AG Robotik
Robert-Hooke-Straße 1
28359 Bremen, Germany
Zentrale: +49 421 178 45-6611
Besuchsadresse der Nebengeschäftstelle:
Robert-Hooke-Straße 5
28359 Bremen, Germany
Tel.: +49 421 178 45-6614
Empfang: +49 421 178 45-6600
Fax: +49 421 178 45-4150
E-Mail: jmachowinski at informatik.uni-bremen.de
Weitere Informationen: http://www.informatik.uni-bremen.de/robotik
More information about the Rock-dev
mailing list