|
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
|
browserthread.h00001 /* 00002 * Orca-Robotics Project: Components for robotics 00003 * http://orca-robotics.sf.net/ 00004 * Copyright (c) 2006-2007 Alexei Makarenko 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 BROWSER_HANDLER_H 00012 #define BROWSER_HANDLER_H 00013 00014 #include <vector> 00015 #include <hydroiceutil/eventqueue.h> 00016 #include <orcaice/context.h> 00017 #include <orcacm/types.h> 00018 00019 #include "browserfsm.h" 00020 #include <orcaprobe/ibrowser.h> 00021 00022 namespace probe 00023 { 00024 00025 class ProbeFactory; 00026 class InterfaceProbe; 00027 00028 class BrowserThread : public orcaprobe::IBrowser, public gbxiceutilacfr::SafeThread, public BrowserFsm 00029 { 00030 00031 public: 00032 BrowserThread( orcaprobe::AbstractDisplay & display, 00033 std::vector<orcaprobe::Factory*> &factories, 00034 const orcaice::Context & context ); 00035 00036 // from orcaprobe::IBrowser 00037 virtual void chooseActivate(); 00038 virtual void chooseReload(); 00039 virtual void chooseUp(); 00040 virtual void chooseTop(); 00041 virtual void choosePick( int ); 00042 virtual void chooseFilter( const std::string & ); 00043 virtual void chooseDeactivate(); 00044 00045 private: 00046 00047 // from Thread 00048 virtual void walk(); 00049 00050 // from BrowserFsm 00051 virtual void loadRegistry(); 00052 virtual void filterRegistry(); 00053 virtual void showRegistry(); 00054 virtual void loadPlatform(); 00055 virtual void showPlatform(); 00056 virtual void loadComponent(); 00057 virtual void showComponent(); 00058 virtual void loadInterface(); 00059 virtual void showInterface(); 00060 virtual void loadOperation(); 00061 virtual void showOperation(); 00062 00063 virtual void pickLastPlatform() { pick_=lastPlatformPick_;}; 00064 virtual void pickLastComponent() { pick_=lastComponentPick_;}; 00065 virtual void pickLastInterface() { pick_=lastInterfacePick_;}; 00066 virtual void pickLastOperation() { pick_=lastOperationPick_;}; 00067 00068 virtual void quit(); 00069 00070 std::vector<orcaprobe::Factory*> &factories_; 00071 00072 orcaprobe::AbstractDisplay & display_; 00073 00074 hydroiceutil::EventQueuePtr events_; 00075 00076 orcaprobe::InterfaceProbePtr ifaceProbe_; 00077 00078 orcaice::Context context_; 00079 00080 // user's last choice 00081 int pick_; 00082 int lastPlatformPick_; 00083 int lastComponentPick_; 00084 int lastInterfacePick_; 00085 int lastOperationPick_; 00086 00087 orcacm::RegistryHomeData registryHomeData_; 00088 00089 orcacm::RegistryHierarchicalData1 registryData_; 00090 orcacm::RegistryHierarchicalData2 platformData_; 00091 orcacm::ComponentData componentData_; 00092 orcacm::InterfaceData interfaceData_; 00093 orcacm::OperationData operationData_; 00094 00095 // user's last filter 00096 std::string filter_; 00097 }; 00098 00099 } // namespace 00100 00101 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)
1.4.5