Codemesh Runtime v3 C++ API Reference  3.9.205
Public Types | Public Member Functions | Static Public Member Functions | List of all members
xmog_java_double_array Class Reference

The wrapper type for the Java double[] type. More...

#include <xmog_java_array.h>

Inheritance diagram for xmog_java_double_array:
Inheritance graph
[legend]
Collaboration diagram for xmog_java_double_array:
Collaboration graph
[legend]

Public Types

typedef xmog_array_iterator< xmog_java_double_arrayiterator
 The iterator type for arrays of double type.
 
typedef xmog_double value_type
 The type returned by the dereference operations.
 
typedef ptrdiff_t difference_type
 The type used to represent pointer differences.
 
- Public Types inherited from xmog_base
enum  flags {
  STAND_ALONE = 1, ARRAY_ELEMENT = 2, DYNAMIC = 4, DELEGATE = 8,
  LOCAL = 16, WEAK_GLOBAL = 32, GLOBAL = 64, REMOTE = 128,
  CACHING = 256, CACHE_INVALID = 512, CACHE_DIRTY = 1024, CACHE_LAZY_WRITE = 2048,
  OWNS_DELEGATE = 4096, STRING_DIRTY = 8192, STRING_PTR = 16384, STRING_WPTR = 32768,
  INDIRECT = 65536, NONVIRT = 131072, SUPPRESS_LOGGING = 262144, CATEGORY = 15,
  TYPE = 240, CACHE = 3840
}
 The possible flag values. More...
 

Public Member Functions

 xmog_java_double_array ()
 Creates an array instance that does not refer to any Java object.
 
 xmog_java_double_array (const xmog_null &)
 Creates an array instance that does not refer to any Java object.
 
 xmog_java_double_array (const xmog_java_double_array &, xmog_localenv *env=NULL)
 Creates an array instance that refers to the same Java instance as the given array.
 
 xmog_java_double_array (xmog_java_array *_ref, jint _index)
 Creates an array instance that represents an array element itself.
 
 xmog_java_double_array (xmog_java_ref *_clazz_ref_array, xmog_java_dynamic *_dynamic, xmog_flags _flags=xmog_base::GLOBAL)
 Creates an indirect array instance.
 
 xmog_java_double_array (xmog_base *_delegate, bool _owns_delegate=true)
 Creates an array instance that delegates to another instance.
 
 xmog_java_double_array (jobject _local, xmog_flags _flags)
 Creates an array instance that represents a pre-existing JNI reference.
 
 xmog_java_double_array (jint size, xmog_localenv *env=NULL, xmog_flags=xmog_base::GLOBAL)
 Creates a new array instance of a given size. More...
 
 xmog_java_double_array (jdouble *arr, jsize size, xmog_localenv *env=NULL, xmog_flags=xmog_base::GLOBAL)
 Creates a new array instance from a native double[]. More...
 
iterator begin ()
 Returns an iterator pointing to the first array element.
 
iterator end ()
 Returns an iterator pointing to after the last array element.
 
void from_native (jdouble *src_arr, jint dest_start, jsize length, xmog_localenv *env=NULL)
 Copies elements from a native array into the Java array. More...
 
void to_native (jdouble *dest_arr, jint src_start, jsize length, xmog_localenv *env=NULL)
 Copies elements from the Java array into a native array. More...
 
xmog_double operator[] (jint index)
 Returns a proxy to a double array element, usable as a lhs-value. More...
 
void set (jint index, jdouble v, xmog_localenv *env=NULL)
 Sets a value into the array's specified element. More...
 
jdouble operator[] (jint index) const
 Returns the value of an array element. More...
 
jdouble get (jint index, xmog_localenv *env) const
 Returns the value of an array element. More...
 
xmog_java_double_arrayoperator= (const xmog_java_double_array &)
 Sets the given instance's array reference into this instance.
 
- Public Member Functions inherited from xmog_java_array
 xmog_java_array ()
 A default constructor to satisfy virtual inheritance semantics.
 
 xmog_java_array (jobject array, xmog_flags flags, jint size=-1, xmog_localenv *env=NULL)
 The constructor that creates an instance from an existing reference. More...
 
 xmog_java_array (const xmog_null &)
 The from null constructor. More...
 
 xmog_java_array (const xmog_java_array &_rhs, xmog_localenv *env=NULL)
 The copy constructor. More...
 
 xmog_java_array (xmog_java_array *_arr, jint _index)
 The array element constructor. More...
 
 xmog_java_array (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor that allows the dynamic resolution of class-related information. More...
 
 xmog_java_array (xmog_base *_delegate, bool _owns_delegate=true)
 The constructor that allows the creation of an instance to handle all requests by delegating to another instance. More...
 
 xmog_java_array (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor that allows the dynamic resolution of instance-related information. More...
 
 ~xmog_java_array ()
 The destructor invalidates the length field.
 
jint get_length (xmog_localenv *env) const
 A higher performance alternative to querying the array length. More...
 
void xmog_invalidate (xmog_localenv *env=NULL)
 Invalidates any cached values in the instance. More...
 
- Public Member Functions inherited from xmog_java_ref
 xmog_java_ref ()
 The default constructor.
 
 xmog_java_ref (const xmog_null &)
 The from null constructor. More...
 
 xmog_java_ref (xmog_java_array *_arr, jint _index)
 The array element constructor. More...
 
 xmog_java_ref (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor that allows the dynamic resolution of class-related information. More...
 
XMOG_EXPLICIT xmog_java_ref (xmog_base *_delegate, bool _owns_delegate=true)
 The constructor that allows the creation of an instance to handle all requests by delegating to another instance. More...
 
 xmog_java_ref (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor that allows the dynamic resolution of instance-related information. More...
 
 xmog_java_ref (jobject _local, xmog_flags _flags)
 The constructor that sets an existing JNI reference into a wrapper instance. More...
 
 ~xmog_java_ref ()
 Deletes the reference we hold to the wrapped Java instance.
 
bool operator== (const xmog_null &) const
 Compares the instance for equality with null.
 
bool operator== (const xmog_java_ref &) const
 Compares the instance for equality with another instance. More...
 
bool operator!= (const xmog_null &) const
 Compares the instance for inequality with null.
 
bool operator!= (const xmog_java_ref &) const
 Compares the instance for inequality with another instance. More...
 
bool operator! () const
 Returns true if the instance refers to null, false otherwise.
 
jboolean xmog_equals (const xmog_java_ref &_rhs, xmog_localenv *env=NULL)
 Returns true if both instances are null or satisfy the equality test. More...
 
jint xmog_hashCode (xmog_localenv *env=NULL)
 Returns the Java instance's hashCode. More...
 
jobject xmog_toString (xmog_localenv *env=NULL)
 Returns the Java instance's toString() valus as a global reference. More...
 
virtual jobject get_jobject_ (xmog_localenv *env=NULL) const
 Returns this instance's object reference. More...
 
virtual void xmog_monitor_enter (xmog_localenv *env=NULL) const
 Attempts to enter into a lock on the object.
 
virtual void xmog_monitor_exit (xmog_localenv *env=NULL) const
 Leaves a lock in the object.
 
- Public Member Functions inherited from xmog_base
 xmog_base ()
 The default contructor. More...
 
 xmog_base (xmog_java_array *_ref, jint _index)
 The constructor for Java array elements. More...
 
 xmog_base (xmog_java_ref *_ref, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor for indirect and user-defined types. More...
 
 xmog_base (xmog_java_class *_clazz, xmog_java_dynamic *_dynamic, xmog_flags _flags)
 The constructor for indirect and user-defined types. More...
 
XMOG_EXPLICIT xmog_base (xmog_base *_delegate, bool _owns_delegate=true)
 The constructor for delegating objects. More...
 
 xmog_base (jobject _local, xmog_flags _flags)
 The constructor for direct types. More...
 
virtual ~xmog_base ()
 The virtual destructor.
 
virtual void copy_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL)
 Sets this instance's object reference to a duplicate of the given object's reference. More...
 
virtual jobject get_owning_jobject_ (xmog_localenv *env=NULL)
 Returns this instance's owner. More...
 
virtual jobject get_released_local_jobject_ (xmog_localenv *env=NULL) const
 Returns this instance's object reference as a local reference and removes it from this instance's ownership. More...
 
virtual bool is_null_ (xmog_localenv *env=NULL) const
 Tests the instance for null.
 
virtual bool is_same_ (const xmog_base &_rhs, xmog_localenv *env=NULL) const
 Tests whether this instance references the same instance as the other instance.
 
virtual jobject duplicate_jobject_ (xmog_localenv *env=NULL) const
 Returns a duplicate of this instance's object reference. More...
 
virtual void set_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL)
 Sets this instance's object reference to the given object's reference. More...
 
virtual void transfer_jobject_ (xmog_base *_rhs, xmog_localenv *env=NULL)
 Sets this instance's object reference to the given object's reference and removes ownership from the other object. More...
 
virtual xmog_basexmog_to_ (xmog_flags flags, xmog_localenv *env=NULL)
 Converts a reference from one reference type to another. More...
 
virtual xmog_basexmog_fill_with_standalone_for_ (xmog_base *_rhs, xmog_localenv *env=NULL)
 Populates the object with a stand-alone reference based on another object. More...
 
virtual xmog_java_classxmog_get_java_peer (xmog_localenv *env=NULL)
 Returns NULL if the type does not have a Java peer type, a pointer to the type's xmog_java_class otherwise. More...
 
virtual int xmog_create_java_peer (xmog_java_class *clazz, xmog_localenv *env=NULL, xmog_flags flags=xmog_base::GLOBAL)
 Creates a Java peer instance for this type.
More...
 
virtual int xmog_to_java_peer (xmog_localenv *env=NULL)
 Sets the native instance's state into the Java peer instance. More...
 
virtual void xmog_lazy_write (xmog_localenv *env=NULL)
 Performs a lazy write operation on the instance. More...
 
void release_standalone (xmog_localenv *env=NULL)
 Releases the internally maintained object if the instance is a stand-alone (direct) instance and not an indirect instance. More...
 
void release_delegate ()
 Releases the internally maintained delegate.
 

Static Public Member Functions

static xmog_java_double_array dyna_cast (const xmog_java_ref &_rhs, xmog_localenv *p_lxenv=NULL, xmog_flags flags=xmog_base::GLOBAL)
 A framework method which allows a "cast" of the given object to this array type. More...
 
static xmog_java_dynamicget_dynamic ()
 Returns an xmog_java_dynamic instance that can be used to access the array elements of this type.
 
static xmog_java_classget_class ()
 Returns the proxy wrapper instance for this array type.
 
static xmog_java_classget_element_java_class ()
 Returns the proxy wrapper instance for this array's element type.
 

Additional Inherited Members

- Public Attributes inherited from xmog_java_array
xmog_java_array_size length
 The array length. More...
 
- Public Attributes inherited from xmog_base
XMOG_JOBJECT_HOLDER owner_
 The owner or identity of the object. More...
 
union {
   xmog_java_dynamic *   dynamic_
 A pointer to an object that can access indirectly specified information.
 
   jint   index_
 The index of an array element.
 
}; 
 Data or object that provides assistance in accessing indirectly specified elements. More...
 
xmog_flags flags_
 The flags governing the type and other housekeeping information.
 
- Protected Member Functions inherited from xmog_java_array
void copy_ (const xmog_java_array &_rhs, xmog_localenv *env=NULL)
 Updates this instance to reflect the given instance's state.
 

Detailed Description

The wrapper type for the Java double[] type.

Constructor & Destructor Documentation

◆ xmog_java_double_array() [1/2]

xmog_java_double_array::xmog_java_double_array ( jint  size,
xmog_localenv env = NULL,
xmog_flags  = xmog_base::GLOBAL 
)

Creates a new array instance of a given size.

Parameters
sizethe newly created array's size.
envthe local call environment. May be NULL.

◆ xmog_java_double_array() [2/2]

xmog_java_double_array::xmog_java_double_array ( jdouble *  arr,
jsize  size,
xmog_localenv env = NULL,
xmog_flags  = xmog_base::GLOBAL 
)

Creates a new array instance from a native double[].

Parameters
arrthe native double[].
sizethe number of elements in the array.
envthe local call environment. May be NULL.

Member Function Documentation

◆ dyna_cast()

static xmog_java_double_array xmog_java_double_array::dyna_cast ( const xmog_java_ref _rhs,
xmog_localenv p_lxenv = NULL,
xmog_flags  flags = xmog_base::GLOBAL 
)
static

A framework method which allows a "cast" of the given object to this array type.

You use this method in all places where you would use an explicit class cast in Java. It creates a new instance of the correct type and sets the peer object into it if the peer instance is type compatible. If the peer instance is not type compatible, the newly created object will refer to null.

Parameters
_rhsa proxy instance which we wish to "cast" to this type.
p_lxenvthe local call environment. The default value is NULL.
flagsthe flags that allow control over the reference type and other internal matters. The default value is xmog_base::GLOBAL.
Returns
an instance of this proxy type that either represents the same Java instance as the argument (if they are type-compatible) or null (if they are not type-compatible).

◆ from_native()

void xmog_java_double_array::from_native ( jdouble *  src_arr,
jint  dest_start,
jsize  length,
xmog_localenv env = NULL 
)

Copies elements from a native array into the Java array.

Parameters
src_arra pointer to the native array that provides the elements.
dest_startthe index into the Java array to which we start copying.
lengththe number of elements to copy.
envthe local call environment. May be NULL.

◆ get()

jdouble xmog_java_double_array::get ( jint  index,
xmog_localenv env 
) const

Returns the value of an array element.

This method provides the same functionality as the subscript operator, but coupled with the ability to pass in a local call environment for a slight edge in performance.

Parameters
indexthe array element index.
envthe local call environment. Default value is NULL.

◆ operator[]() [1/2]

xmog_double xmog_java_double_array::operator[] ( jint  index)

Returns a proxy to a double array element, usable as a lhs-value.

Parameters
indexthe array element index.

◆ operator[]() [2/2]

jdouble xmog_java_double_array::operator[] ( jint  index) const

Returns the value of an array element.

Parameters
indexthe array element index.

◆ set()

void xmog_java_double_array::set ( jint  index,
jdouble  v,
xmog_localenv env = NULL 
)

Sets a value into the array's specified element.

This method allows direct assignment into an array element while optionally using a provided local call environment. Consequently it will be higher performing than the subscript operator which provides similar functionality in combination with an assignment operation.

Parameters
indexthe array element index.
vthe new value.
envthe local call environment. Default value is NULL.

◆ to_native()

void xmog_java_double_array::to_native ( jdouble *  dest_arr,
jint  src_start,
jsize  length,
xmog_localenv env = NULL 
)

Copies elements from the Java array into a native array.

Parameters
dest_arra pointer to the native array that will receive the elements.
src_startthe index in the Java array from which we start copying.
lengththe number of elements to copy.
envthe local call environment. May be NULL.

The documentation for this class was generated from the following file:

Copyright (c) 1999-2020 by Codemesh, Inc., ALL RIGHTS RESERVED.