Package com.jogamp.opengl
Class FBObject.Attachment
- java.lang.Object
-
- com.jogamp.opengl.FBObject.Attachment
-
- Direct Known Subclasses:
FBObject.RenderAttachment
,FBObject.TextureAttachment
- Enclosing class:
- FBObject
public abstract static class FBObject.Attachment extends Object
Common super class of all FBO attachments
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static interface
FBObject.Attachment.StorageDefinition
Interface abstraction to allow custom definitions ofFBObject.Attachment
's storage.static class
FBObject.Attachment.Type
-
Field Summary
Fields Modifier and Type Field Description int
format
immutable the internal formatFBObject.Attachment.Type
type
immutable type [#COLOR
,#DEPTH
,#STENCIL
,#COLOR_TEXTURE
,#DEPTH_TEXTURE
,#STENCIL_TEXTURE
]
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description boolean
equals(Object o)
void
formatToGLCapabilities(GLCapabilities caps, boolean rgba8Avail)
Writes the internal format to the given GLCapabilities object.abstract void
free(GL gl)
Releases the attachment if initialized, i.e.int
getFormat()
immutable internal format of attachmentint
getHeight()
height of attachmentint
getName()
buffer name [1..max], maybe a texture or renderbuffer name, depending on type.static FBObject.Attachment.Type
getType(int attachmentPoint, int maxColorAttachments)
int
getWidth()
width of attachmentint
hashCode()
abstract boolean
initialize(GL gl)
Initializes the attachment and set it's parameter, if uninitialized, i.e.void
setStorageDefinition(FBObject.Attachment.StorageDefinition sd)
Override implementation defaultFBObject.Attachment.StorageDefinition
String
toString()
-
-
-
Field Detail
-
type
public final FBObject.Attachment.Type type
immutable type [#COLOR
,#DEPTH
,#STENCIL
,#COLOR_TEXTURE
,#DEPTH_TEXTURE
,#STENCIL_TEXTURE
]
-
format
public final int format
immutable the internal format
-
-
Method Detail
-
setStorageDefinition
public void setStorageDefinition(FBObject.Attachment.StorageDefinition sd)
Override implementation defaultFBObject.Attachment.StorageDefinition
-
formatToGLCapabilities
public final void formatToGLCapabilities(GLCapabilities caps, boolean rgba8Avail)
Writes the internal format to the given GLCapabilities object.- Parameters:
caps
- the destination for format bitsrgba8Avail
- whether rgba8 is available
-
getFormat
public final int getFormat()
immutable internal format of attachment
-
getWidth
public final int getWidth()
width of attachment
-
getHeight
public final int getHeight()
height of attachment
-
getName
public final int getName()
buffer name [1..max], maybe a texture or renderbuffer name, depending on type.
-
initialize
public abstract boolean initialize(GL gl) throws GLException
Initializes the attachment and set it's parameter, if uninitialized, i.e. name iszero
.final boolean init = 0 == name; if( init ) { do init .. } return init;
- Returns:
true
if newly initialized, otherwisefalse
.- Throws:
GLException
- if buffer generation or setup fails. The just created buffer name will be deleted in this case.
-
free
public abstract void free(GL gl) throws GLException
Releases the attachment if initialized, i.e. name is notzero
.if(0 != name) { do free .. name = 0; }
- Throws:
GLException
- if buffer release fails.
-
getType
public static FBObject.Attachment.Type getType(int attachmentPoint, int maxColorAttachments)
-
-