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 interfaceFBObject.Attachment.StorageDefinitionInterface abstraction to allow custom definitions ofFBObject.Attachment's storage.static classFBObject.Attachment.Type
-
Field Summary
Fields Modifier and Type Field Description intformatimmutable the internal formatFBObject.Attachment.Typetypeimmutable 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 booleanequals(Object o)voidformatToGLCapabilities(GLCapabilities caps, boolean rgba8Avail)Writes the internal format to the given GLCapabilities object.abstract voidfree(GL gl)Releases the attachment if initialized, i.e.intgetFormat()immutable internal format of attachmentintgetHeight()height of attachmentintgetName()buffer name [1..max], maybe a texture or renderbuffer name, depending on type.static FBObject.Attachment.TypegetType(int attachmentPoint, int maxColorAttachments)intgetWidth()width of attachmentinthashCode()abstract booleaninitialize(GL gl)Initializes the attachment and set it's parameter, if uninitialized, i.e.voidsetStorageDefinition(FBObject.Attachment.StorageDefinition sd)Override implementation defaultFBObject.Attachment.StorageDefinitionStringtoString()
-
-
-
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:
trueif 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)
-
-