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
|
components/gps2localise2d/mainthread.h00001 /* 00002 * Orca-Robotics Project: Components for robotics 00003 * http://orca-robotics.sf.net/ 00004 * Copyright (c) 2004-2008 Alex Brooks 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 MAIN_THREAD_H 00012 #define MAIN_THREAD_H 00013 00014 #include <gbxsickacfr/gbxiceutilacfr/subsystemthread.h> 00015 #include <orcaice/context.h> 00016 00017 #include <orca/gps.h> 00018 #include <orcaifaceimpl/localise2dImpl.h> 00019 #include <orcaifaceimpl/storingconsumers.h> 00020 00021 namespace gps2localise2d 00022 { 00023 00024 class Driver; 00025 00026 class MainThread : public gbxsickacfr::gbxiceutilacfr::SubsystemThread 00027 { 00028 public: 00029 00030 MainThread( const orcaice::Context &context ); 00031 00032 ~MainThread(); 00033 00034 virtual void walk(); 00035 00036 private: 00037 00038 void subscribeToGps(); 00039 void getGpsDescription(); 00040 void initNetworkInterface(); 00041 void initDriver(); 00042 00043 // This component is 2D-centric: can only handle certain orientations. 00044 bool antennaOffsetOK( const orca::Frame3d &antennaOffset ); 00045 00046 // generic algorithm 00047 Driver* driver_; 00048 00049 // Our external interface 00050 orcaifaceimpl::Localise2dImplPtr localiseInterface_; 00051 00052 orca::GpsPrx gpsPrx_; 00053 orca::Frame3d antennaOffset_; 00054 orca::GpsDescription gpsDescr_; 00055 00056 // Consumers 00057 orcaifaceimpl::StoringGpsConsumerImplPtr gpsConsumer_; 00058 00059 orcaice::Context context_; 00060 }; 00061 00062 } // namespace 00063 00064 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)