Class ShortByReference

All Implemented Interfaces:
Serializable, ByReference<Short>

public final class ShortByReference extends AbstractNumberReference<Short>
ShortByReference is used when the address of a primitive short value must be passed as a parameter to a function.

For example, the following C code,


extern void get_a(short * ap);

short foo(void) {
    short a;
    // pass a reference to 'a' so get_a() can fill it out
    get_a(&a);

    return a;
}

Would be declared in java as


interface Lib {
    void get_a(@Out ShortByReference ap);
}

and used like this

ShortByReference ap = new ShortByReference();
lib.get_a(ap);
System.out.printf("a from lib=%d\n", a.getValue());
See Also:
  • Constructor Details

    • ShortByReference

      public ShortByReference()
      Creates a new reference to a short value initialized to zero.
    • ShortByReference

      public ShortByReference(Short value)
      Creates a new reference to a short value.
      Parameters:
      value - the initial native value
    • ShortByReference

      public ShortByReference(short value)
      Creates a new reference to a short value.
      Parameters:
      value - the initial native value
  • Method Details

    • toNative

      public void toNative(Runtime runtime, Pointer buffer, long offset)
      Copies the short value to native memory
      Parameters:
      runtime - the current runtime.
      buffer - the native memory buffer.
      offset - the memory offset.
    • fromNative

      public void fromNative(Runtime runtime, Pointer buffer, long offset)
      Copies the short value from native memory
      Parameters:
      runtime - the current runtime.
      buffer - the native memory buffer.
      offset - the memory offset.
    • nativeSize

      public final int nativeSize(Runtime runtime)
      Gets the native size of type of reference in bytes.
      Parameters:
      runtime - the current runtime.
      Returns:
      the size of a byte in bytes