00001
00002
00003
00004 #include <lestes/std/list.hh>
00005 #include <lestes/std/pair.hh>
00006 #include <lestes/std/reflect.hh>
00007
00008 #include <lestes/std/action.g.hh>
00009
00010 package(lestes);
00011 package(std);
00012
00013
00014
00015
00016
00017
00018
00019
00020 action::action ()
00021 : object()
00022 {}
00023
00024 ptr< object::reflection_list > action::reflection_get() const
00025 {
00026 if (!reflection) {
00027 typedef class_reflection::field_metadata md;
00028 typedef class_reflection::field_metadata_list mdlist;
00029 ptr<mdlist> mdl = mdlist::create();
00030 reflection = reflection_list::create( object::reflection_get() );
00031 reflection->push_back( class_reflection::create( "action", mdl ) );
00032 }
00033 return reflection;
00034 }
00035
00036 ptr< object::field_list_list > action::field_values_get() const
00037 {
00038 ptr < field_list_list > result = object::field_values_get();
00039 return result;
00040 }
00041
00042
00043
00044
00045
00046
00047 void action::gc_mark()
00048 {
00049 object::gc_mark();
00050 }
00051
00052
00053
00054
00055
00056
00057
00058
00059
00060 bool multi_action::running_get() const
00061 {
00062 return running;
00063 }
00064
00065
00066
00067
00068
00069 void multi_action::running_set(bool x)
00070 {
00071 multi_action::running = x;
00072 }
00073
00074
00075
00076
00077
00078 ptr< ::lestes::std::list< srp< action > > > multi_action::action_list_get() const
00079 {
00080 return action_list;
00081 }
00082
00083
00084
00085
00086
00087 ptr< multi_action > multi_action::create(bool a__multi_action__running,
00088 ptr< ::lestes::std::list< srp< action > > > a__multi_action__action_list)
00089 {
00090 return ptr< multi_action > ( new multi_action(a__multi_action__running,
00091 a__multi_action__action_list) );
00092 }
00093
00094
00095
00096
00097
00098 ptr< multi_action > multi_action::create()
00099 {
00100 return ptr< multi_action > ( new multi_action(false, ::lestes::std::list< srp< action > > ::create()) );
00101 }
00102
00103
00104
00105
00106
00107 multi_action::multi_action (bool a__multi_action__running,
00108 ptr< ::lestes::std::list< srp< action > > > a__multi_action__action_list)
00109 : action(), running(a__multi_action__running), action_list(checked(a__multi_action__action_list))
00110 {}
00111
00112 ptr< object::reflection_list > multi_action::reflection_get() const
00113 {
00114 if (!reflection) {
00115 typedef class_reflection::field_metadata md;
00116 typedef class_reflection::field_metadata_list mdlist;
00117 ptr<mdlist> mdl = mdlist::create();
00118 mdl->push_back( md::create( "running", "bool" ) );
00119 mdl->push_back( md::create( "action_list", "list< srp< action > >" ) );
00120 reflection = reflection_list::create( action::reflection_get() );
00121 reflection->push_back( class_reflection::create( "multi_action", mdl ) );
00122 }
00123 return reflection;
00124 }
00125
00126 ptr< object::field_list_list > multi_action::field_values_get() const
00127 {
00128 ptr < field_list_list > result = action::field_values_get();
00129 result->push_back( value_list::create() );
00130 result->back()->push_back( objectize< bool > ::create( this->running ) );
00131 result->push_back( value_list::create() );
00132 result->back()->push_back( this->action_list );
00133 return result;
00134 }
00135
00136
00137
00138
00139
00140
00141 void multi_action::gc_mark()
00142 {
00143 action::gc_mark();
00144 }
00145
00146
00147
00148
00149
00150 ptr<object::reflection_list> action::reflection = reflection;
00151 ptr<object::reflection_list> multi_action::reflection = reflection;
00152
00153 end_package(std);
00154 end_package(lestes);
00155