00001 #ifndef xmogInc_javalangObject
00002 #define xmogInc_javalangObject
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 lang
00020 {
00021 class Class;
00022 class Object;
00023 class String;
00024 }
00025 }
00026
00027 # include "xmog_java_client.h"
00028
00029
00030 # if (XMOG_UNDEFINE_MEM_OPERATORS==1)
00031 # if defined(new)
00032 # undef new
00033 # endif
00034 # if defined(delete)
00035 # undef delete
00036 # endif
00037 # endif
00038
00051 class JMS_DECLSPEC java::lang::Object :
00052 public virtual ::xmog_java_ref
00053 {
00054 public:
00055 enum
00056 {
00057 xmogDefaultFlags = xmog_base::GLOBAL,
00058 xmogMajorVersion = 3,
00059 xmogMinorVersion = 2,
00060 xmogPatchVersion = 9,
00061 xmogBuildNumber = 2047
00062 };
00063
00064 public:
00065
00066 typedef ::xmog_java_array_template< ::java::lang::Object > array1D;
00067
00068 typedef ::xmog_java_array_template< ::xmog_java_array_template< ::java::lang::Object > > array2D;
00069
00071
00088 Object( );
00089
00102 Object( const ::java::lang::Object & _rhs );
00103
00116 Object( jobject _local, xmog_flags f_xflags );
00117
00130 Object( const ::xmog_null & _null_instance );
00131
00142 Object( ::xmog_java_array * _arr, jint _index );
00143
00157 Object( const ::java::lang::Object & _rhs, ::xmog_localenv * p_lxenv );
00158
00170 XMOG_EXPLICIT Object( ::xmog_base * _delegate, bool _owns_delegate = true );
00171
00172 # if (XMOG_SUPPORTS_WCHAR_T==1)
00187 Object( const XMOG_WCHAR _str[], jint _len = -1, ::xmog_localenv * _env = NULL );
00188 # endif
00189
00190 # if (XMOG_REQUIRES_UNSIGNED_SHORT_OVERLOAD==1)
00205 Object( const unsigned short _str[], jint _len = -1, ::xmog_localenv * _env = NULL );
00206 # endif
00207
00224 Object( const char * _str, jint _len = -1, ::xmog_base * _enc = NULL, ::xmog_localenv * _env = NULL );
00225
00239 Object( ::xmog_java_ref * _cra, ::xmog_java_dynamic * _dynamic, xmog_flags f_xflags = xmogDefaultFlags );
00240
00241 # if (XMOG_SUPPORTS_MFC==1)
00258 Object( const std::string & _str, jint _len = -1, ::xmog_base * _enc = NULL, ::xmog_localenv * _env = NULL );
00259 # endif
00260
00262
00272 Object( ::xmog_dummy _use_java_ctor, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00273
00275
00282 ~Object( );
00283
00296 java::lang::Object operator =( const java::lang::Object & _rhs );
00297
00312 void operator delete( void * _ptr );
00313
00314 # if (XMOG_SUPPORTS_PLACEMENT_DELETE==1)
00330 void operator delete( void * ptr, void * loc );
00331 # endif
00332
00347 void * operator new( size_t _size );
00348
00349 # if (XMOG_SUPPORTS_PLACEMENT_NEW==1)
00367 void * operator new( size_t _size, void * _ptr );
00368 # endif
00369
00390 static ::java::lang::Object dyna_cast( const ::xmog_base & _rhs, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00391
00393
00445 virtual bool equals( const ::java::lang::Object & obj, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00446
00462 ::java::lang::Class getClass( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00463
00465
00479 static ::xmog_java_class * get_class( );
00480
00489 static ::xmog_java_class * get_element_class( );
00490
00492
00533 virtual jint hashCode( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00534
00571 void notify( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00572
00599 void notifyAll( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00600
00629 virtual ::java::lang::String toString( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00630
00659 void wait( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00660
00724 void wait( jlong timeout, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00725
00777 void wait( jlong timeout, jint nanos, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00778
00780
00799 virtual ::xmog_java_class * xmog_get_java_peer( ::xmog_localenv * p_lxenv = NULL );
00801
00802 };
00803 #endif
00804