GlueGen: com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter Class Reference

GlueGen v2.6.0-rc-20250721 GlueGen, Native Binding Generator for Java™ (public API).

Classes | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter Class Reference

A specialization of JavaMethodBindingEmitter with knowledge of how to call through a function pointer. More...

Inheritance diagram for com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter:
Collaboration diagram for com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter:

## Classes

class | WrappedMethodCommentEmitter
| This class emits the comment for the wrapper method. More...

## Public Member Functions

| ProcAddressJavaMethodBindingEmitter (final JavaMethodBindingEmitter methodToWrap, final boolean callThroughProcAddress, final String getProcAddressTableExpr, final boolean changeNameAndArguments, final ProcAddressEmitter emitter)
| ProcAddressJavaMethodBindingEmitter (final ProcAddressJavaMethodBindingEmitter methodToWrap)
String | getImplName ()
Public Member Functions inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
| JavaMethodBindingEmitter (final MethodBinding binding, final CodeUnit unit, final String runtimeExceptionType, final String unsupportedExceptionType, final boolean emitBody, final boolean tagNativeBinding, final boolean eraseBufferAndArrayTypes, final boolean useNIOOnly, final boolean useNIODirectOnly, final boolean forDirectBufferImplementation, final boolean forIndirectBufferAndArrayImplementation, final boolean isUnimplemented, final boolean isInterface, final boolean isNativeMethod, final boolean isPrivateNativeMethod, final JavaConfiguration configuration)
| JavaMethodBindingEmitter (final JavaMethodBindingEmitter arg)
boolean | isNativeMethod ()
boolean | isPrivateNativeMethod ()
boolean | isForDirectBufferImplementation ()
boolean | isForIndirectBufferAndArrayImplementation ()
String | getInterfaceName ()
String | getImplName ()
String | getNativeName ()
FunctionSymbol | getCSymbol ()
String | getRuntimeExceptionType ()
| The type of exception (must subclass `java.lang.RuntimeException`) raised if runtime checks fail in the generated code. More...
String | getUnsupportedExceptionType ()
void | setReturnedArrayLengthExpression (final String expr)

If the underlying function returns an array (currently only arrays of compound types are supported) as opposed to a pointer to an object, this method should be called to provide a MessageFormat string containing an expression that computes the number of elements of the returned array. More...

void | setPrologue (final List< String > prologue)
| Sets the manually-generated prologue code for this emitter. More...
void | setEpilogue (final List< String > epilogue)
| Sets the manually-generated epilogue code for this emitter. More...
boolean | signatureOnly ()
| Indicates whether this emitter will print only a signature, or whether it will emit Java code for the body of the method as well. More...
void | setEmitBody (final boolean emitBody)
| Accessor for subclasses. More...
void | setEraseBufferAndArrayTypes (final boolean erase)
| Accessor for subclasses. More...
void | setPrivateNativeMethod (final boolean v)
| Accessor for subclasses. More...
void | setForDirectBufferImplementation (final boolean direct)
| Accessor for subclasses. More...
void | setForIndirectBufferAndArrayImplementation (final boolean indirect)
| Accessor for subclasses. More...
Public Member Functions inherited from com.jogamp.gluegen.FunctionEmitter
| FunctionEmitter (final MethodBinding binding, final CodeUnit unit, final boolean isInterface, final JavaConfiguration configuration)
| Constructs the FunctionEmitter with a CommentEmitter that emits nothing. More...
| FunctionEmitter (final FunctionEmitter arg)
| Makes this FunctionEmitter a copy of the passed one. More...
final boolean | isInterface ()
final MethodBinding | getBinding ()
final CodeUnit | getUnit ()
void | addModifiers (final Iterator< EmissionModifier > mi)
void | addModifier (final EmissionModifier m)
boolean | removeModifier (final EmissionModifier m)
void | clearModifiers ()
boolean | hasModifier (final EmissionModifier m)
Iterator< EmissionModifier > | getModifiers ()
abstract String | getInterfaceName ()
abstract String | getImplName ()
abstract String | getNativeName ()
abstract FunctionSymbol | getCSymbol ()
final void | emit ()
| Emit the function to the `getUnit()`. More...
String | toString ()
void | setCommentEmitter (final CommentEmitter cEmitter)
| Set the object that will emit the comment for this function. More...
CommentEmitter | getCommentEmitter ()
| Get the comment emitter for this FunctionEmitter. More...

## Protected Member Functions

int | appendArguments (final StringBuilder buf)
| Returns the number of arguments emitted. More...
String | getNativeImplMethodName ()
void | emitPreCallSetup (final MethodBinding binding)
int | emitCallArguments (final MethodBinding binding)
Protected Member Functions inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
String | getArgumentName (final int i)
void | setReturnedArrayLengthExpression (final String expr, final boolean onlyForComments)
String | getReturnedArrayLengthExpression ()
String | getReturnedArrayLengthComment ()
StringBuilder | appendReturnType (final StringBuilder buf)
String | erasedTypeString (final JavaType type, final boolean skipBuffers)
String | getReturnTypeString (final boolean skipArray)
StringBuilder | appendName (final StringBuilder buf)
int | appendArguments (final StringBuilder buf)
| Returns the number of arguments emitted. More...
String | getNativeImplMethodName ()
String | byteOffsetArgName (final int i)
String | isNIOArgName (final int i)
String | isNIOArgName (final String s)
String | byteOffsetArrayArgName (final int i)
String | offsetArgName (final int i)
void | emitAdditionalCode ()
void | emitBody ()
void | emitPrologueOrEpilogue (final List< String > code)
void | emitPreCallSetup (final MethodBinding binding)
void | emitArrayLengthAndNIOBufferChecks (final MethodBinding binding)
void | emitCompoundArrayCopies (final MethodBinding binding)
void | emitCall (final MethodBinding binding)
void | emitReturnVariableSetupAndCall (final MethodBinding binding)
int | emitCallArguments (final MethodBinding binding)
void | emitPostCallCleanup (final MethodBinding binding)
void | emitCallResultReturn (final MethodBinding binding)
String[] | argumentNameArray ()
String | getCommentStartString ()
String | getCommentEndString ()
String | getBaseIndentString ()
Protected Member Functions inherited from com.jogamp.gluegen.FunctionEmitter
void | emitAdditionalCode ()
void | emitDocComment ()
final void | emitSignature ()
StringBuilder | appendSignature (final StringBuilder buf)
final int | emitModifiers ()
int | appendModifiers (final StringBuilder buf)
String | getBaseIndentString ()
String | getCommentStartString ()
String | getCommentEndString ()
final void | emitReturnType ()
abstract StringBuilder | appendReturnType (StringBuilder buf)
final void | emitName ()
abstract StringBuilder | appendName (StringBuilder buf)
final int | emitArguments ()
| Returns the number of arguments emitted. More...
abstract int | appendArguments (StringBuilder buf)
| Returns the number of arguments emitted. More...
abstract void | emitBody ()

## Protected Attributes

boolean | callThroughProcAddress
boolean | changeNameAndArguments
String | getProcAddressTableExpr
ProcAddressEmitter | emitter
Protected Attributes inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
final CommentEmitter | defaultJavaCommentEmitter = new DefaultCommentEmitter()
final CommentEmitter | defaultInterfaceCommentEmitter = new InterfaceCommentEmitter()
final boolean | tagNativeBinding
final boolean | useNIODirectOnly
List< String > | prologue
List< String > | epilogue
Protected Attributes inherited from com.jogamp.gluegen.FunctionEmitter
final MethodBinding | binding
final CodeUnit | unit
final JavaConfiguration | cfg

## Additional Inherited Members

Static Public Member Functions inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
static String | javaThisArgumentName ()
Static Public Attributes inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
static final EmissionModifier | PUBLIC = new EmissionModifier("public")
static final EmissionModifier | PROTECTED = new EmissionModifier("protected")
static final EmissionModifier | PRIVATE = new EmissionModifier("private")
static final EmissionModifier | ABSTRACT = new EmissionModifier("abstract")
static final EmissionModifier | FINAL = new EmissionModifier("final")
static final EmissionModifier | NATIVE = new EmissionModifier("native")
static final EmissionModifier | SYNCHRONIZED = new EmissionModifier("synchronized")
Static Public Attributes inherited from com.jogamp.gluegen.FunctionEmitter
static final EmissionModifier | STATIC = new EmissionModifier("static")
Static Protected Member Functions inherited from com.jogamp.gluegen.JavaMethodBindingEmitter
static String | byteOffsetArgName (final String s)

## Detailed Description

A specialization of JavaMethodBindingEmitter with knowledge of how to call through a function pointer.

Definition at line 50 of file ProcAddressJavaMethodBindingEmitter.java.

## Constructor & Destructor Documentation

## ◆ ProcAddressJavaMethodBindingEmitter() [1/2]

com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.ProcAddressJavaMethodBindingEmitter | ( | final JavaMethodBindingEmitter | methodToWrap,
|  | final boolean | callThroughProcAddress,
|  | final String | getProcAddressTableExpr,
|  | final boolean | changeNameAndArguments,
|  | final ProcAddressEmitter | emitter
| ) |  |

Definition at line 58 of file ProcAddressJavaMethodBindingEmitter.java.

Here is the call graph for this function:

## ◆ ProcAddressJavaMethodBindingEmitter() [2/2]

com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.ProcAddressJavaMethodBindingEmitter | ( | final ProcAddressJavaMethodBindingEmitter | methodToWrap | ) |

Definition at line 79 of file ProcAddressJavaMethodBindingEmitter.java.

## Member Function Documentation

## ◆ appendArguments()

int com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.appendArguments | ( | final StringBuilder | buf | ) |

protected

Returns the number of arguments emitted.

Reimplemented from com.jogamp.gluegen.JavaMethodBindingEmitter.

Definition at line 94 of file ProcAddressJavaMethodBindingEmitter.java.

## ◆ emitCallArguments()

int com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.emitCallArguments | ( | final MethodBinding | binding | ) |

protected

Reimplemented from com.jogamp.gluegen.JavaMethodBindingEmitter.

Definition at line 133 of file ProcAddressJavaMethodBindingEmitter.java.

Here is the call graph for this function:

## ◆ emitPreCallSetup()

void com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.emitPreCallSetup | ( | final MethodBinding | binding | ) |

protected

Reimplemented from com.jogamp.gluegen.JavaMethodBindingEmitter.

Definition at line 119 of file ProcAddressJavaMethodBindingEmitter.java.

Here is the call graph for this function:

## ◆ getImplName()

String com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.getImplName | ( |  | ) |

Reimplemented from com.jogamp.gluegen.JavaMethodBindingEmitter.

Definition at line 85 of file ProcAddressJavaMethodBindingEmitter.java.

## ◆ getNativeImplMethodName()

String com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.getNativeImplMethodName | ( |  | ) |

protected

Reimplemented from com.jogamp.gluegen.JavaMethodBindingEmitter.

Definition at line 110 of file ProcAddressJavaMethodBindingEmitter.java.

## Member Data Documentation

## ◆ callThroughProcAddress

boolean com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.callThroughProcAddress

protected

Definition at line 52 of file ProcAddressJavaMethodBindingEmitter.java.

## ◆ changeNameAndArguments

boolean com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.changeNameAndArguments

protected

Definition at line 53 of file ProcAddressJavaMethodBindingEmitter.java.

## ◆ emitter

ProcAddressEmitter com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.emitter

protected

Definition at line 56 of file ProcAddressJavaMethodBindingEmitter.java.

## ◆ getProcAddressTableExpr

String com.jogamp.gluegen.procaddress.ProcAddressJavaMethodBindingEmitter.getProcAddressTableExpr

protected

Definition at line 55 of file ProcAddressJavaMethodBindingEmitter.java.

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

- src/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.java