GlueGen v2.6.0-rc-20250712
GlueGen, Native Binding Generator for Java™ (public API).
com.jogamp.gluegen.procaddress.ProcAddressConfiguration Class Reference
Inheritance diagram for com.jogamp.gluegen.procaddress.ProcAddressConfiguration:
Collaboration diagram for com.jogamp.gluegen.procaddress.ProcAddressConfiguration:

Classes

class  CaseNode
 
class  ConcatNode
 
class  ConstStringNode
 
class  ConvNode
 Helper class for converting a function name to the typedef'ed function pointer name.
 
class  FormatNode
 

Public Member Functions

boolean emitProcAddressTable ()
 
String tableClassPackage ()
 
String tableClassName ()
 
boolean skipProcAddressGen (final FunctionSymbol symbol)
 
boolean isForceProcAddressGen4All ()
 
List< String > getForceProcAddressGen ()
 
String getProcAddressTableExpr ()
 
String convertToFunctionPointerName (final String funcName)
 
boolean forceProcAddressGen (final FunctionSymbol symbol)
 
void addForceProcAddressGen (final String funcName)
 
void addLocalProcAddressCallingConvention (final String funcName, final String callingConvention)
 
String getLocalProcAddressCallingConvention (final FunctionSymbol symbol)
 
boolean isLocalProcAddressCallingConvention4All ()
 
String getLocalProcAddressCallingConvention4All ()
 
- Public Member Functions inherited from com.jogamp.gluegen.JavaConfiguration
 JavaConfiguration ()
 
final void read (final String filename) throws IOException
 Reads the configuration file. More...
 
void setOutputRootDir (final String s)
 
String libraryOnLoadName ()
 Returns the library basename used to CCodeUnit#emitJNIOnLoadJNIEnvCode(String). More...
 
String packageName ()
 Returns the package name parsed from the configuration file. More...
 
String implPackageName ()
 Returns the implementation package name parsed from the configuration file. More...
 
String className ()
 Returns the class name parsed from the configuration file. More...
 
String implClassName ()
 Returns the implementation class name parsed from the configuration file. More...
 
boolean structsOnly ()
 
String javaOutputDir ()
 Returns the Java code output directory parsed from the configuration file. More...
 
String nativeOutputDir ()
 Returns the native code output directory parsed from the configuration file. More...
 
boolean nativeOutputUsesJavaHierarchy ()
 Returns whether the native code directory structure mirrors the Java hierarchy. More...
 
boolean tagNativeBinding ()
 Returns whether the comment of a native method binding should include a @native tag. More...
 
boolean relaxedEqualSemanticsTest ()
 Returns whether TypeConfig.SemanticEqualityOp#equalSemantics(TypeConfig.SemanticEqualityOp) shall attempt to perform a relaxed semantic equality test, e.g. More...
 
EmissionStyle emissionStyle ()
 Returns the code emission style (constants in JavaEmitter) parsed from the configuration file. More...
 
MethodAccess accessControl (final String name)
 Returns the access control for the given method-name or fully qualified class-name. More...
 
String gluegenRuntimePackage ()
 Returns the package in which the generated glue code expects to find its run-time helper classes (Buffers, Platform, StructAccessor). More...
 
String runtimeExceptionType ()
 Returns the kind of exception to raise if run-time checks fail in the generated code. More...
 
String unsupportedExceptionType ()
 Returns the kind of exception to raise if run-time checks fail in the generated code. More...
 
List< String > imports ()
 Returns the list of imports that should be emitted at the top of each .java file. More...
 
TypeInfo canonicalNameOpaque (final String canonicalName)
 If the given canonicalName should be considered opaque, returns the TypeInfo describing the replacement type. More...
 
TypeInfo typeInfo (Type type)
 If this type should be considered opaque, returns the TypeInfo describing the replacement type. More...
 
boolean returnsString (final String functionName)
 Indicates whether the given function (which returns a char* in C) should be translated as returning a java.lang.String. More...
 
boolean returnsString (final AliasedSymbol symbol)
 Indicates whether the given function (which returns a char* in C) should be translated as returning a java.lang.String. More...
 
boolean returnsStringOnly (final String functionName)
 Indicates whether the given function (which returns a char* in C) should be translated as returning a java.lang.String only. More...
 
List< JavaCallbackDefgetJavaCallbackList ()
 Returns the list of all configured JavaCallback definitions. More...
 
JavaCallbackDef javaCallbackSetFuncToDef (final AliasedSymbol symbol)
 Returns the configured JavaCallback definition mapped to the JavaCallback-Set-Function name. More...
 
String returnedArrayLength (final String symbol)
 Returns a MessageFormat string of the Java expression calculating the number of elements in the returned array from the specified function name or struct-field array-size. More...
 
boolean maxOneElement (final String symbol)
 Indicates whether the given symbol covers no or one single object. More...
 
List< Integer > stringArguments (final AliasedSymbol symbol)
 Returns a list of Integers which are the indices of const char* arguments that should be converted to Strings. More...
 
List< JavaType.PascalStringElem > pascalStringArgument (final AliasedSymbol symbol)
 Returns a list of PascalStringIdx which are tuples of indices of int len, const char* arguments that should be converted to Strings. More...
 
boolean isForceUsingNIOOnly4All ()
 
void addUseNIOOnly (final String fname)
 
boolean useNIOOnly (final String functionName)
 Returns true if the given function should only create a java.nio variant, and no array variants, for void* and other C primitive pointers. More...
 
void addUseNIODirectOnly (final String fname)
 
boolean useNIODirectOnly (final String functionName)
 Returns true if the given function should only create a java.nio variant, and no array variants, for void* and other C primitive pointers. More...
 
List< String > customJavaCodeForClass (final String className)
 Returns a list of Strings containing user-implemented code for the given Java type name (not fully-qualified, only the class name); returns either null or an empty list if there is no custom code for the class. More...
 
List< String > customJNICodeForClass (final String className)
 Returns a list of Strings containing user-implemented JNI code for the given Java type name (not fully-qualified, only the class name); returns either null or an empty list if there is no custom code for the class. More...
 
List< String > javadocForMethod (final String methodName)
 
List< String > javadocForClass (final String className)
 Returns a list of Strings containing Javadoc documentation for the given Java type name (not fully-qualified, only the class name); returns either null or an empty list if there is no Javadoc documentation for the class. More...
 
String packageForStruct (final String structName)
 Returns the package into which to place the glue code for accessing the specified struct. More...
 
List< String > customCCode ()
 Returns, as a List of Strings, the custom C code to be emitted along with the glue code for the main class. More...
 
List< String > forcedStructs ()
 Returns, as a List of Strings, the structs for which glue code emission should be forced. More...
 
String returnStructMachineDataInfoIndex (final String structName)
 Returns a MessageFormat string of the Java code defining mdIdx, i.e. More...
 
String returnValueCapacity (final String functionName)
 Returns a MessageFormat string of the C expression calculating the capacity of the java.nio.ByteBuffer being returned from a native method, or null if no expression has been specified. More...
 
String returnValueLength (final String symbol)
 Returns a MessageFormat string of the C expression calculating the length of the array being returned from a native method. More...
 
List< String > temporaryCVariableDeclarations (final String functionName)
 Returns a List of Strings of expressions declaring temporary C variables in the glue code for the specified function. More...
 
List< String > temporaryCVariableAssignments (final String functionName)
 Returns a List of Strings of expressions containing assignments to temporary C variables in the glue code for the specified function. More...
 
List< String > extendedInterfaces (final String interfaceName)
 Returns a List of Strings indicating the interfaces the passed interface should declare it extends. More...
 
List< String > implementedInterfaces (final String className)
 Returns a List of Strings indicating the interfaces the passed class should declare it implements. More...
 
String extendedParentClass (final String className)
 Returns a List of Strings indicating the interfaces the passed class should declare it implements. More...
 
void logIgnoresOnce ()
 
void logIgnores ()
 
void logRenamesOnce ()
 
void logRenames ()
 
final boolean immutableAccess (final AliasedSymbol symbol)
 Returns true if the glue code for the given aliased symbol shall produce code for immutable access only. More...
 
final boolean immutableAccess (final String symbol)
 Returns true if the glue code for the given symbol shall produce code for immutable access only. More...
 
boolean manuallyImplement (final String functionName)
 Variant of manuallyImplement(AliasedSymbol), where this method only considers the current-name of the given symbol, not the renamed-symbol. More...
 
boolean manuallyImplement (final AliasedSymbol symbol)
 Returns true if the glue code for the given aliased function will be manually implemented by the end user. More...
 
String getDelegatedImplementation (final String functionName)
 Variant of getDelegatedImplementation(AliasedSymbol), where this method only considers the current-name of the given symbol, not the renamed-symbol. More...
 
String getDelegatedImplementation (final AliasedSymbol symbol)
 Returns the RENAMED-IMPL-SYMBOL if the implementation of the glue code of the given function shall be manually delegated by the end user. More...
 
JavaType getOpaqueReturnType (final String functionName)
 Variant of getOpaqueReturnType(AliasedSymbol), where this method only considers the current-name of the given symbol, not the renamed-symbol. More...
 
JavaType getOpaqueReturnType (final AliasedSymbol symbol)
 Returns the opaque JavaType for the given function AliasedSymbol or null if not opaque. More...
 
final boolean shouldIgnoreInInterface (final String symbol)
 Variant of shouldIgnoreInInterface(AliasedSymbol), where this method only considers the current-name of the given symbol, not the renamed-symbol. More...
 
boolean shouldIgnoreInInterface (final AliasedSymbol symbol)
 Returns true if this aliased symbol should be ignored during glue code generation of interfaces and implementation. More...
 
boolean shouldIgnoreInImpl (final AliasedSymbol symbol)
 Returns true if this aliased symbol should be ignored during glue code generation of implementation only. More...
 
boolean isUnimplemented (final AliasedSymbol symbol)
 Returns true if this function should be given a body which throws a run-time exception with an "unimplemented" message during glue code generation. More...
 
Set< String > getAliasedDocNames (final AliasedSymbol symbol)
 Return a set of aliased-name for comment in docs. More...
 
String renameJavaType (final String javaTypeName)
 Returns a replacement name for this type, which should be the name of a Java wrapper class for a C struct, or the name unchanged if no RenameJavaType directive was specified for this type. More...
 
String getJavaSymbolRename (final String origName)
 Returns a replacement name for this function or definition which should be used as the Java name for the bound method or constant. More...
 
Set< String > getRenamedJavaSymbols (final String aliasedName)
 Returns a set of replaced names to the given aliasedName. More...
 
void addJavaSymbolRename (final String origName, final String newName)
 Programmatically adds a rename directive for the given symbol. More...
 
void addDelegateImplementation (final String origName, final String renamedImpl)
 Programmatically adds a delegate implementation directive for the given symbol. More...
 
boolean allStatic ()
 Returns true if the emission style is AllStatic. More...
 
boolean emitInterface ()
 Returns true if an interface should be emitted during glue code generation. More...
 
boolean emitImpl ()
 Returns true if an implementing class should be emitted during glue code generation. More...
 
List< String > javaPrologueForMethod (final MethodBinding binding, final boolean forImplementingMethodCall, final boolean eraseBufferAndArrayTypes)
 Returns a list of Strings which should be emitted as a prologue to the body for the Java-side glue code for the given method. More...
 
List< String > javaEpilogueForMethod (final MethodBinding binding, final boolean forImplementingMethodCall, final boolean eraseBufferAndArrayTypes)
 Returns a list of Strings which should be emitted as an epilogue to the body for the Java-side glue code for the given method. More...
 
void readDelegateImplementation (final StringTokenizer tok, final String filename, final int lineNo)
 
TypeInfo addTypeInfo (final String alias, final Type superType)
 

Protected Member Functions

void dispatch (final String cmd, final StringTokenizer tok, final File file, final String filename, final int lineNo) throws IOException
 
String readGetProcAddressTableExpr (final StringTokenizer tok, final String filename, final int lineNo)
 
void setProcAddressNameExpr (final String expr)
 
void readProcAddressNameExpr (final StringTokenizer tok, final String filename, final int lineNo)
 
void readLocalProcAddressCallingConvention (final StringTokenizer tok, final String filename, final int lineNo) throws IOException
 
void setProcAddressTableExpr (final String s)
 
- Protected Member Functions inherited from com.jogamp.gluegen.JavaConfiguration
final void read (final String filename, final String linePrefix) throws IOException
 Reads the specified file, treating each line as if it started with the specified string. More...
 
final boolean shouldIgnoreInInterface_Int (final AliasedSymbol symbol)
 
final boolean shouldIgnoreInImpl_Int (final AliasedSymbol symbol)
 
void dispatch (final String cmd, final StringTokenizer tok, final File file, final String filename, final int lineNo) throws IOException
 
String readString (final String cmd, final StringTokenizer tok, final String filename, final int lineNo)
 
Boolean readBoolean (final String cmd, final StringTokenizer tok, final String filename, final int lineNo)
 
Class<?> stringToPrimitiveType (final String type) throws ClassNotFoundException
 
void readAccessControl (final StringTokenizer tok, final String filename, final int lineNo)
 
void readOpaque (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnsOpaque (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnsString (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnsStringOnly (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnedArrayLength (final StringTokenizer tok, final String filename, final int lineNo)
 
void readMaxOneElement (final StringTokenizer tok, final String filename, final int lineNo)
 
void readJavaCallbackDef (final StringTokenizer tok, final String filename, final int lineNo)
 
void readJavaCallbackKey (final StringTokenizer tok, final String filename, final int lineNo)
 
void readExtendedIntfImplSymbols (final StringTokenizer tok, final String filename, final int lineNo, final boolean forInterface, final boolean forImplementation, final boolean onlyList)
 
void readIgnore (final StringTokenizer tok, final String filename, final int lineNo)
 
void readUnignore (final StringTokenizer tok, final String filename, final int lineNo)
 
void readIgnoreNot (final StringTokenizer tok, final String filename, final int lineNo)
 
void readUnimplemented (final StringTokenizer tok, final String filename, final int lineNo)
 
void readIgnoreField (final StringTokenizer tok, final String filename, final int lineNo)
 
void readImmutableAccess (final StringTokenizer tok, final String filename, final int lineNo)
 
void readManuallyImplement (final StringTokenizer tok, final String filename, final int lineNo)
 
void readCustomJavaCode (final StringTokenizer tok, final String filename, final int lineNo)
 
void addCustomJavaCode (final String className, final String code)
 
void readCustomCCode (final StringTokenizer tok, final String filename, final int lineNo)
 
void readCustomJNICode (final StringTokenizer tok, final String filename, final int lineNo)
 
void addCustomJNICode (final String className, final String code)
 
void readMethodJavadoc (final StringTokenizer tok, final String filename, final int lineNo)
 
void addMethodJavadoc (final String methodName, final String code)
 
void readClassJavadoc (final StringTokenizer tok, final String filename, final int lineNo)
 
void addClassJavadoc (final String className, final String code)
 
void readArgumentIsString (final StringTokenizer tok, final String filename, final int lineNo)
 When const char* arguments in the C function prototypes are encountered, the emitter will normally convert them to byte[] arguments. More...
 
void readArgumentIsPascalString (final StringTokenizer tok, final String filename, final int lineNo)
 
void readStructPackage (final StringTokenizer tok, final String filename, final int lineNo)
 
void readStructMachineDataInfoIndex (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnValueCapacity (final StringTokenizer tok, final String filename, final int lineNo)
 
void readReturnValueLength (final StringTokenizer tok, final String filename, final int lineNo)
 
void readTemporaryCVariableDeclaration (final StringTokenizer tok, final String filename, final int lineNo)
 
void readTemporaryCVariableAssignment (final StringTokenizer tok, final String filename, final int lineNo)
 
void doInclude (final StringTokenizer tok, final File file, final String filename, final int lineNo) throws IOException
 
void doIncludeAs (final StringTokenizer tok, final File file, final String filename, final int lineNo) throws IOException
 
void readExtend (final StringTokenizer tok, final String filename, final int lineNo)
 
void readImplements (final StringTokenizer tok, final String filename, final int lineNo)
 
void readParentClass (final StringTokenizer tok, final String filename, final int lineNo)
 
void readRenameJavaType (final StringTokenizer tok, final String filename, final int lineNo)
 
void readRenameJavaSymbol (final StringTokenizer tok, final String filename, final int lineNo)
 
void readJavaPrologueOrEpilogue (final StringTokenizer tok, final String filename, final int lineNo, final boolean prologue)
 
void addJavaPrologueOrEpilogue (final String methodName, final String code, final boolean prologue)
 
void readRangeCheck (final StringTokenizer tok, final String filename, final int lineNo, final boolean inBytes)
 
void addTypeInfo (final TypeInfo info)
 

Additional Inherited Members

- Static Public Member Functions inherited from com.jogamp.gluegen.JavaConfiguration
static< K, V > V oneInMap (final Map< K, V > map, final Set< K > symbols)
 
static< K > boolean oneInSet (final Set< K > set1, final Set< K > set2)
 
static String canonicalStructFieldSymbol (final String structName, final String fieldName)
 Returns the canonical configuration name for a struct field name, i.e. More...
 
- Static Public Attributes inherited from com.jogamp.gluegen.JavaConfiguration
static String NEWLINE = System.getProperty("line.separator")
 
- Static Protected Member Functions inherited from com.jogamp.gluegen.JavaConfiguration
static ASTLocusTag getASTLocusTag (final AliasedSymbol s)
 
static TypeInfo parseTypeInfo (final String cType, final JavaType javaType)
 
static boolean startsWithDescriptor (final String s)
 
- Protected Attributes inherited from com.jogamp.gluegen.JavaConfiguration
final LoggerIf LOG
 

Detailed Description

Definition at line 51 of file ProcAddressConfiguration.java.

Member Function Documentation

◆ addForceProcAddressGen()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.addForceProcAddressGen ( final String  funcName)

Definition at line 333 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ addLocalProcAddressCallingConvention()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.addLocalProcAddressCallingConvention ( final String  funcName,
final String  callingConvention 
)

Definition at line 338 of file ProcAddressConfiguration.java.

◆ convertToFunctionPointerName()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.convertToFunctionPointerName ( final String  funcName)

Definition at line 306 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ dispatch()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.dispatch ( final String  cmd,
final StringTokenizer  tok,
final File  file,
final String  filename,
final int  lineNo 
) throws IOException
protected

Reimplemented from com.jogamp.gluegen.JavaConfiguration.

Definition at line 72 of file ProcAddressConfiguration.java.

Here is the call graph for this function:

◆ emitProcAddressTable()

boolean com.jogamp.gluegen.procaddress.ProcAddressConfiguration.emitProcAddressTable ( )

Definition at line 265 of file ProcAddressConfiguration.java.

◆ forceProcAddressGen()

boolean com.jogamp.gluegen.procaddress.ProcAddressConfiguration.forceProcAddressGen ( final FunctionSymbol  symbol)

Definition at line 313 of file ProcAddressConfiguration.java.

Here is the call graph for this function:

◆ getForceProcAddressGen()

List< String > com.jogamp.gluegen.procaddress.ProcAddressConfiguration.getForceProcAddressGen ( )

Definition at line 292 of file ProcAddressConfiguration.java.

◆ getLocalProcAddressCallingConvention()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.getLocalProcAddressCallingConvention ( final FunctionSymbol  symbol)

Definition at line 342 of file ProcAddressConfiguration.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ getLocalProcAddressCallingConvention4All()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.getLocalProcAddressCallingConvention4All ( )

Definition at line 357 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ getProcAddressTableExpr()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.getProcAddressTableExpr ( )

Definition at line 296 of file ProcAddressConfiguration.java.

◆ isForceProcAddressGen4All()

boolean com.jogamp.gluegen.procaddress.ProcAddressConfiguration.isForceProcAddressGen4All ( )

Definition at line 288 of file ProcAddressConfiguration.java.

◆ isLocalProcAddressCallingConvention4All()

boolean com.jogamp.gluegen.procaddress.ProcAddressConfiguration.isLocalProcAddressCallingConvention4All ( )

Definition at line 353 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ readGetProcAddressTableExpr()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.readGetProcAddressTableExpr ( final StringTokenizer  tok,
final String  filename,
final int  lineNo 
)
protected

Definition at line 100 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ readLocalProcAddressCallingConvention()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.readLocalProcAddressCallingConvention ( final StringTokenizer  tok,
final String  filename,
final int  lineNo 
) throws IOException
protected

Definition at line 141 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ readProcAddressNameExpr()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.readProcAddressNameExpr ( final StringTokenizer  tok,
final String  filename,
final int  lineNo 
)
protected

Definition at line 130 of file ProcAddressConfiguration.java.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ setProcAddressNameExpr()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.setProcAddressNameExpr ( final String  expr)
protected

Definition at line 110 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ setProcAddressTableExpr()

void com.jogamp.gluegen.procaddress.ProcAddressConfiguration.setProcAddressTableExpr ( final String  s)
protected

Definition at line 302 of file ProcAddressConfiguration.java.

Here is the caller graph for this function:

◆ skipProcAddressGen()

boolean com.jogamp.gluegen.procaddress.ProcAddressConfiguration.skipProcAddressGen ( final FunctionSymbol  symbol)

Definition at line 277 of file ProcAddressConfiguration.java.

Here is the call graph for this function:

◆ tableClassName()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.tableClassName ( )

Definition at line 273 of file ProcAddressConfiguration.java.

◆ tableClassPackage()

String com.jogamp.gluegen.procaddress.ProcAddressConfiguration.tableClassPackage ( )

Definition at line 269 of file ProcAddressConfiguration.java.


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