orca-robotics INTRODUCTION Overview Download and Install Quick Start Documentation Publications REPOSITORY Interfaces Components Libraries Utilities Software Map DEVELOPER Tutorials Examples Dev Guide Dashboard Wiki login/pass: orca/orca PEOPLE Contributors Users Project Download Mailing lists
|
pathplanner2dI.h00001 /* 00002 * Orca-Robotics Project: Components for robotics 00003 * http://orca-robotics.sf.net/ 00004 * Copyright (c) 2004-2008 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 PATHPLANNER2DI_H 00012 #define PATHPLANNER2DI_H 00013 00014 #include <IceStorm/IceStorm.h> 00015 00016 #include <orca/pathplanner2d.h> 00017 #include <gbxsickacfr/gbxiceutilacfr/store.h> 00018 #include <gbxsickacfr/gbxiceutilacfr/buffer.h> 00019 00020 namespace pathplanner 00021 { 00022 00023 class PathPlanner2dI : public orca::PathPlanner2d 00024 { 00025 public: 00026 PathPlanner2dI( gbxsickacfr::gbxiceutilacfr::Buffer<orca::PathPlanner2dTask> &pathPlannerTaskStore, 00027 const orcaice::Context &context ); 00028 00029 // remote calls 00030 virtual ::Ice::Int setTask(const ::orca::PathPlanner2dTask&, const ::Ice::Current& = ::Ice::Current()); 00031 00032 virtual void subscribe(const ::orca::PathPlanner2dConsumerPrx&, const ::Ice::Current& = ::Ice::Current()); 00033 virtual void unsubscribe(const ::orca::PathPlanner2dConsumerPrx&, const ::Ice::Current& = ::Ice::Current()); 00034 00035 virtual ::orca::PathPlanner2dData getData(const ::Ice::Current& ) const; 00036 00037 // local calls 00038 void localSetData( const ::orca::PathPlanner2dData& data ); 00039 00040 private: 00041 00042 gbxsickacfr::gbxiceutilacfr::Buffer<orca::PathPlanner2dTask>& pathPlannerTaskBuffer_; 00043 00044 // the driver puts the latest computed path into here using localSetData 00045 gbxsickacfr::gbxiceutilacfr::Store<orca::PathPlanner2dData> pathPlannerDataStore_; 00046 00047 // The topic to which we'll publish 00048 IceStorm::TopicPrx topicPrx_; 00049 00050 // The interface to which we'll publish 00051 orca::PathPlanner2dConsumerPrx consumerPrx_; 00052 00053 orcaice::Context context_; 00054 00055 }; 00056 00057 } // namespace 00058 00059 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)