00001 #ifndef xmogInc_javaioSerializable
00002 #define xmogInc_javaioSerializable
00003
00004 # if !defined(JMS_DECLSPEC )
00005 # if defined(_MSC_VER)
00006 # pragma message( "Relying on default definition of JMS_DECLSPEC " )
00007 # endif
00008
00009
00010 # define JMS_DECLSPEC
00011 # endif
00012
00013 # if (XMOG_SUPPORTS_STD==1)
00014 # include <string>
00015 # endif
00016
00017 namespace java
00018 {
00019 namespace io
00020 {
00021 class Serializable;
00022 }
00023 }
00024
00025 # include "java_lang_Object.h"
00026
00027
00028 # if (XMOG_UNDEFINE_MEM_OPERATORS==1)
00029 # if defined(new)
00030 # undef new
00031 # endif
00032 # if defined(delete)
00033 # undef delete
00034 # endif
00035 # endif
00036
00129 class JMS_DECLSPEC java::io::Serializable :
00130 public virtual ::java::lang::Object
00131 {
00132 public:
00133 enum
00134 {
00135 xmogDefaultFlags = xmog_base::GLOBAL,
00136 xmogMajorVersion = 3,
00137 xmogMinorVersion = 2,
00138 xmogPatchVersion = 9,
00139 xmogBuildNumber = 2047
00140 };
00141
00142 public:
00143
00144 typedef ::xmog_java_array_template< ::java::io::Serializable > array1D;
00145
00146 typedef ::xmog_java_array_template< ::xmog_java_array_template< ::java::io::Serializable > > array2D;
00147
00149
00166 Serializable( );
00167
00180 Serializable( const ::java::io::Serializable & _rhs );
00181
00194 Serializable( jobject _local, xmog_flags f_xflags );
00195
00208 Serializable( const ::xmog_null & _null_instance );
00209
00220 Serializable( ::xmog_java_array * _arr, jint _index );
00221
00233 XMOG_EXPLICIT Serializable( ::xmog_base * _delegate, bool _owns_delegate = true );
00234
00248 Serializable( const ::java::io::Serializable & _rhs, ::xmog_localenv * p_lxenv );
00249
00250 # if (XMOG_SUPPORTS_WCHAR_T==1)
00265 Serializable( const XMOG_WCHAR _str[], jint _len = -1, ::xmog_localenv * _env = NULL );
00266 # endif
00267
00268 # if (XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD==1)
00283 Serializable( const unsigned short _str[], jint _len = -1, ::xmog_localenv * _env = NULL );
00284 # endif
00285
00302 Serializable( const char * _str, jint _len = -1, ::xmog_base * _enc = NULL, ::xmog_localenv * _env = NULL );
00303
00317 Serializable( ::xmog_java_ref * _cra, ::xmog_java_dynamic * _dynamic, xmog_flags f_xflags = xmogDefaultFlags );
00318
00319 # if (XMOG_SUPPORTS_MFC==1)
00336 Serializable( const std::string & _str, jint _len = -1, ::xmog_base * _enc = NULL, ::xmog_localenv * _env = NULL );
00337 # endif
00338
00345 ~Serializable( );
00346
00359 java::io::Serializable operator =( const java::io::Serializable & _rhs );
00360
00375 void operator delete( void * _ptr );
00376
00377 # if (XMOG_SUPPORTS_PLACEMENT_DELETE==1)
00393 void operator delete( void * ptr, void * loc );
00394 # endif
00395
00410 void * operator new( size_t _size );
00411
00412 # if (XMOG_SUPPORTS_PLACEMENT_NEW==1)
00430 void * operator new( size_t _size, void * _ptr );
00431 # endif
00432
00453 static ::java::io::Serializable dyna_cast( const ::xmog_base & _rhs, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00454
00468 static ::xmog_java_class * get_class( );
00469
00478 static ::xmog_java_class * get_element_class( );
00479
00508 virtual int xmog_create_java_peer( ::xmog_java_class * clazz, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00509
00528 virtual ::xmog_java_class * xmog_get_java_peer( ::xmog_localenv * p_lxenv = NULL );
00530
00531 };
00532 #endif
00533