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

 

         

components/propertyserver/mainthread.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 #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)


Generated for Orca Robotics by  doxygen 1.4.5