Difference between revisions of "API2"
From RobotinoWiki
(→Example) |
(→C++ example) |
||
Line 38: | Line 38: | ||
rec::robotino::api2::shutdown(); | rec::robotino::api2::shutdown(); | ||
+ | |||
+ | return 0; | ||
+ | } | ||
+ | </pre> | ||
+ | |||
+ | ==C example== | ||
+ | <pre> | ||
+ | #include <stdio.h> | ||
+ | #include <stdlib.h> | ||
+ | #include <string.h> | ||
+ | |||
+ | #ifdef WIN32 | ||
+ | #include <windows.h> | ||
+ | #else | ||
+ | #include <unistd.h> //usleep | ||
+ | #endif | ||
+ | |||
+ | #include "rec/robotino/api2/c/Com.h" | ||
+ | |||
+ | void msleep( unsigned int ms ) | ||
+ | { | ||
+ | #ifdef WIN32 | ||
+ | SleepEx( ms, FALSE ); | ||
+ | #else | ||
+ | usleep( ms * 1000 ); | ||
+ | #endif | ||
+ | } | ||
+ | |||
+ | ComId com; | ||
+ | BumperId bumper; | ||
+ | |||
+ | int main( int argc, char **argv ) | ||
+ | { | ||
+ | com = Com_construct(); | ||
+ | |||
+ | if( argc > 1 ) | ||
+ | { | ||
+ | Com_setAddress( com, argv[1] ); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | Com_setAddress( com, "172.26.1.1" ); | ||
+ | } | ||
+ | |||
+ | if( FALSE == Com_connect( com ) ) | ||
+ | { | ||
+ | printf( "Error on connect" ); | ||
+ | exit(1); | ||
+ | } | ||
+ | else | ||
+ | { | ||
+ | char addressBuffer[256]; | ||
+ | Com_address( com, addressBuffer, 256 ); | ||
+ | printf( "Connected to %s\n", addressBuffer ); | ||
+ | } | ||
+ | |||
+ | while( Com_isConnected( com ) && FALSE == Bumper_value( bumper ) ) | ||
+ | { | ||
+ | printf("Value of bumper is %d\n",Bumper_value( bumper ) ) | ||
+ | msleep( 50 ); | ||
+ | } | ||
+ | |||
+ | Bumper_destroy( bumper ); | ||
+ | Com_destroy( com ); | ||
return 0; | return 0; | ||
} | } | ||
</pre> | </pre> |
Revision as of 11:57, 18 March 2019
Introduction
A C/C++ library to access Robotino's sensors and actors from your own program. |
Quick links
C++ example
#include <iostream> #include "rec/robotino/api2/all.h" rec::robotino::api2::Com com; rec::robotino::api2::Bumper bumper; int main( int argc, char **argv ) { std::string hostname = "172.26.1.1"; if( argc > 1 ) { hostname = argv[1]; } com.setAddress( hostname.c_str() ); com.connectToServer( true ); while(com.isConnected() && false == bumper.value()) { std::cout << "Bumper is " << (bumper.value()?"":"not") << " pressed" << std::endl; com.processEvents(); rec::robotino::api2::msleep( 100 ); } com.disconnectFromServer(); rec::robotino::api2::shutdown(); return 0; }
C example
#include <stdio.h> #include <stdlib.h> #include <string.h> #ifdef WIN32 #include <windows.h> #else #include <unistd.h> //usleep #endif #include "rec/robotino/api2/c/Com.h" void msleep( unsigned int ms ) { #ifdef WIN32 SleepEx( ms, FALSE ); #else usleep( ms * 1000 ); #endif } ComId com; BumperId bumper; int main( int argc, char **argv ) { com = Com_construct(); if( argc > 1 ) { Com_setAddress( com, argv[1] ); } else { Com_setAddress( com, "172.26.1.1" ); } if( FALSE == Com_connect( com ) ) { printf( "Error on connect" ); exit(1); } else { char addressBuffer[256]; Com_address( com, addressBuffer, 256 ); printf( "Connected to %s\n", addressBuffer ); } while( Com_isConnected( com ) && FALSE == Bumper_value( bumper ) ) { printf("Value of bumper is %d\n",Bumper_value( bumper ) ) msleep( 50 ); } Bumper_destroy( bumper ); Com_destroy( com ); return 0; }