Main Page | Modules | Class Hierarchy | Class List | Directories | File List | Class Members | Related Pages

java_lang_reflect_Array.h

00001 #ifndef xmogInc_javalangreflectArray
00002 #define xmogInc_javalangreflectArray
00003 
00004 #   if !defined(JMS_DECLSPEC )
00005 #       if defined(_MSC_VER)
00006 #           pragma message( "Relying on default definition of JMS_DECLSPEC " )
00007 #       endif /* defined(_MSC_VER) */
00008         // the following default definition works for all non-Windows platforms and for
00009         // executable projects on Windows where the sources are built directly into the binary
00010 #       define JMS_DECLSPEC 
00011 #   endif /* !defined(JMS_DECLSPEC ) */
00012 
00013     namespace java
00014     {
00015         namespace lang
00016         {
00017             class Class;
00018             class Object;
00019             namespace reflect
00020             {
00021                 class Array;
00022             }
00023         }
00024     }
00025 
00026 #   include "java_lang_Object.h"
00027 
00028     // work around MFC definitions of 'new' and 'delete' that cause compilation errors
00029 #   if (XMOG_UNDEFINE_MEM_OPERATORS==1)
00030 #       if defined(new)
00031 #           undef new
00032 #       endif /* defined(new) */
00033 #       if defined(delete)
00034 #           undef delete
00035 #       endif /* defined(delete) */
00036 #   endif /* (XMOG_UNDEFINE_MEM_OPERATORS==1) */
00037 
00053     class JMS_DECLSPEC java::lang::reflect::Array : 
00054         public virtual ::java::lang::Object
00055     {
00056     public:
00057         enum 
00058         {
00059             xmogDefaultFlags = xmog_base::GLOBAL,
00060             xmogMajorVersion = 3,
00061             xmogMinorVersion = 2,
00062             xmogPatchVersion = 9,
00063             xmogBuildNumber = 2047
00064         };
00065 
00066     public:
00067 
00068         typedef ::xmog_java_array_template< ::java::lang::reflect::Array > array1D;
00069 
00070         typedef ::xmog_java_array_template< ::xmog_java_array_template< ::java::lang::reflect::Array > > array2D;
00071 
00073 
00090         Array( );
00091 
00104         Array( const ::java::lang::reflect::Array & _rhs );
00105 
00118         Array( jobject _local, xmog_flags f_xflags );
00119 
00132         Array( const ::xmog_null & _null_instance );
00133 
00144         Array( ::xmog_java_array * _arr, jint _index );
00145 
00159         Array( const ::java::lang::reflect::Array & _rhs, ::xmog_localenv * p_lxenv );
00160 
00172         XMOG_EXPLICIT Array( ::xmog_base * _delegate, bool _owns_delegate = true );
00173 
00187         Array( ::xmog_java_ref * _cra, ::xmog_java_dynamic * _dynamic, xmog_flags f_xflags = xmogDefaultFlags );
00188 
00195         ~Array( );
00196 
00209         java::lang::reflect::Array operator =( const java::lang::reflect::Array & _rhs );
00210 
00225         void operator delete( void * _ptr );
00226 
00227 #       if (XMOG_SUPPORTS_PLACEMENT_DELETE==1)
00243             void operator delete( void * ptr, void * loc );
00244 #       endif /* (XMOG_SUPPORTS_PLACEMENT_DELETE==1) */
00245 
00260         void * operator new( size_t _size );
00261 
00262 #       if (XMOG_SUPPORTS_PLACEMENT_NEW==1)
00280             void * operator new( size_t _size, void * _ptr );
00281 #       endif /* (XMOG_SUPPORTS_PLACEMENT_NEW==1) */
00282 
00303         static ::java::lang::reflect::Array dyna_cast( const ::xmog_base & _rhs, ::xmog_localenv * p_lxenv = NULL, xmog_flags flags = xmogDefaultFlags );
00304 
00306 
00324         static ::java::lang::Object get( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00325 
00339         static bool getBoolean( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00340 
00354         static jbyte getByte( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00355 
00369         static jchar getChar( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00370 
00384         static jdouble getDouble( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00385 
00399         static jfloat getFloat( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00400 
00414         static jint getInt( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00415 
00427         static jint getLength( const ::java::lang::Object & _array, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00428 
00442         static jlong getLong( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00443 
00457         static jshort getShort( const ::java::lang::Object & _array, jint index, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00458 
00460 
00474         static ::xmog_java_class * get_class( );
00475 
00484         static ::xmog_java_class * get_element_class( );
00485 
00487 
00512         static ::java::lang::Object newInstance( const ::java::lang::Class & componentType, jint length, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00513 
00545         static ::java::lang::Object newInstance( const ::java::lang::Class & componentType, const ::xmog_java_int_array & dimensions, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00546 
00565         static void set( const ::java::lang::Object & _array, jint index, const ::java::lang::Object & value, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00566 
00581         static void setBoolean( const ::java::lang::Object & _array, jint index, bool z, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00582 
00597         static void setByte( const ::java::lang::Object & _array, jint index, jbyte b, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00598 
00613         static void setChar( const ::java::lang::Object & _array, jint index, jchar c, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00614 
00629         static void setDouble( const ::java::lang::Object & _array, jint index, jdouble d, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00630 
00645         static void setFloat( const ::java::lang::Object & _array, jint index, jfloat f, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00646 
00661         static void setInt( const ::java::lang::Object & _array, jint index, jint i, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00662 
00677         static void setLong( const ::java::lang::Object & _array, jint index, jlong l, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00678 
00693         static void setShort( const ::java::lang::Object & _array, jint index, jshort s, ::xmog_localenv * p_xenv = NULL, xmog_flags f_xflags = xmogDefaultFlags );
00694 
00696 
00715         virtual ::xmog_java_class * xmog_get_java_peer( ::xmog_localenv * p_lxenv = NULL );
00717 
00718     };
00719 #endif /* xmogInc_javalangreflectArray */
00720 

Generated on Fri Jun 16 10:18:56 2006 for JMS Courier for C++ by  doxygen 1.4.1