00001
00002
00003
00004
00005
00006
00007
00008
00009 #ifndef lestes__md__types__num_range_getter_base_g_hh__included
00010 #define lestes__md__types__num_range_getter_base_g_hh__included
00011
00012 #include <lestes/md/common.hh>
00013
00014 #include <lestes/std/objectize_macros.hh>
00015 package(lestes);
00016 package(std);
00017 class object;
00018 end_package(std);
00019 end_package(lestes);
00020
00021 package(lestes);
00022 package(md);
00023 package(types);
00024 class tm_data_type_base;
00025 end_package(types);
00026 end_package(md);
00027 end_package(lestes);
00028
00029 package(lestes);
00030 package(md);
00031 package(types);
00032 class num_range;
00033 end_package(types);
00034 end_package(md);
00035 end_package(lestes);
00036
00037 package(lestes);
00038 package(md);
00039 package(types);
00040
00041
00042 class num_range_getter_base;
00043
00044
00045
00046
00047
00048
00049
00050 class num_range_getter_base : public ::lestes::std::object {
00051 public:
00052
00053 virtual ptr< ::lestes::md::types::num_range > get_range(ptr< ::lestes::md::types::tm_data_type_base > type) abstract;
00054
00055
00056
00057
00058 virtual ptr<reflection_list> reflection_get() const;
00059
00060 virtual ptr<field_list_list> field_values_get() const;
00061
00062 protected:
00063
00064 num_range_getter_base (
00065 );
00066
00067
00068 virtual void gc_mark();
00069
00070 private:
00071 static ptr<reflection_list> reflection;
00072
00073 };
00074
00075
00076 end_package(types);
00077 end_package(md);
00078 end_package(lestes);
00079
00080 #endif // lestes__md__types__num_range_getter_base_g_hh__included