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 Project Download Mailing lists
|
components/propertyserver/mainthread.h00001 /* 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 #ifndef MAIN_THREAD_H 00011 #define MAIN_THREAD_H 00012 00013 #include <memory> 00014 #include <orcaice/subsystemthread.h> 00015 #include <orcaice/context.h> 00016 #include <orcaifaceimpl/properties.h> 00017 #include "propertydb.h" 00018 00019 namespace propserver { 00020 00021 // 00022 // @brief the main executing loop of this component. 00023 // 00024 class MainThread : public orcaice::SubsystemThread 00025 { 00026 00027 public: 00028 00029 MainThread( const orcaice::Context &context ); 00030 00031 private: 00032 // from SubsystemThread 00033 virtual void initialise(); 00034 virtual void work(); 00035 00036 // Loops until established 00037 void initNetworkInterface(); 00038 void initPropertiesDb(); 00039 00040 // The interface 00041 orcaifaceimpl::PropertiesImplPtr propertiesInterface_; 00042 00043 // The database of properties 00044 PropertyDb propertyDb_; 00045 00046 // Where we load/save our properties 00047 std::string persistanceFile_; 00048 00049 orcaice::Context context_; 00050 }; 00051 00052 } // namespace 00053 00054 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)