com.jogamp.gluegen.procaddress

## Class ProcAddressCMethodBindingEmitter

- java.lang.Object
- - com.jogamp.gluegen.FunctionEmitter
  - - com.jogamp.gluegen.CMethodBindingEmitter
    - - com.jogamp.gluegen.procaddress.ProcAddressCMethodBindingEmitter

-     public class ProcAddressCMethodBindingEmitter
      extends CMethodBindingEmitter

- - ### Nested Class Summary

    - ### Nested classes/interfaces inherited from class com.jogamp.gluegen.CMethodBindingEmitter

      `CMethodBindingEmitter.DefaultCommentEmitter`

    - ### Nested classes/interfaces inherited from class com.jogamp.gluegen.FunctionEmitter

      `FunctionEmitter.EmissionModifier`

  - ### Field Summary

    - ### Fields inherited from class com.jogamp.gluegen.CMethodBindingEmitter

      `arrayIdx, arrayRes, arrayResLength, binding, defaultCommentEmitter, forImplementingMethodCall, forIndirectBufferAndArrayImplementation, LOG, machDesc, STRING_CHARS_PREFIX`

    - ### Fields inherited from class com.jogamp.gluegen.FunctionEmitter

      `STATIC`

  - ### Constructor Summary

    Constructors
    Constructor and Description
    `ProcAddressCMethodBindingEmitter(CMethodBindingEmitter methodToWrap, boolean callThroughProcAddress, boolean needsLocalTypedef, String localTypedefCallingConvention, ProcAddressEmitter emitter)`

  - ### Method Summary

    Methods
    Modifier and Type | Method and Description
    --- | ---
    `protected int` | `emitArguments(PrintWriter writer)` Returns the number of arguments emitted.
    `protected void` | `emitBodyCallCFunction(PrintWriter writer)`
    `protected void` | `emitBodyVariableDeclarations(PrintWriter writer)`
    `protected void` | `emitBodyVariablePreCallSetup(PrintWriter writer)` Code to init the variables that were declared in emitBodyVariableDeclarations(), PRIOR TO calling the actual C function.
    `protected String` | `jniMangle(MethodBinding binding)`

    - ### Methods inherited from class com.jogamp.gluegen.CMethodBindingEmitter

      `argumentNameArray, byteOffsetArgName, byteOffsetArrayArgName, cThisArgumentName, emitBody, emitBodyPassCArguments, emitBodyReturnResult, emitBodyUserVariableAssignments, emitBodyUserVariableDeclarations, emitBodyVariablePostCallCleanup, emitName, emitReturnType, forIndirectBufferAndArrayImplementation, getBinding, getImplSuffix, getIsJavaMethodStatic, getIsOverloadedBinding, getJavaClassName, getJavaPackageName, getMachineDescription, getName, getReturnValueCapacityExpression, getReturnValueLengthExpression, getTemporaryCVariableAssignments, getTemporaryCVariableDeclarations, isNIOArgName, isNIOArgName, isUTF8Type, javaArgTypeNeedsDataCopy, jniMangle, pointerConversionArgumentName, setIsCStructFunctionPointer, setReturnValueCapacityExpression, setReturnValueLengthExpression, setTemporaryCVariableAssignments, setTemporaryCVariableDeclarations`

    - ### Methods inherited from class com.jogamp.gluegen.FunctionEmitter

      `addModifier, addModifiers, clearModifiers, emit, emit, emitDocComment, emitModifiers, emitSignature, getBaseIndentString, getCommentEmitter, getCommentEndString, getCommentStartString, getDefaultOutput, getModifiers, hasModifier, isBaseTypeConst, isInterface, removeModifier, setCommentEmitter, toString`

    - ### Methods inherited from class java.lang.Object

      `clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Constructor Detail

    - #### ProcAddressCMethodBindingEmitter

          public ProcAddressCMethodBindingEmitter(CMethodBindingEmitter methodToWrap,
                                          boolean callThroughProcAddress,
                                          boolean needsLocalTypedef,
                                          String localTypedefCallingConvention,
                                          ProcAddressEmitter emitter)

  - ### Method Detail

    - #### emitArguments

          protected int emitArguments(PrintWriter writer)

      Description copied from class: `FunctionEmitter`
      Returns the number of arguments emitted.
      Overrides:
        `emitArguments` in class `CMethodBindingEmitter`

    - #### emitBodyVariableDeclarations

          protected void emitBodyVariableDeclarations(PrintWriter writer)

      Overrides:
        `emitBodyVariableDeclarations` in class `CMethodBindingEmitter`

    - #### emitBodyVariablePreCallSetup

          protected void emitBodyVariablePreCallSetup(PrintWriter writer)

      Description copied from class: `CMethodBindingEmitter`
      Code to init the variables that were declared in emitBodyVariableDeclarations(), PRIOR TO calling the actual C function.
      Overrides:
        `emitBodyVariablePreCallSetup` in class `CMethodBindingEmitter`

    - #### emitBodyCallCFunction

          protected void emitBodyCallCFunction(PrintWriter writer)

      Overrides:
        `emitBodyCallCFunction` in class `CMethodBindingEmitter`

    - #### jniMangle

          protected String jniMangle(MethodBinding binding)

      Overrides:
        `jniMangle` in class `CMethodBindingEmitter`