00001 // This file is automatically generated, do not edit. 00002 00003 #ifndef lestes__std__action_g_hh__included 00004 #define lestes__std__action_g_hh__included 00005 00006 #include <lestes/common.hh> 00007 #include <lestes/std/list.hh> 00008 00009 #include <lestes/std/objectize_macros.hh> 00010 package(lestes); 00011 package(std); 00012 00013 00014 class object; 00015 class action; 00016 class multi_action; 00017 00018 00019 class action : public object { 00020 public: 00021 virtual void run() abstract; 00022 00023 00024 00025 //! for purposes of dumping 00026 virtual ptr<reflection_list> reflection_get() const; 00027 //! for purposes of dumping 00028 virtual ptr<field_list_list> field_values_get() const; 00029 00030 protected: 00031 //! Generated constructor for class action. 00032 action ( 00033 ); 00034 00035 //! Marking routine for class action. 00036 virtual void gc_mark(); 00037 00038 private: 00039 static ptr<reflection_list> reflection; 00040 00041 }; // action 00042 00043 00044 //! Action that holds a list of other actions; it runs them in its run() method. 00045 class multi_action : public action { 00046 public: 00047 //! The method running_get returns the value of the field multi_action::running. 00048 bool running_get() const; 00049 00050 //! The method running_set sets the field multi_action::running to the given value. 00051 void running_set(bool); 00052 00053 //! The method action_list_get returns the value of the field multi_action::action_list. 00054 ptr< ::lestes::std::list< srp< action > > > action_list_get() const; 00055 00056 void attach(ptr< action > ); 00057 00058 void detach(ptr< action > ); 00059 00060 //! Non-virtual shortcut for run(). 00061 void trigger(); 00062 00063 virtual void run(); 00064 00065 00066 //! First generated factory method for class multi_action. 00067 static ptr< multi_action > create ( 00068 bool a__multi_action__running, 00069 ptr< ::lestes::std::list< srp< action > > > a__multi_action__action_list); 00070 00071 //! Second generated factory method for class multi_action. 00072 static ptr< multi_action > create ( 00073 ); 00074 00075 00076 00077 //! for purposes of dumping 00078 virtual ptr<reflection_list> reflection_get() const; 00079 //! for purposes of dumping 00080 virtual ptr<field_list_list> field_values_get() const; 00081 00082 protected: 00083 //! Generated constructor for class multi_action. 00084 multi_action ( 00085 bool a__multi_action__running, 00086 ptr< ::lestes::std::list< srp< action > > > a__multi_action__action_list); 00087 00088 //! Marking routine for class multi_action. 00089 virtual void gc_mark(); 00090 00091 private: 00092 bool running; 00093 srp< ::lestes::std::list< srp< action > > > action_list; 00094 static ptr<reflection_list> reflection; 00095 00096 }; // multi_action 00097 00098 00099 end_package(std); 00100 end_package(lestes); 00101 00102 #endif // lestes__std__action_g_hh__included
1.5.1-20070107