00001 #ifndef IOKERNEL__INTEGER_META_CLASS_H 00002 #define IOKERNEL__INTEGER_META_CLASS_H 00003 00004 #include "meta_class.h" 00005 #include "iokernel_forwarders.h" 00006 00007 00008 class IntegerMetaClass : public MetaClass { 00009 friend class ObjectFactory; 00010 public: 00011 virtual void write( const ObjectWrapper &obj, 00012 OutputStream* outputStream ) const; 00013 00014 virtual void read( const ObjectWrapper &obj, 00015 InputStream* inputStream ) const; 00016 00017 virtual bool is_signed() const; 00018 00019 Walker::ApplyStatus walk(const Address address,Walker &walk) const; 00020 00021 static const LString &get_class_name(); 00022 00023 protected: 00024 IntegerMetaClass( LString metaClassName = emptyLString ); 00025 00026 static void constructor_function( Address place ); 00027 00028 virtual void set_is_signed( bool isSigned ); 00029 00030 static int test_int; 00031 00032 static bool is_little_endian; 00033 00034 private: 00035 bool _is_signed; 00036 00037 }; 00038 00039 00040 #endif