JOGL v2.6.0-rc-20250712
JOGL, High-Performance Graphics Binding for Java™ (public API).
com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter Class Referenceabstract

Emits a Java source file that represents one element of the composable pipeline. More...

Inheritance diagram for com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter:
Collaboration diagram for com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter:

Public Member Functions

void emit (final Iterator< PlainMethod > methodsToWrap) throws IOException
 

Protected Member Functions

String getDownstreamObjectName ()
 Get the name of the object through which API calls should be routed. More...
 
String getPrologObjectNameOpt ()
 Get the name of the object which shall be called as a prolog. More...
 
void emitMethodDocComment (final PrintWriter output, final Method m)
 
void emitSignature (final PrintWriter output, final Method m)
 
void emitBody (final PrintWriter output, final PlainMethod pm)
 
String getArgListAsString (final Method m, final boolean includeArgTypes, final boolean includeArgNames)
 
String getBaseInterfaceName ()
 The name of the class around which this pipeline is being composed. More...
 
abstract String getOutputName ()
 Get the output name for this pipeline class. More...
 
void preMethodEmissionHook (final PrintWriter output)
 Called after the class headers have been generated, but before any method wrappers have been generated. More...
 
abstract void constructorHook (PrintWriter output)
 Emits the constructor for the pipeline; called after the preMethodEmissionHook. More...
 
void postMethodEmissionHook (final PrintWriter output)
 Called after the method wrappers have been generated, but before the closing parenthesis of the class is emitted. More...
 
abstract void preDownstreamCallHook (PrintWriter output, PlainMethod pm)
 Called before the pipeline routes the call to the downstream object. More...
 
abstract boolean hasPreDownstreamCallHook (PlainMethod pm)
 
abstract void postDownstreamCallHook (PrintWriter output, PlainMethod pm)
 Called after the pipeline has routed the call to the downstream object, but before the calling function exits or returns a value. More...
 
abstract boolean hasPostDownstreamCallHook (PlainMethod pm)
 
abstract int getMode ()
 
abstract boolean emptyMethodAllowed ()
 
abstract boolean emptyDownstreamAllowed ()
 
abstract void emitClassDocComment (PrintWriter output)
 Emit a Javadoc comment for this pipeline class. More...
 
void emitGLIsMethodBody (final PrintWriter output, final PlainMethod plainMethod)
 Emits one of the isGL* methods. More...
 
void emitGLGetMethodBody (final PrintWriter output, final PlainMethod plainMethod)
 Emits one of the getGL* methods. More...
 
void emitSyntheticGLMethods (final PrintWriter output)
 Emits all synthetic GL* methods, but not isGL* nor getGL*. More...
 

Protected Attributes

String basePackage
 
String baseName
 
String downstreamPackage
 
String downstreamName
 
String prologPackageOpt = null
 
String prologNameOpt = null
 
String outputDir
 
String outputPackage
 
Class<?> baseInterfaceClass
 
Class<?> prologClassOpt = null
 
Class<?> downstreamClass
 

Detailed Description

Emits a Java source file that represents one element of the composable pipeline.

Definition at line 343 of file BuildComposablePipeline.java.

Member Function Documentation

◆ constructorHook()

abstract void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.constructorHook ( PrintWriter  output)
abstractprotected

Emits the constructor for the pipeline; called after the preMethodEmissionHook.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ emit()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emit ( final Iterator< PlainMethod methodsToWrap) throws IOException

Definition at line 383 of file BuildComposablePipeline.java.

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

◆ emitBody()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitBody ( final PrintWriter  output,
final PlainMethod  pm 
)
protected

Definition at line 483 of file BuildComposablePipeline.java.

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

◆ emitClassDocComment()

abstract void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitClassDocComment ( PrintWriter  output)
abstractprotected

Emit a Javadoc comment for this pipeline class.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ emitGLGetMethodBody()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitGLGetMethodBody ( final PrintWriter  output,
final PlainMethod  plainMethod 
)
protected

Emits one of the getGL* methods.

Definition at line 680 of file BuildComposablePipeline.java.

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

◆ emitGLIsMethodBody()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitGLIsMethodBody ( final PrintWriter  output,
final PlainMethod  plainMethod 
)
protected

Emits one of the isGL* methods.

Definition at line 655 of file BuildComposablePipeline.java.

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

◆ emitMethodDocComment()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitMethodDocComment ( final PrintWriter  output,
final Method  m 
)
protected

Definition at line 473 of file BuildComposablePipeline.java.

Here is the caller graph for this function:

◆ emitSignature()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitSignature ( final PrintWriter  output,
final Method  m 
)
protected

Definition at line 476 of file BuildComposablePipeline.java.

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

◆ emitSyntheticGLMethods()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emitSyntheticGLMethods ( final PrintWriter  output)
protected

Emits all synthetic GL* methods, but not isGL* nor getGL*.

Definition at line 702 of file BuildComposablePipeline.java.

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

◆ emptyDownstreamAllowed()

abstract boolean com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emptyDownstreamAllowed ( )
abstractprotected

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ emptyMethodAllowed()

abstract boolean com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.emptyMethodAllowed ( )
abstractprotected

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ getArgListAsString()

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getArgListAsString ( final Method  m,
final boolean  includeArgTypes,
final boolean  includeArgNames 
)
protected

Definition at line 560 of file BuildComposablePipeline.java.

Here is the caller graph for this function:

◆ getBaseInterfaceName()

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getBaseInterfaceName ( )
protected

The name of the class around which this pipeline is being composed.

E.g., if this pipeline was constructed with "java.util.Set" as the baseInterfaceClassName, then this method will return "Set".

Definition at line 591 of file BuildComposablePipeline.java.

◆ getDownstreamObjectName()

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getDownstreamObjectName ( )
protected

Get the name of the object through which API calls should be routed.

Definition at line 461 of file BuildComposablePipeline.java.

Here is the caller graph for this function:

◆ getMode()

abstract int com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getMode ( )
abstractprotected

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ getOutputName()

abstract String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getOutputName ( )
abstractprotected

Get the output name for this pipeline class.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ getPrologObjectNameOpt()

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.getPrologObjectNameOpt ( )
protected

Get the name of the object which shall be called as a prolog.

Definition at line 466 of file BuildComposablePipeline.java.

Here is the caller graph for this function:

◆ hasPostDownstreamCallHook()

abstract boolean com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.hasPostDownstreamCallHook ( PlainMethod  pm)
abstractprotected

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ hasPreDownstreamCallHook()

abstract boolean com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.hasPreDownstreamCallHook ( PlainMethod  pm)
abstractprotected

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ postDownstreamCallHook()

abstract void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.postDownstreamCallHook ( PrintWriter  output,
PlainMethod  pm 
)
abstractprotected

Called after the pipeline has routed the call to the downstream object, but before the calling function exits or returns a value.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ postMethodEmissionHook()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.postMethodEmissionHook ( final PrintWriter  output)
protected

Called after the method wrappers have been generated, but before the closing parenthesis of the class is emitted.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Definition at line 615 of file BuildComposablePipeline.java.

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

◆ preDownstreamCallHook()

abstract void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.preDownstreamCallHook ( PrintWriter  output,
PlainMethod  pm 
)
abstractprotected

Called before the pipeline routes the call to the downstream object.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Here is the caller graph for this function:

◆ preMethodEmissionHook()

void com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.preMethodEmissionHook ( final PrintWriter  output)
protected

Called after the class headers have been generated, but before any method wrappers have been generated.

Reimplemented in com.jogamp.gluegen.opengl.BuildComposablePipeline.CustomPipeline, com.jogamp.gluegen.opengl.BuildComposablePipeline.DebugPipeline, and com.jogamp.gluegen.opengl.BuildComposablePipeline.TracePipeline.

Definition at line 602 of file BuildComposablePipeline.java.

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

Member Data Documentation

◆ baseInterfaceClass

Class<?> com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.baseInterfaceClass
protected

Definition at line 354 of file BuildComposablePipeline.java.

◆ baseName

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.baseName
protected

Definition at line 347 of file BuildComposablePipeline.java.

◆ basePackage

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.basePackage
protected

Definition at line 346 of file BuildComposablePipeline.java.

◆ downstreamClass

Class<?> com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.downstreamClass
protected

Definition at line 356 of file BuildComposablePipeline.java.

◆ downstreamName

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.downstreamName
protected

Definition at line 349 of file BuildComposablePipeline.java.

◆ downstreamPackage

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.downstreamPackage
protected

Definition at line 348 of file BuildComposablePipeline.java.

◆ outputDir

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.outputDir
protected

Definition at line 352 of file BuildComposablePipeline.java.

◆ outputPackage

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.outputPackage
protected

Definition at line 353 of file BuildComposablePipeline.java.

◆ prologClassOpt

Class<?> com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.prologClassOpt = null
protected

Definition at line 355 of file BuildComposablePipeline.java.

◆ prologNameOpt

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.prologNameOpt = null
protected

Definition at line 351 of file BuildComposablePipeline.java.

◆ prologPackageOpt

String com.jogamp.gluegen.opengl.BuildComposablePipeline.PipelineEmitter.prologPackageOpt = null
protected

Definition at line 350 of file BuildComposablePipeline.java.


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