|
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
|
subsystemthread.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 ORCAICE_SUBSYSTEM_THREAD_H 00012 #define ORCAICE_SUBSYSTEM_THREAD_H 00013 00014 #include <orcaice/substatusthread.h> 00015 00016 namespace orcaice { 00017 00046 class SubsystemThread : public orcaice::SubstatusThread 00047 { 00048 public: 00050 SubsystemThread( gbxutilacfr::Tracer& tracer, gbxutilacfr::Status& status, const std::string& subsysName="SubsystemThread" ); 00051 virtual ~SubsystemThread() {}; 00052 00053 protected: 00054 // implementation note: FSM actions need to be protected so that the derived class 00055 // can call them without re-implementing. 00056 00059 virtual void initialise() {}; 00060 00063 virtual void work() {}; 00064 00067 virtual void finalise() {}; 00068 00069 private: 00070 // from SubstatusThread 00071 void walk(); 00072 00073 }; 00075 typedef IceUtil::Handle<SubsystemThread> SubsystemThreadPtr; 00076 00077 } 00078 00079 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)
1.4.5