00001 #ifndef xmogInc_javalangreflectMember
00002 #define xmogInc_javalangreflectMember
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 Class;
00018 class String;
00019 namespace reflect
00020 {
00021 class Member;
00022 }
00023 }
00024 }
00025
00026 # include "java_lang_Object.h"
00027
00028
00029 # if (XMOG_UNDEFINE_MEM_OPERATORS==1)
00030 # if defined(new)
00031 # undef new
00032 # endif
00033 # if defined(delete)
00034 # undef delete
00035 # endif
00036 # endif
00037
00049 class JMS_DECLSPEC java::lang::reflect::Member :
00050 public virtual ::java::lang::Object
00051 {
00052 public:
00053 enum
00054 {
00055 xmogDefaultFlags = xmog_base::GLOBAL,
00056 xmogMajorVersion = 3,
00057 xmogMinorVersion = 2,
00058 xmogPatchVersion = 9,
00059 xmogBuildNumber = 2047
00060 };
00061
00062 public:
00063
00064 typedef ::xmog_java_array_template< ::java::lang::reflect::Member > array1D;
00065
00066 typedef ::xmog_java_array_template< ::xmog_java_array_template< ::java::lang::reflect::Member > > array2D;
00067
00074 static xmog_int DECLARED;
00075
00080 static xmog_int PUBLIC;
00081
00082
00084
00101 Member( );
00102
00115 Member( const ::java::lang::reflect::Member & _rhs );
00116
00129 Member( jobject _local, xmog_flags f_xflags );
00130
00143 Member( const ::xmog_null & _null_instance );
00144
00155 Member( ::xmog_java_array * _arr, jint _index );
00156
00170 Member( const ::java::lang::reflect::Member & _rhs, ::xmog_localenv * p_lxenv );
00171
00183 XMOG_EXPLICIT Member( ::xmog_base * _delegate, bool _owns_delegate = true );
00184
00198 Member( ::xmog_java_ref * _cra, ::xmog_java_dynamic * _dynamic, xmog_flags f_xflags = xmogDefaultFlags );
00199
00206 ~Member( );
00207
00220 java::lang::reflect::Member operator =( const java::lang::reflect::Member & _rhs );
00221
00236 void operator delete( void * _ptr );
00237
00238 # if (XMOG_SUPPORTS_PLACEMENT_DELETE==1)
00254 void operator delete( void * ptr, void * loc );
00255 # endif
00256
00271 void * operator new( size_t _size );
00272
00273 # if (XMOG_SUPPORTS_PLACEMENT_NEW==1)
00291 void * operator new( size_t _size, void * _ptr );
00292 # endif
00293
00314 static ::java::lang::reflect::Member dyna_cast( const ::xmog_base & _rhs, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00315
00317
00330 virtual ::java::lang::Class getDeclaringClass( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00331
00347 virtual jint getModifiers( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00348
00360 virtual ::java::lang::String getName( ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00361
00363
00377 static ::xmog_java_class * get_class( );
00378
00387 static ::xmog_java_class * get_element_class( );
00388
00407 virtual ::xmog_java_class * xmog_get_java_peer( ::xmog_localenv * p_lxenv = NULL );
00409
00410 };
00411 #endif
00412