Top Fields Constructors Methods
com.jogamp.gluegen.opengl

public Class GLConfiguration

extends ProcAddressConfiguration
Class Inheritance
Static Imports
java.util.logging.Level.INFO

Field Summary

Modifier and TypeField and Description
private boolean
private boolean
private final Map<String, GLEmitter.BufferObjectKind>
private final Set<String>
pack-priv boolean
private final Set<String>
private final GLEmitter
private final Set<String>
private final List<String>
private BuildStaticGLInfo
private final List<String>
private BuildStaticGLInfo
private final Set<String>
private final Map<String, Set<String>>
private final Map<String, String>
private final Set<String>

Constructor Summary

AccessConstructor and Description
public
GLConfiguration(final GLEmitter emitter)

Method Summary

Modifier and TypeMethod and Description
public void
addJavaDocSymbolRename(final String origName, final String newName)

Adds a javadoc rename directive for the given symbol.

public void
addJavaSymbolRename(final String origName, final String newName)

Overrides com.jogamp.gluegen.JavaConfiguration.addJavaSymbolRename.

Programmatically adds a rename directive for the given symbol.
protected void
dispatch(final String cmd, final StringTokenizer tok, final File file, final String filename, final int lineNo)

Overrides com.jogamp.gluegen.procaddress.ProcAddressConfiguration.dispatch.

public Set<String>
getAliasedDocNames(final AliasedSymbol
the aliased symbol to retrieve the aliases
symbol
)

Overrides com.jogamp.gluegen.JavaConfiguration.getAliasedDocNames.

Return a set of aliased-name for comment in docs.
public boolean
getAllowNonGLExtensions()

If true, accept all non encapsulated defines and functions, as it is mandatory for GL declarations.

public boolean
getAutoUnifyExtensions()

Should we automatically ignore extensions that have already been fully subsumed into the OpenGL core namespace, and if they have not been, indicate which definition is not already in the core?

pack-priv GLEmitter.BufferObjectKind
getBufferObjectKind(final AliasedSymbol symbol)

Returns the kind of buffer object this function deals with, or null if none.

public boolean
getDropUniqVendorExtensions(final String extName)

shall the non unified (uniq) vendor extensions be dropped ?

public Set<String>
getExtensionsRenamedIntoCore()

Returns the OpenGL extensions that should have all of their constant definitions and functions renamed into the core namespace; for example, glGenFramebuffersEXT to glGenFramebuffers and GL_FRAMEBUFFER_EXT to GL_FRAMEBUFFER.

public BuildStaticGLInfo
getGLDocInfo()

Returns the information about the association between #defines, function symbols and the OpenGL extensions they are defined in.

This instance targets API documentation information, i.e. not influencing code generation.

public BuildStaticGLInfo
getGLSemInfo()

Returns the information about the association between #defines, function symbols and the OpenGL extensions they are defined in.

This instance targets semantic information, i.e. influences code generation.

public Set<String>
getRenamedJavaDocSymbols(final String aliasedName)

Returns a set of replaced javadoc names to the given aliasedName.

public boolean
public boolean
protected boolean
isIgnoredExtension(final String extensionName)

public List<String>
javaPrologueForMethod(final MethodBinding binding, final boolean forImplementingMethodCall, final boolean eraseBufferAndArrayTypes)

Overrides com.jogamp.gluegen.JavaConfiguration.javaPrologueForMethod.

Overrides javaPrologueForMethod in superclass and automatically generates prologue code for functions associated with buffer objects.
public void
public void
public void
parseGLDocHeaders(final GlueEmitterControls controls)

Parses any GL headers specified in the configuration file for the purpose of being able to ignore an extension at a time.

public void
parseGLSemHeaders(final GlueEmitterControls controls)

Parses any GL headers specified in the configuration file for the purpose of being able to ignore an extension at a time.

protected void
readBufferObjectKind(final StringTokenizer tok, final String filename, final int lineNo)

public boolean
shouldForceExtension(final AliasedSymbol symbol, final Set<String> symExtensionNames)

protected boolean
public boolean
shouldIgnoreInImpl(final AliasedSymbol
the symbolic aliased name to check for exclusion
symbol
)

Overrides com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInImpl.

Returns true if this aliased symbol should be ignored during glue code generation of implementation only.
public boolean
shouldIgnoreInInterface(final AliasedSymbol
the symbolic aliased name to check for exclusion
symbol
)

Overrides com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInInterface.

Returns true if this aliased symbol should be ignored during glue code generation of interfaces and implementation.
Inherited from com.jogamp.gluegen.procaddress.ProcAddressConfiguration:
addForceProcAddressGenaddLocalProcAddressCallingConventionconvertToFunctionPointerNameemitProcAddressTableforceProcAddressGengetForceProcAddressGengetLocalProcAddressCallingConventiongetLocalProcAddressCallingConvention4AllgetProcAddressTableExprisForceProcAddressGen4AllisLocalProcAddressCallingConvention4AllreadGetProcAddressTableExprreadLocalProcAddressCallingConventionreadProcAddressNameExprsetProcAddressNameExprsetProcAddressTableExprskipProcAddressGentableClassNametableClassPackage

Field Detail

allowNonGLExtensionsback to summary
private boolean allowNonGLExtensions
autoUnifyExtensionsback to summary
private boolean autoUnifyExtensions
bufferObjectKindsback to summary
private final Map<String, GLEmitter.BufferObjectKind> bufferObjectKinds
bufferObjectOnlyback to summary
private final Set<String> bufferObjectOnly
dropDocInfoback to summary
pack-priv boolean dropDocInfo
dropUniqVendorExtensionsback to summary
private final Set<String> dropUniqVendorExtensions
emitterback to summary
private final GLEmitter emitter
forcedExtensionsback to summary
private final Set<String> forcedExtensions
glDocHeadersback to summary
private final List<String> glDocHeaders
glDocInfoback to summary
private BuildStaticGLInfo glDocInfo
glSemHeadersback to summary
private final List<String> glSemHeaders
glSemInfoback to summary
private BuildStaticGLInfo glSemInfo
ignoredExtensionsback to summary
private final Set<String> ignoredExtensions
javaDocRenamedSymbolsback to summary
private final Map<String, Set<String>> javaDocRenamedSymbols
javaDocSymbolRenamesback to summary
private final Map<String, String> javaDocSymbolRenames
renameExtensionsIntoCoreback to summary
private final Set<String> renameExtensionsIntoCore

Constructor Detail

GLConfigurationback to summary
public GLConfiguration(final GLEmitter emitter)

Method Detail

addJavaDocSymbolRenameback to summary
public void addJavaDocSymbolRename(final String origName, final String newName)

Adds a javadoc rename directive for the given symbol.

addJavaSymbolRenameback to summary
public void addJavaSymbolRename(final String origName, final String newName)

Overrides com.jogamp.gluegen.JavaConfiguration.addJavaSymbolRename.

Doc from com.jogamp.gluegen.JavaConfiguration.addJavaSymbolRename.

Programmatically adds a rename directive for the given symbol.

Also adds a javadoc rename directive for the given symbol.

Annotations
@Override
dispatchback to summary
protected void dispatch(final String cmd, final StringTokenizer tok, final File file, final String filename, final int lineNo) throws IOException

Overrides com.jogamp.gluegen.procaddress.ProcAddressConfiguration.dispatch.

Annotations
@Override
getAliasedDocNamesback to summary
public Set<String> getAliasedDocNames(final AliasedSymbol symbol)

Overrides com.jogamp.gluegen.JavaConfiguration.getAliasedDocNames.

Doc from com.jogamp.gluegen.JavaConfiguration.getAliasedDocNames.

Return a set of aliased-name for comment in docs.

This is usually AliasedSymbol#addAliasedName(String), however an implementation may choose otherwise.

Parameters
symbol:AliasedSymbol

the aliased symbol to retrieve the aliases

Returns:Set<String>

set of aliased-names or null.

Annotations
@Override
getAllowNonGLExtensionsback to summary
public boolean getAllowNonGLExtensions()

If true, accept all non encapsulated defines and functions, as it is mandatory for GL declarations.

getAutoUnifyExtensionsback to summary
public boolean getAutoUnifyExtensions()

Should we automatically ignore extensions that have already been fully subsumed into the OpenGL core namespace, and if they have not been, indicate which definition is not already in the core?

getBufferObjectKindback to summary
pack-priv GLEmitter.BufferObjectKind getBufferObjectKind(final AliasedSymbol symbol)

Returns the kind of buffer object this function deals with, or null if none.

getDropUniqVendorExtensionsback to summary
public boolean getDropUniqVendorExtensions(final String extName)

shall the non unified (uniq) vendor extensions be dropped ?

getExtensionsRenamedIntoCoreback to summary
public Set<String> getExtensionsRenamedIntoCore()

Returns the OpenGL extensions that should have all of their constant definitions and functions renamed into the core namespace; for example, glGenFramebuffersEXT to glGenFramebuffers and GL_FRAMEBUFFER_EXT to GL_FRAMEBUFFER.

getGLDocInfoback to summary
public BuildStaticGLInfo getGLDocInfo()

Returns the information about the association between #defines, function symbols and the OpenGL extensions they are defined in.

This instance targets API documentation information, i.e. not influencing code generation.

GLDocInfo include GLSemInfo!

getGLSemInfoback to summary
public BuildStaticGLInfo getGLSemInfo()

Returns the information about the association between #defines, function symbols and the OpenGL extensions they are defined in.

This instance targets semantic information, i.e. influences code generation.

getRenamedJavaDocSymbolsback to summary
public Set<String> getRenamedJavaDocSymbols(final String aliasedName)

Returns a set of replaced javadoc names to the given aliasedName.

isBufferObjectFunctionback to summary
public boolean isBufferObjectFunction(final AliasedSymbol symbol)
isBufferObjectOnlyback to summary
public boolean isBufferObjectOnly(final String name)
isIgnoredExtensionback to summary
protected boolean isIgnoredExtension(final String extensionName)
javaPrologueForMethodback to summary
public List<String> javaPrologueForMethod(final MethodBinding binding, final boolean forImplementingMethodCall, final boolean eraseBufferAndArrayTypes)

Overrides com.jogamp.gluegen.JavaConfiguration.javaPrologueForMethod.

Overrides javaPrologueForMethod in superclass and automatically generates prologue code for functions associated with buffer objects.

Annotations
@Override
logIgnoresback to summary
public void logIgnores()

Overrides com.jogamp.gluegen.JavaConfiguration.logIgnores.

Annotations
@Override
logRenamesback to summary
public void logRenames()

Overrides com.jogamp.gluegen.JavaConfiguration.logRenames.

Annotations
@Override
parseGLDocHeadersback to summary
public void parseGLDocHeaders(final GlueEmitterControls controls) throws IOException

Parses any GL headers specified in the configuration file for the purpose of being able to ignore an extension at a time.

Targeting API documentation information, i.e. not influencing code generation.

parseGLSemHeadersback to summary
public void parseGLSemHeaders(final GlueEmitterControls controls) throws IOException

Parses any GL headers specified in the configuration file for the purpose of being able to ignore an extension at a time.

Targeting semantic information, i.e. influences code generation.

readBufferObjectKindback to summary
protected void readBufferObjectKind(final StringTokenizer tok, final String filename, final int lineNo)
shouldForceExtensionback to summary
public boolean shouldForceExtension(final AliasedSymbol symbol, final Set<String> symExtensionNames)
shouldIgnoreExtensionback to summary
protected boolean shouldIgnoreExtension(final AliasedSymbol symbol)
shouldIgnoreInImplback to summary
public boolean shouldIgnoreInImpl(final AliasedSymbol symbol)

Overrides com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInImpl.

Doc from com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInImpl.

Returns true if this aliased symbol should be ignored during glue code generation of implementation only.

Both, the current-name and all aliases shall be considered.

Implementation calls shouldIgnoreInImpl_Int(AliasedSymbol) and overriding implementations shall ensure its being called as well!

Implementation extends the exclusion query w/ the list of ignored extensions.

If passing the former, it calls down to shouldIgnoreInImpl_Int(AliasedSymbol).

Parameters
symbol:AliasedSymbol

the symbolic aliased name to check for exclusion

Annotations
@Override
shouldIgnoreInInterfaceback to summary
public boolean shouldIgnoreInInterface(final AliasedSymbol symbol)

Overrides com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInInterface.

Doc from com.jogamp.gluegen.JavaConfiguration.shouldIgnoreInInterface.

Returns true if this aliased symbol should be ignored during glue code generation of interfaces and implementation.

Both, the current-name and all aliases shall be considered.

Implementation calls shouldIgnoreInInterface_Int(AliasedSymbol) and overriding implementations shall ensure its being called as well!

Implementation extends the exclusion query w/ the list of ignored extensions.

If passing the former, it calls down to shouldIgnoreInInterface_Int(AliasedSymbol).

Parameters
symbol:AliasedSymbol

the symbolic aliased name to check for exclusion

Annotations
@Override