00001 #ifndef _IT_REFLECT_SIMPLE_TYPE_LIST_H_
00002 #define _IT_REFLECT_SIMPLE_TYPE_LIST_H_
00003
00004
00005
00006 #include <it_bus/reflect/simple_type.h>
00007
00008 namespace IT_Reflect
00009 {
00013 class IT_AFC_API SimpleTypeList : public virtual IT_Reflect::SimpleType
00014 {
00015 public:
00019 SimpleTypeList() IT_THROW_DECL(());
00020
00024 virtual ~SimpleTypeList() IT_THROW_DECL(());
00025
00031 virtual size_t
00032 get_list_size() const IT_THROW_DECL((ReflectException)) = 0;
00033
00039 virtual void
00040 set_list_size(
00041 size_t size
00042 ) IT_THROW_DECL((ReflectException)) = 0;
00043
00050 virtual const SimpleType*
00051 get_item(
00052 size_t index
00053 ) const IT_THROW_DECL((ReflectException)) = 0;
00054
00062 virtual SimpleType*
00063 use_item(
00064 size_t index
00065 ) IT_THROW_DECL((ReflectException)) = 0;
00066 };
00067 }
00068
00069
00070 #endif