INTRODUCTION
Overview
Download and Install
Quick Start
Documentation
Publications

NONFRAMEWORK CODE
Driver Interfaces
Drivers
Libraries
Utilities

FRAMEWORK CODE
Interfaces
Components
Libraries
Utilities

Full Software Listings

DEVELOPER
Tutorials
Examples
Dev Guide
Dashboard

PEOPLE
Contributors
Users

SourceForge.net Logo
Project
Download
Mailing lists

 

         

drivebicycledriver.h

00001 /*
00002  * Orca-Robotics Project: Components for robotics 
00003  *               http://orca-robotics.sf.net/
00004  * Copyright (c) 2004-2009 Alex Brooks, Alexei Makarenko, Tobias Kaupp
00005  *
00006  * This copy of Orca is licensed to you under the terms described in
00007  * the LICENSE file included in this distribution.
00008  *
00009  */
00010 
00011 #ifndef  DRIVE_BICYCLE_NETWORK_DRIVER_H
00012 #define  DRIVE_BICYCLE_NETWORK_DRIVER_H
00013 
00014 #include <orca/drivebicycle.h>
00015 #include <orcaice/context.h>
00016 
00017 #include "networkdriver.h"
00018 
00019 namespace orcateleop
00020 {
00021 
00022 class Display;
00023 
00024 class DriveBicycleDriver : public NetworkDriver
00025 {
00026 
00027 public:
00028     DriveBicycleDriver( Display* display, const orcaice::Context& context );
00029 
00030     virtual ~DriveBicycleDriver();
00031     
00032     virtual int enable();
00033     
00034     virtual int disable();
00035 
00036     virtual void repeatCommand();
00037 
00038     virtual void processMixedCommand( double longitudinal, bool isLongIncrement, 
00039         double transverse, bool isTransverseIncrement, 
00040         double angular, bool isAngularIncrement );
00041     virtual void processIncrementCommand( int longitudinal, int transverse, int angular );
00042     virtual void processRelativeCommand( double longitudinal, double transverse, double angular );
00043 
00044 private:
00045 
00046     void sendCommand();
00047 
00048     orca::DriveBicyclePrx prx_;
00049     orca::DriveBicycleCommand command_;
00050 
00051     double speedIncrement_;     // [m/s]
00052     double steerAngleIncrement_;  // [rad]
00053 
00054     double maxSpeed_;     // [m/s]
00055     double maxSteerAngle_;  // [rad/sec]
00056 
00057     Display* display_;
00058     orcaice::Context context_;
00059 };
00060 
00061 } // namespace
00062 
00063 #endif
 

Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)


Generated for Orca Robotics by  doxygen 1.4.5