tm_data_type.g.hh

Go to the documentation of this file.
00001 // This file is automatically generated, do not edit.
00002 
00003 /*!
00004         \file
00005         \brief Target-machine data types.
00006         \author jaz
00007 */
00008 
00009 #ifndef lestes__md__types__tm_data_type_g_hh__included
00010 #define lestes__md__types__tm_data_type_g_hh__included
00011 
00012 #include <lestes/md/common.hh>
00013 #include <lestes/md/types/tm_data_type_base.g.hh>
00014 #include <lestes/md/types/tm_data_type.mdg.hh>
00015 
00016 #include <lestes/std/objectize_macros.hh>
00017 package(lestes);
00018 package(std);
00019 class object;
00020 end_package(std);
00021 end_package(lestes);
00022 
00023 package(lestes);
00024 package(lang);
00025 package(cplus);
00026 package(sem);
00027 class ss_declaration;
00028 end_package(sem);
00029 end_package(cplus);
00030 end_package(lang);
00031 end_package(lestes);
00032 
00033 package(lestes);
00034 package(lang);
00035 package(cplus);
00036 package(sem);
00037 class ss_type;
00038 end_package(sem);
00039 end_package(cplus);
00040 end_package(lang);
00041 end_package(lestes);
00042 
00043 package(lestes);
00044 package(lang);
00045 package(cplus);
00046 package(sem);
00047 class ss_class;
00048 end_package(sem);
00049 end_package(cplus);
00050 end_package(lang);
00051 end_package(lestes);
00052 
00053 package(lestes);
00054 package(lang);
00055 package(cplus);
00056 package(sem);
00057 class ss_union;
00058 end_package(sem);
00059 end_package(cplus);
00060 end_package(lang);
00061 end_package(lestes);
00062 
00063 package(lestes);
00064 package(lang);
00065 package(cplus);
00066 package(sem);
00067 class ss_array;
00068 end_package(sem);
00069 end_package(cplus);
00070 end_package(lang);
00071 end_package(lestes);
00072 
00073 package(lestes);
00074 package(md);
00075 package(registers);
00076 class tm_register;
00077 end_package(registers);
00078 end_package(md);
00079 end_package(lestes);
00080 
00081 package(lestes);
00082 package(md);
00083 package(types);
00084 
00085 
00086 class tm_dt_simple;
00087 class tm_dt_bitfield;
00088 class tm_dt_array;
00089 class tm_dt_union;
00090 class tm_dt_struct;
00091 class tm_dt_struct_member;
00092 
00093 
00094 class tm_dt_simple : public tm_dt_simple_base {
00095 public:
00096         //! The method id_to_instance_get returns the value of the field tm_dt_simple::id_to_instance.
00097         static ptr< ::lestes::std::map< dt_id_type, srp< tm_dt_simple > > > id_to_instance_get();
00098 
00099         //! The method id_to_instance_set sets the field tm_dt_simple::id_to_instance to the given value.
00100         static void id_to_instance_set(const ptr< ::lestes::std::map< dt_id_type, srp< tm_dt_simple > > > & );
00101 
00102         //! Returns the singleton instance for given id.
00103         static ptr< tm_dt_simple > instance(dt_id_type id);
00104 
00105         
00106         //! First generated factory method for class tm_dt_simple.
00107         static ptr< tm_dt_simple > create (
00108                 tm_data_type_base::id_type a__tm_data_type_base__id,
00109                 format_type a__tm_data_type_base__format,
00110                 ulint a__tm_data_type_base__bitwidth,
00111                 ulint a__tm_data_type_base__alignment,
00112                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00113                 lstring a__tm_data_type_base__asm_output,
00114                 lstring a__tm_data_type_base__asm_decl);
00115 
00116         
00117 
00118         //! for purposes of dumping
00119         virtual ptr<reflection_list> reflection_get() const;
00120         //! for purposes of dumping
00121         virtual ptr<field_list_list> field_values_get() const;
00122         
00123 protected:
00124         //! Generated constructor for class tm_dt_simple.
00125         tm_dt_simple (
00126                 tm_data_type_base::id_type a__tm_data_type_base__id,
00127                 format_type a__tm_data_type_base__format,
00128                 ulint a__tm_data_type_base__bitwidth,
00129                 ulint a__tm_data_type_base__alignment,
00130                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00131                 lstring a__tm_data_type_base__asm_output,
00132                 lstring a__tm_data_type_base__asm_decl);
00133 
00134         //! Marking routine for class tm_dt_simple. 
00135         virtual void gc_mark();
00136 
00137 private:
00138         //! Mapping between type id and its singleton instance.
00139         static ptr< ::lestes::std::map< dt_id_type, srp< tm_dt_simple > > >  id_to_instance;
00140         static ptr<reflection_list> reflection;
00141         
00142 }; // tm_dt_simple
00143 
00144 
00145 class tm_dt_bitfield : public tm_dt_bitfield_base {
00146 public:
00147         //! Creates new tm_dt_type instance.
00148         static ptr< tm_dt_bitfield > create(ptr< tm_dt_simple > type, ulint bitwidth);
00149 
00150         
00151         //! First generated factory method for class tm_dt_bitfield.
00152         static ptr< tm_dt_bitfield > create (
00153                 tm_data_type_base::id_type a__tm_data_type_base__id,
00154                 format_type a__tm_data_type_base__format,
00155                 ulint a__tm_data_type_base__bitwidth,
00156                 ulint a__tm_data_type_base__alignment,
00157                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00158                 lstring a__tm_data_type_base__asm_output,
00159                 lstring a__tm_data_type_base__asm_decl,
00160                 ulint a__tm_dt_bitfield_base__bitfield_width);
00161 
00162         
00163 
00164         //! for purposes of dumping
00165         virtual ptr<reflection_list> reflection_get() const;
00166         //! for purposes of dumping
00167         virtual ptr<field_list_list> field_values_get() const;
00168         
00169 protected:
00170         //! Generated constructor for class tm_dt_bitfield.
00171         tm_dt_bitfield (
00172                 tm_data_type_base::id_type a__tm_data_type_base__id,
00173                 format_type a__tm_data_type_base__format,
00174                 ulint a__tm_data_type_base__bitwidth,
00175                 ulint a__tm_data_type_base__alignment,
00176                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00177                 lstring a__tm_data_type_base__asm_output,
00178                 lstring a__tm_data_type_base__asm_decl,
00179                 ulint a__tm_dt_bitfield_base__bitfield_width);
00180 
00181         //! Marking routine for class tm_dt_bitfield. 
00182         virtual void gc_mark();
00183 
00184 private:
00185         static ptr<reflection_list> reflection;
00186         
00187 }; // tm_dt_bitfield
00188 
00189 
00190 class tm_dt_array : public tm_dt_array_base {
00191 public:
00192         //! The method id_to_instance_get returns the value of the field tm_dt_array::id_to_instance.
00193         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_array >, srp< tm_dt_array > > > id_to_instance_get();
00194 
00195         //! The method id_to_instance_set sets the field tm_dt_array::id_to_instance to the given value.
00196         static void id_to_instance_set(const ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_array >, srp< tm_dt_array > > > & );
00197 
00198         //! Returns instance corresponding to ss_array object.
00199         static ptr< tm_dt_array > instance(ptr< ::lestes::lang::cplus::sem::ss_array > sst);
00200 
00201         
00202         //! First generated factory method for class tm_dt_array.
00203         static ptr< tm_dt_array > create (
00204                 tm_data_type_base::id_type a__tm_data_type_base__id,
00205                 format_type a__tm_data_type_base__format,
00206                 ulint a__tm_data_type_base__bitwidth,
00207                 ulint a__tm_data_type_base__alignment,
00208                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00209                 lstring a__tm_data_type_base__asm_output,
00210                 lstring a__tm_data_type_base__asm_decl,
00211                 t_size a__tm_dt_array_base__bound);
00212 
00213         
00214 
00215         //! for purposes of dumping
00216         virtual ptr<reflection_list> reflection_get() const;
00217         //! for purposes of dumping
00218         virtual ptr<field_list_list> field_values_get() const;
00219         
00220 protected:
00221         //! Generated constructor for class tm_dt_array.
00222         tm_dt_array (
00223                 tm_data_type_base::id_type a__tm_data_type_base__id,
00224                 format_type a__tm_data_type_base__format,
00225                 ulint a__tm_data_type_base__bitwidth,
00226                 ulint a__tm_data_type_base__alignment,
00227                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00228                 lstring a__tm_data_type_base__asm_output,
00229                 lstring a__tm_data_type_base__asm_decl,
00230                 t_size a__tm_dt_array_base__bound);
00231 
00232         //! Marking routine for class tm_dt_array. 
00233         virtual void gc_mark();
00234 
00235 private:
00236         //! Mapping between ss_array object and its corresponding tm_dt_array instance.
00237         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_array >, srp< tm_dt_array > > >  id_to_instance;
00238         static ptr<reflection_list> reflection;
00239         
00240 }; // tm_dt_array
00241 
00242 
00243 class tm_dt_union : public tm_dt_union_base {
00244 public:
00245         //! The method id_to_instance_get returns the value of the field tm_dt_union::id_to_instance.
00246         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_union >, srp< tm_dt_union > > > id_to_instance_get();
00247 
00248         //! The method id_to_instance_set sets the field tm_dt_union::id_to_instance to the given value.
00249         static void id_to_instance_set(const ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_union >, srp< tm_dt_union > > > & );
00250 
00251         //! Returns instance corresponding to ss_union object.
00252         static ptr< tm_dt_union > instance(ptr< ::lestes::lang::cplus::sem::ss_union > sst);
00253 
00254         
00255         //! First generated factory method for class tm_dt_union.
00256         static ptr< tm_dt_union > create (
00257                 tm_data_type_base::id_type a__tm_data_type_base__id,
00258                 format_type a__tm_data_type_base__format,
00259                 ulint a__tm_data_type_base__bitwidth,
00260                 ulint a__tm_data_type_base__alignment,
00261                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00262                 lstring a__tm_data_type_base__asm_output,
00263                 lstring a__tm_data_type_base__asm_decl,
00264                 ptr< ::lestes::std::list< srp< tm_data_type_base > > > a__tm_dt_union_base__types);
00265 
00266         
00267 
00268         //! for purposes of dumping
00269         virtual ptr<reflection_list> reflection_get() const;
00270         //! for purposes of dumping
00271         virtual ptr<field_list_list> field_values_get() const;
00272         
00273 protected:
00274         //! Generated constructor for class tm_dt_union.
00275         tm_dt_union (
00276                 tm_data_type_base::id_type a__tm_data_type_base__id,
00277                 format_type a__tm_data_type_base__format,
00278                 ulint a__tm_data_type_base__bitwidth,
00279                 ulint a__tm_data_type_base__alignment,
00280                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00281                 lstring a__tm_data_type_base__asm_output,
00282                 lstring a__tm_data_type_base__asm_decl,
00283                 ptr< ::lestes::std::list< srp< tm_data_type_base > > > a__tm_dt_union_base__types);
00284 
00285         //! Marking routine for class tm_dt_union. 
00286         virtual void gc_mark();
00287 
00288 private:
00289         //! Mapping between ss_union object and its corresponding tm_dt_union instance.
00290         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_union >, srp< tm_dt_union > > >  id_to_instance;
00291         static ptr<reflection_list> reflection;
00292         
00293 }; // tm_dt_union
00294 
00295 
00296 class tm_dt_struct : public tm_dt_struct_base {
00297 public:
00298         //! The method id_to_instance_get returns the value of the field tm_dt_struct::id_to_instance.
00299         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_class >, srp< tm_dt_struct > > > id_to_instance_get();
00300 
00301         //! The method id_to_instance_set sets the field tm_dt_struct::id_to_instance to the given value.
00302         static void id_to_instance_set(const ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_class >, srp< tm_dt_struct > > > & );
00303 
00304         //! Returns instance corresponding to ss_class object.
00305         static ptr< tm_dt_struct > instance(ptr< ::lestes::lang::cplus::sem::ss_class > sst);
00306 
00307         
00308         //! First generated factory method for class tm_dt_struct.
00309         static ptr< tm_dt_struct > create (
00310                 tm_data_type_base::id_type a__tm_data_type_base__id,
00311                 format_type a__tm_data_type_base__format,
00312                 ulint a__tm_data_type_base__bitwidth,
00313                 ulint a__tm_data_type_base__alignment,
00314                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00315                 lstring a__tm_data_type_base__asm_output,
00316                 lstring a__tm_data_type_base__asm_decl,
00317                 ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > > a__tm_dt_struct_base__members);
00318 
00319         
00320 
00321         //! for purposes of dumping
00322         virtual ptr<reflection_list> reflection_get() const;
00323         //! for purposes of dumping
00324         virtual ptr<field_list_list> field_values_get() const;
00325         
00326 protected:
00327         //! Generated constructor for class tm_dt_struct.
00328         tm_dt_struct (
00329                 tm_data_type_base::id_type a__tm_data_type_base__id,
00330                 format_type a__tm_data_type_base__format,
00331                 ulint a__tm_data_type_base__bitwidth,
00332                 ulint a__tm_data_type_base__alignment,
00333                 ptr< ::lestes::md::registers::tm_register_base > a__tm_data_type_base__return_reg,
00334                 lstring a__tm_data_type_base__asm_output,
00335                 lstring a__tm_data_type_base__asm_decl,
00336                 ptr< ::lestes::std::list< srp< tm_dt_struct_member_base > > > a__tm_dt_struct_base__members);
00337 
00338         //! Marking routine for class tm_dt_struct. 
00339         virtual void gc_mark();
00340 
00341 private:
00342         //! Mapping between ss_class object and its corresponding tm_dt_union instance.
00343         static ptr< ::lestes::std::map< srp< ::lestes::lang::cplus::sem::ss_class >, srp< tm_dt_struct > > >  id_to_instance;
00344         static ptr<reflection_list> reflection;
00345         
00346 }; // tm_dt_struct
00347 
00348 
00349 class tm_dt_struct_member : public tm_dt_struct_member_base {
00350 public:
00351         
00352         //! First generated factory method for class tm_dt_struct_member.
00353         static ptr< tm_dt_struct_member > create (
00354                 ulint a__tm_dt_struct_member_base__offset,
00355                 ulint a__tm_dt_struct_member_base__bitwidth,
00356                 ptr< tm_data_type_base > a__tm_dt_struct_member_base__type,
00357                 ptr< ::lestes::lang::cplus::sem::ss_declaration > a__tm_dt_struct_member_base__ss_decl);
00358 
00359         
00360 
00361         //! for purposes of dumping
00362         virtual ptr<reflection_list> reflection_get() const;
00363         //! for purposes of dumping
00364         virtual ptr<field_list_list> field_values_get() const;
00365         
00366 protected:
00367         //! Generated constructor for class tm_dt_struct_member.
00368         tm_dt_struct_member (
00369                 ulint a__tm_dt_struct_member_base__offset,
00370                 ulint a__tm_dt_struct_member_base__bitwidth,
00371                 ptr< tm_data_type_base > a__tm_dt_struct_member_base__type,
00372                 ptr< ::lestes::lang::cplus::sem::ss_declaration > a__tm_dt_struct_member_base__ss_decl);
00373 
00374         //! Marking routine for class tm_dt_struct_member. 
00375         virtual void gc_mark();
00376 
00377 private:
00378         static ptr<reflection_list> reflection;
00379         
00380 }; // tm_dt_struct_member
00381 
00382 
00383 end_package(types);
00384 end_package(md);
00385 end_package(lestes);
00386 
00387 #endif // lestes__md__types__tm_data_type_g_hh__included

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