worker_base.g.hh

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \author jaz
00006 */
00007 
00008 #ifndef lestes__backend_v2__workers__worker_base_g_hh__included
00009 #define lestes__backend_v2__workers__worker_base_g_hh__included
00010 
00011 #include <lestes/backend_v2/common.hh>
00012 
00013 #include <lestes/std/objectize_macros.hh>
00014 package(lestes);
00015 package(backend_v2);
00016 package(structs);
00017 class func_data;
00018 end_package(structs);
00019 end_package(backend_v2);
00020 end_package(lestes);
00021 
00022 package(lestes);
00023 package(backend_v2);
00024 package(workers);
00025 
00026 
00027 class worker_base;
00028 
00029 
00030 /*! \brief Base class for backend workers.
00031 
00032 Worker is class that performs transformations within a function body.
00033 */
00034 class worker_base : public ::lestes::std::object {
00035 public:
00036         //! The method data_get returns the value of the field worker_base::data.
00037         ptr< ::lestes::backend_v2::structs::func_data > data_get() const;
00038 
00039         //! The method data_set sets the field worker_base::data to the given value.
00040         void data_set(const ptr< ::lestes::backend_v2::structs::func_data > &);
00041 
00042         virtual void process() abstract;
00043 
00044         virtual ptr< ::lestes::backend_v2::structs::func_data > get_result() abstract;
00045 
00046         
00047 
00048         //! for purposes of dumping
00049         virtual ptr<reflection_list> reflection_get() const;
00050         //! for purposes of dumping
00051         virtual ptr<field_list_list> field_values_get() const;
00052         
00053 protected:
00054         //! Generated constructor for class worker_base.
00055         worker_base (
00056                 ptr< ::lestes::backend_v2::structs::func_data > a__worker_base__data);
00057 
00058         //! Marking routine for class worker_base. 
00059         virtual void gc_mark();
00060 
00061 private:
00062         //! A data of a processed function.
00063         srp< ::lestes::backend_v2::structs::func_data > data;
00064         static ptr<reflection_list> reflection;
00065         
00066 }; // worker_base
00067 
00068 
00069 end_package(workers);
00070 end_package(backend_v2);
00071 end_package(lestes);
00072 
00073 #endif // lestes__backend_v2__workers__worker_base_g_hh__included

Generated on Mon Feb 12 18:23:45 2007 for lestes by doxygen 1.5.1-20070107