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

 

         

robot2d/netthread.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 NETWORK_THREAD_H
00012 #define NETWORK_THREAD_H
00013 
00014 #include <orcaice/subsystemthread.h>
00015 #include <orcaice/context.h>
00016 
00017 #include <orcaifaceimpl/odometry2d.h>
00018 #include <orcaifaceimpl/velocitycontrol2d.h>
00019 #include "hwthread.h"
00020 
00021 namespace robot2d
00022 {
00023 
00024 //
00025 // Handles network interface
00026 //
00027 class NetThread : public orcaice::SubsystemThread,
00028                   public orcaifaceimpl::AbstractVelocityControl2dCallback
00029 {
00030 public:
00031 
00032     NetThread( HwThread                      &HwThread,
00033                 const orca::VehicleDescription &descr,
00034                 const orcaice::Context         &context );
00035 
00036     // from orcaifaceimpl::AbstractVelocityControl2dCallback
00037     virtual void setCommand(const orca::VelocityControl2dData &cmd);
00038 
00039 private:
00040     // from SubsystemThread
00041     virtual void initialise();
00042     virtual void work();
00043 
00044     void limit( hydrointerfaces::Robot2d::Command &cmd );
00045 
00046     // external interfaces
00047     orcaifaceimpl::Odometry2dImplPtr           odometry2dI_;
00048     orcaifaceimpl::VelocityControl2dImplPtr    velocityControl2dI_;
00049 
00050     HwThread &HwThread_;
00051 
00052     orca::VehicleDescription descr_;
00053 
00054     double maxSpeed_;
00055     double maxTurnrate_;
00056 
00057     // component current context
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