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
|
termdisplayevents.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 TERM_DISPLAY_EVENTS_H 00012 #define TERM_DISPLAY_EVENTS_H 00013 00014 #include <hydroiceutil/eventqueue.h> 00015 #include <orcacm/types.h> 00016 #include <orcaprobe/idisplay.h> // for focus types 00017 00018 // alexm: we put these event definitions on the top level (not with term-iostream driver) 00019 // in case we write another terminal display driver (e.g. ncurses) which is likely to 00020 // use the same events. 00021 00022 namespace probe 00023 { 00024 00025 enum EventType 00026 { 00027 NetworkActivityChanged=0, 00028 FocusChanged, 00029 RegistryDataChanged, 00030 PlatformDataChanged, 00031 ComponentDataChanged, 00032 InterfaceDataChanged, 00033 OperationDataChanged 00034 }; 00035 00036 class NetworkActivityChangedEvent : public hydroiceutil::Event 00037 { 00038 public: 00039 NetworkActivityChangedEvent( bool isActive ) 00040 : Event( NetworkActivityChanged ), 00041 isActive_(isActive) {}; 00042 00043 bool isActive_; 00044 }; 00045 typedef IceUtil::Handle<NetworkActivityChangedEvent> NetworkActivityChangedEventPtr; 00046 00047 class FocusChangedEvent : public hydroiceutil::Event 00048 { 00049 public: 00050 FocusChangedEvent( orcaprobe::IDisplay::FocusType focus ) 00051 : Event( FocusChanged ), 00052 focus_(focus) {}; 00053 00054 orcaprobe::IDisplay::FocusType focus_; 00055 }; 00056 typedef IceUtil::Handle<FocusChangedEvent> FocusChangedEventPtr; 00057 00058 class RegistryDataChangedEvent : public hydroiceutil::Event 00059 { 00060 public: 00061 RegistryDataChangedEvent( const orcacm::RegistryHierarchicalData1 & data ) 00062 : Event( RegistryDataChanged ), 00063 data_(data) {}; 00064 00065 orcacm::RegistryHierarchicalData1 data_; 00066 }; 00067 typedef IceUtil::Handle<RegistryDataChangedEvent> RegistryDataChangedEventPtr; 00068 00069 class PlatformDataChangedEvent : public hydroiceutil::Event 00070 { 00071 public: 00072 PlatformDataChangedEvent( const orcacm::RegistryHierarchicalData2 & data ) 00073 : Event( PlatformDataChanged ), 00074 data_(data) {}; 00075 00076 orcacm::RegistryHierarchicalData2 data_; 00077 }; 00078 typedef IceUtil::Handle<PlatformDataChangedEvent> PlatformDataChangedEventPtr; 00079 00080 class ComponentDataChangedEvent : public hydroiceutil::Event 00081 { 00082 public: 00083 ComponentDataChangedEvent( const orcacm::ComponentData & data ) 00084 : Event( ComponentDataChanged ), 00085 data_(data) {}; 00086 00087 orcacm::ComponentData data_; 00088 }; 00089 typedef IceUtil::Handle<ComponentDataChangedEvent> ComponentDataChangedEventPtr; 00090 00091 class InterfaceDataChangedEvent : public hydroiceutil::Event 00092 { 00093 public: 00094 InterfaceDataChangedEvent( const orcacm::InterfaceData & data ) 00095 : Event( InterfaceDataChanged ), 00096 data_(data) {}; 00097 00098 orcacm::InterfaceData data_; 00099 }; 00100 typedef IceUtil::Handle<InterfaceDataChangedEvent> InterfaceDataChangedEventPtr; 00101 00102 00103 class OperationDataChangedEvent : public hydroiceutil::Event 00104 { 00105 public: 00106 OperationDataChangedEvent( const orcacm::OperationData & data ) 00107 : Event( OperationDataChanged ), 00108 data_(data) {}; 00109 00110 orcacm::OperationData data_; 00111 }; 00112 typedef IceUtil::Handle<OperationDataChangedEvent> OperationDataChangedEventPtr; 00113 00114 00115 00116 } // namespace 00117 00118 #endif |
Webmaster: Tobias Kaupp (tobasco at users.sourceforge.net)