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 enum 
     
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final int
    immutable the internal format
    immutable type [#COLOR, #DEPTH, #STENCIL, #COLOR_TEXTURE, #DEPTH_TEXTURE, #STENCIL_TEXTURE ]
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
    Comparison by type, format, width, height and name.
    final 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.
    final int
    immutable internal format of attachment
    final int
    height of attachment
    final int
    buffer name [1..max], maybe a texture or renderbuffer name, depending on type.
    getType(int attachmentPoint, int maxColorAttachments)
     
    final int
    width of attachment
    int
    Hashed by type, format, width, height and name.
    abstract boolean
    Initializes the attachment and set it's parameter, if uninitialized, i.e.
     

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait
  • Field Details

    • 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 Details

    • formatToGLCapabilities

      public final void formatToGLCapabilities(GLCapabilities caps, boolean rgba8Avail)
      Writes the internal format to the given GLCapabilities object.
      Parameters:
      caps - the destination for format bits
      rgba8Avail - 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 is zero.
                  final boolean init = 0 == name;
                  if( init ) {
                      do init ..
                  }
                  return init;
       
      Returns:
      true if newly initialized, otherwise false.
      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 not zero.
                  if(0 != name) {
                      do free ..
                      name = 0;
                  }
       
      Throws:
      GLException - if buffer release fails.
    • equals

      public boolean equals(Object o)

      Comparison by type, format, width, height and name.

      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()

      Hashed by type, format, width, height and name.

      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object
    • getType

      public static FBObject.Attachment.Type getType(int attachmentPoint, int maxColorAttachments)