00001 #ifndef xmogInc_javalangCloneable
00002 #define xmogInc_javalangCloneable
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 namespace java
00014 {
00015 namespace lang
00016 {
00017 class Cloneable;
00018 }
00019 }
00020
00021 # include "java_lang_Object.h"
00022
00023
00024 # if (XMOG_UNDEFINE_MEM_OPERATORS==1)
00025 # if defined(new)
00026 # undef new
00027 # endif
00028 # if defined(delete)
00029 # undef delete
00030 # endif
00031 # endif
00032
00060 class JMS_DECLSPEC java::lang::Cloneable :
00061 public virtual ::java::lang::Object
00062 {
00063 public:
00064 enum
00065 {
00066 xmogDefaultFlags = xmog_base::GLOBAL,
00067 xmogMajorVersion = 3,
00068 xmogMinorVersion = 2,
00069 xmogPatchVersion = 9,
00070 xmogBuildNumber = 2047
00071 };
00072
00073 public:
00074
00075 typedef ::xmog_java_array_template< ::java::lang::Cloneable > array1D;
00076
00077 typedef ::xmog_java_array_template< ::xmog_java_array_template< ::java::lang::Cloneable > > array2D;
00078
00080
00097 Cloneable( );
00098
00111 Cloneable( const ::java::lang::Cloneable & _rhs );
00112
00125 Cloneable( jobject _local, xmog_flags f_xflags );
00126
00139 Cloneable( const ::xmog_null & _null_instance );
00140
00151 Cloneable( ::xmog_java_array * _arr, jint _index );
00152
00166 Cloneable( const ::java::lang::Cloneable & _rhs, ::xmog_localenv * p_lxenv );
00167
00179 XMOG_EXPLICIT Cloneable( ::xmog_base * _delegate, bool _owns_delegate = true );
00180
00194 Cloneable( ::xmog_java_ref * _cra, ::xmog_java_dynamic * _dynamic, xmog_flags f_xflags = xmogDefaultFlags );
00195
00202 ~Cloneable( );
00203
00216 java::lang::Cloneable operator =( const java::lang::Cloneable & _rhs );
00217
00232 void operator delete( void * _ptr );
00233
00234 # if (XMOG_SUPPORTS_PLACEMENT_DELETE==1)
00250 void operator delete( void * ptr, void * loc );
00251 # endif
00252
00267 void * operator new( size_t _size );
00268
00269 # if (XMOG_SUPPORTS_PLACEMENT_NEW==1)
00287 void * operator new( size_t _size, void * _ptr );
00288 # endif
00289
00310 static ::java::lang::Cloneable dyna_cast( const ::xmog_base & _rhs, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00311
00325 static ::xmog_java_class * get_class( );
00326
00335 static ::xmog_java_class * get_element_class( );
00336
00355 virtual ::xmog_java_class * xmog_get_java_peer( ::xmog_localenv * p_lxenv = NULL );
00357
00358 };
00359 #endif
00360