globjects::Texture Class Reference

Wraps OpenGL texture objects. A Texture provides both interfaces to bind them for the OpenGL pipeline: binding and bindless texture. Bindless textures are only available if the graphics driver supports them. More...

`#include <globjects/include/globjects/Texture.h>`

Inheritance diagram for globjects::Texture:

## Public Types

enum | BindlessImplementation { BindlessImplementation::DirectStateAccessARB, BindlessImplementation::DirectStateAccessEXT, BindlessImplementation::Legacy }
enum | StorageImplementation { StorageImplementation::DirectStateAccessARB, StorageImplementation::DirectStateAccessEXT, StorageImplementation::Legacy, StorageImplementation::Fallback }
Public Types inherited from globjects::Object
enum | NameImplementation { NameImplementation::DebugKHR, NameImplementation::Legacy }

## Public Member Functions

| Texture ()
| Texture (gl::GLenum target)
virtual void | accept (ObjectVisitor &visitor) override
void | bind () const
void | unbind () const
void | bindActive (gl::GLenum texture) const
void | bindActive (unsigned int index) const
void | unbindActive (gl::GLenum texture) const
void | unbindActive (unsigned int index) const
void | setParameter (gl::GLenum name, gl::GLenum value)
void | setParameter (gl::GLenum name, gl::GLint value)
void | setParameter (gl::GLenum name, gl::GLfloat value)
void | setParameter (gl::GLenum name, const glm::vec4 &value)
gl::GLint | getParameter (gl::GLenum pname) const
gl::GLint | getLevelParameter (gl::GLint level, gl::GLenum pname) const
void | getImage (gl::GLint level, gl::GLenum format, gl::GLenum type, gl::GLvoid *image) const
std::vector< unsigned char > | getImage (gl::GLint level, gl::GLenum format, gl::GLenum type) const
void | getCompressedImage (gl::GLint lod, gl::GLvoid *image) const
std::vector< unsigned char > | getCompressedImage (gl::GLint lod=0) const
gl::GLenum | target () const
void | image1D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | compressedImage1D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLint border, gl::GLsizei imageSize, const gl::GLvoid *data)
void | subImage1D (gl::GLint level, gl::GLint xOffset, gl::GLsizei width, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | image2D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | image2D (gl::GLint level, gl::GLenum internalFormat, const glm::ivec2 &size, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | compressedImage2D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLint border, gl::GLsizei imageSize, const gl::GLvoid *data)
void | compressedImage2D (gl::GLint level, gl::GLenum internalFormat, const glm::ivec2 &size, gl::GLint border, gl::GLsizei imageSize, const gl::GLvoid *data)
void | subImage2D (gl::GLint level, gl::GLint xOffset, gl::GLint yOffset, gl::GLsizei width, gl::GLsizei height, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | subImage2D (gl::GLint level, const glm::ivec2 &offset, const glm::ivec2 &size, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | image3D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | image3D (gl::GLint level, gl::GLenum internalFormat, const glm::ivec3 &size, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | compressedImage3D (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLint border, gl::GLsizei imageSize, const gl::GLvoid *data)
void | compressedImage3D (gl::GLint level, gl::GLenum internalFormat, const glm::ivec3 &size, gl::GLint border, gl::GLsizei imageSize, const gl::GLvoid *data)
void | subImage3D (gl::GLint level, gl::GLint xOffset, gl::GLint yOffset, gl::GLint zOffset, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | subImage3D (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | image2DMultisample (gl::GLsizei samples, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLboolean fixedSamplesLocations)
void | image2DMultisample (gl::GLsizei samples, gl::GLenum internalFormat, const glm::ivec2 &size, gl::GLboolean fixedSamplesLocations)
void | image3DMultisample (gl::GLsizei samples, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLboolean fixedSamplesLocations)
void | image3DMultisample (gl::GLsizei samples, gl::GLenum internalFormat, const glm::ivec3 &size, gl::GLboolean fixedSamplesLocations)
void | storage1D (gl::GLsizei levels, gl::GLenum internalFormat, gl::GLsizei width)
void | storage2D (gl::GLsizei levels, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height)
void | storage2D (gl::GLsizei levels, gl::GLenum internalFormat, const glm::ivec2 &size)
void | storage3D (gl::GLsizei levels, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth)
void | storage3D (gl::GLsizei levels, gl::GLenum internalFormat, const glm::ivec3 &size)
void | textureView (gl::GLuint originalTexture, gl::GLenum internalFormat, gl::GLuint minLevel, gl::GLuint numLevels, gl::GLuint minLayer, gl::GLuint numLayers)
void | texBuffer (gl::GLenum internalFormat, Buffer *buffer)
void | texBufferRange (gl::GLenum internalFormat, Buffer *buffer, gl::GLintptr offset, gl::GLsizeiptr size)
void | clearImage (gl::GLint level, gl::GLenum format, gl::GLenum type, const void *data)
void | clearImage (gl::GLint level, gl::GLenum format, gl::GLenum type, const glm::vec4 &value)
void | clearImage (gl::GLint level, gl::GLenum format, gl::GLenum type, const glm::ivec4 &value)
void | clearImage (gl::GLint level, gl::GLenum format, gl::GLenum type, const glm::uvec4 &value)
void | clearSubImage (gl::GLint level, gl::GLint xOffset, gl::GLint yOffset, gl::GLint zOffset, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLenum format, gl::GLenum type, const void *data)
void | clearSubImage (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLenum format, gl::GLenum type, const void *data)
void | clearSubImage (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLenum format, gl::GLenum type, const glm::vec4 &value)
void | clearSubImage (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLenum format, gl::GLenum type, const glm::ivec4 &value)
void | clearSubImage (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLenum format, gl::GLenum type, const glm::uvec4 &value)
void | invalidateImage (gl::GLint level) const
void | invalidateSubImage (gl::GLint level, gl::GLint xoffset, gl::GLint yoffset, gl::GLint zoffset, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth)
void | invalidateSubImage (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 size)
void | bindImageTexture (gl::GLuint unit, gl::GLint level, gl::GLboolean layered, gl::GLint layer, gl::GLenum access, gl::GLenum format) const
void | generateMipmap ()
void | cubeMapImage (gl::GLint level, gl::GLenum internalFormat, gl::GLsizei width, gl::GLsizei height, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
void | cubeMapImage (gl::GLint level, gl::GLenum internalFormat, const glm::ivec2 &size, gl::GLint border, gl::GLenum format, gl::GLenum type, const gl::GLvoid *data)
TextureHandle | textureHandle () const
TextureHandle | textureHandle (Sampler *sampler) const
void | pageCommitment (gl::GLint level, gl::GLint xOffset, gl::GLint yOffset, gl::GLint zOffset, gl::GLsizei width, gl::GLsizei height, gl::GLsizei depth, gl::GLboolean commit) const
void | pageCommitment (gl::GLint level, const glm::ivec3 &offset, const glm::ivec3 &size, gl::GLboolean commit) const
virtual gl::GLenum | objectType () const override
Public Member Functions inherited from globjects::Object
gl::GLuint | id () const
std::string | name () const
void | setName (const std::string &name)
bool | hasName () const
bool | isDefault () const
void | detach ()
Public Member Functions inherited from globjects::Referenced
| Referenced ()
void | ref () const
void | unref () const
int | refCounter () const
Public Member Functions inherited from globjects::HeapOnly
| HeapOnly ()
void | destroy () const

## Static Public Member Functions

static void | hintBindlessImplementation (BindlessImplementation impl)
static void | hintStorageImplementation (StorageImplementation impl)
static Texture * | fromId (gl::GLuint id, gl::GLenum target)
static Texture * | createDefault ()
static Texture * | createDefault (gl::GLenum target)
static void | unbind (gl::GLenum target)
static void | unbindImageTexture (gl::GLuint unit)
Static Public Member Functions inherited from globjects::Object
static void | hintNameImplementation (NameImplementation impl)

## Protected Member Functions

| Texture (IDResource *resource, gl::GLenum target)
virtual | ~Texture ()
Protected Member Functions inherited from globjects::Object
| Object (IDResource *resource)
virtual | ~Object ()
Protected Member Functions inherited from globjects::Referenced
virtual | ~Referenced ()
Protected Member Functions inherited from globjects::HeapOnly
virtual | ~HeapOnly ()

## Protected Attributes

gl::GLenum | m_target
Protected Attributes inherited from globjects::Object
IDResource * | m_resource
void * | m_objectLabelState

## Detailed Description

Wraps OpenGL texture objects. A Texture provides both interfaces to bind them for the OpenGL pipeline: binding and bindless texture. Bindless textures are only available if the graphics driver supports them.

See also
  http://www.opengl.org/wiki/Texture
  http://www.opengl.org/registry/specs/NV/bindless_texture.txt

## Member Enumeration Documentation

## BindlessImplementation

enum globjects::Texture::BindlessImplementation

strong

Enumerator
DirectStateAccessARB |
DirectStateAccessEXT |
Legacy |

## StorageImplementation

enum globjects::Texture::StorageImplementation

strong

Enumerator
DirectStateAccessARB |
DirectStateAccessEXT |
Legacy |
Fallback |

## Constructor & Destructor Documentation

## Texture() [1/3]

globjects::Texture::Texture | ( |  | ) |

## Texture() [2/3]

globjects::Texture::Texture | ( | gl::GLenum | target | ) |

## Texture() [3/3]

globjects::Texture::Texture | ( | IDResource * | resource,
|  | gl::GLenum | target
| ) |  |

protected

## ~Texture()

virtual globjects::Texture::~Texture | ( |  | ) |

protected virtual

## Member Function Documentation

## hintBindlessImplementation()

static void globjects::Texture::hintBindlessImplementation | ( | BindlessImplementation | impl | ) |

static

## hintStorageImplementation()

static void globjects::Texture::hintStorageImplementation | ( | StorageImplementation | impl | ) |

static

## fromId()

static Texture* globjects::Texture::fromId | ( | gl::GLuint | id,
|  | gl::GLenum | target
| ) |  |

static

## createDefault() [1/2]

static Texture* globjects::Texture::createDefault | ( |  | ) |

static

## createDefault() [2/2]

static Texture* globjects::Texture::createDefault | ( | gl::GLenum | target | ) |

static

## accept()

virtual void globjects::Texture::accept | ( | ObjectVisitor & | visitor | ) |

override virtual

Implements globjects::Object.

## bind()

void globjects::Texture::bind | ( |  | ) | const

## unbind() [1/2]

void globjects::Texture::unbind | ( |  | ) | const

## unbind() [2/2]

static void globjects::Texture::unbind | ( | gl::GLenum | target | ) |

static

## bindActive() [1/2]

void globjects::Texture::bindActive | ( | gl::GLenum | texture | ) | const

## bindActive() [2/2]

void globjects::Texture::bindActive | ( | unsigned int | index | ) | const

## unbindActive() [1/2]

void globjects::Texture::unbindActive | ( | gl::GLenum | texture | ) | const

## unbindActive() [2/2]

void globjects::Texture::unbindActive | ( | unsigned int | index | ) | const

## setParameter() [1/4]

void globjects::Texture::setParameter | ( | gl::GLenum | name,
|  | gl::GLenum | value
| ) |  |

## setParameter() [2/4]

void globjects::Texture::setParameter | ( | gl::GLenum | name,
|  | gl::GLint | value
| ) |  |

## setParameter() [3/4]

void globjects::Texture::setParameter | ( | gl::GLenum | name,
|  | gl::GLfloat | value
| ) |  |

## setParameter() [4/4]

void globjects::Texture::setParameter | ( | gl::GLenum | name,
|  | const glm::vec4 & | value
| ) |  |

## getParameter()

gl::GLint globjects::Texture::getParameter | ( | gl::GLenum | pname | ) | const

## getLevelParameter()

gl::GLint globjects::Texture::getLevelParameter | ( | gl::GLint | level,
|  | gl::GLenum | pname
| ) |  | const

## getImage() [1/2]

void globjects::Texture::getImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | gl::GLvoid * | image
| ) |  | const

## getImage() [2/2]

std::vector<unsigned char> globjects::Texture::getImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type
| ) |  | const

## getCompressedImage() [1/2]

void globjects::Texture::getCompressedImage | ( | gl::GLint | lod,
|  | gl::GLvoid * | image
| ) |  | const

## getCompressedImage() [2/2]

std::vector<unsigned char> globjects::Texture::getCompressedImage | ( | gl::GLint | lod = `0` | ) | const

## target()

gl::GLenum globjects::Texture::target | ( |  | ) | const

## image1D()

void globjects::Texture::image1D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## compressedImage1D()

void globjects::Texture::compressedImage1D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLint | border,
|  | gl::GLsizei | imageSize,
|  | const gl::GLvoid * | data
| ) |  |

## subImage1D()

void globjects::Texture::subImage1D | ( | gl::GLint | level,
|  | gl::GLint | xOffset,
|  | gl::GLsizei | width,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## image2D() [1/2]

void globjects::Texture::image2D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## image2D() [2/2]

void globjects::Texture::image2D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec2 & | size,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## compressedImage2D() [1/2]

void globjects::Texture::compressedImage2D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLint | border,
|  | gl::GLsizei | imageSize,
|  | const gl::GLvoid * | data
| ) |  |

## compressedImage2D() [2/2]

void globjects::Texture::compressedImage2D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec2 & | size,
|  | gl::GLint | border,
|  | gl::GLsizei | imageSize,
|  | const gl::GLvoid * | data
| ) |  |

## subImage2D() [1/2]

void globjects::Texture::subImage2D | ( | gl::GLint | level,
|  | gl::GLint | xOffset,
|  | gl::GLint | yOffset,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## subImage2D() [2/2]

void globjects::Texture::subImage2D | ( | gl::GLint | level,
|  | const glm::ivec2 & | offset,
|  | const glm::ivec2 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## image3D() [1/2]

void globjects::Texture::image3D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## image3D() [2/2]

void globjects::Texture::image3D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec3 & | size,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## compressedImage3D() [1/2]

void globjects::Texture::compressedImage3D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLint | border,
|  | gl::GLsizei | imageSize,
|  | const gl::GLvoid * | data
| ) |  |

## compressedImage3D() [2/2]

void globjects::Texture::compressedImage3D | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec3 & | size,
|  | gl::GLint | border,
|  | gl::GLsizei | imageSize,
|  | const gl::GLvoid * | data
| ) |  |

## subImage3D() [1/2]

void globjects::Texture::subImage3D | ( | gl::GLint | level,
|  | gl::GLint | xOffset,
|  | gl::GLint | yOffset,
|  | gl::GLint | zOffset,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## subImage3D() [2/2]

void globjects::Texture::subImage3D | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## image2DMultisample() [1/2]

void globjects::Texture::image2DMultisample | ( | gl::GLsizei | samples,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLboolean | fixedSamplesLocations
| ) |  |

## image2DMultisample() [2/2]

void globjects::Texture::image2DMultisample | ( | gl::GLsizei | samples,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec2 & | size,
|  | gl::GLboolean | fixedSamplesLocations
| ) |  |

## image3DMultisample() [1/2]

void globjects::Texture::image3DMultisample | ( | gl::GLsizei | samples,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLboolean | fixedSamplesLocations
| ) |  |

## image3DMultisample() [2/2]

void globjects::Texture::image3DMultisample | ( | gl::GLsizei | samples,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec3 & | size,
|  | gl::GLboolean | fixedSamplesLocations
| ) |  |

## storage1D()

void globjects::Texture::storage1D | ( | gl::GLsizei | levels,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width
| ) |  |

## storage2D() [1/2]

void globjects::Texture::storage2D | ( | gl::GLsizei | levels,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height
| ) |  |

## storage2D() [2/2]

void globjects::Texture::storage2D | ( | gl::GLsizei | levels,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec2 & | size
| ) |  |

## storage3D() [1/2]

void globjects::Texture::storage3D | ( | gl::GLsizei | levels,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth
| ) |  |

## storage3D() [2/2]

void globjects::Texture::storage3D | ( | gl::GLsizei | levels,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec3 & | size
| ) |  |

## textureView()

void globjects::Texture::textureView | ( | gl::GLuint | originalTexture,
|  | gl::GLenum | internalFormat,
|  | gl::GLuint | minLevel,
|  | gl::GLuint | numLevels,
|  | gl::GLuint | minLayer,
|  | gl::GLuint | numLayers
| ) |  |

## texBuffer()

void globjects::Texture::texBuffer | ( | gl::GLenum | internalFormat,
|  | Buffer * | buffer
| ) |  |

## texBufferRange()

void globjects::Texture::texBufferRange | ( | gl::GLenum | internalFormat,
|  | Buffer * | buffer,
|  | gl::GLintptr | offset,
|  | gl::GLsizeiptr | size
| ) |  |

## clearImage() [1/4]

void globjects::Texture::clearImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const void * | data
| ) |  |

## clearImage() [2/4]

void globjects::Texture::clearImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::vec4 & | value
| ) |  |

## clearImage() [3/4]

void globjects::Texture::clearImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::ivec4 & | value
| ) |  |

## clearImage() [4/4]

void globjects::Texture::clearImage | ( | gl::GLint | level,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::uvec4 & | value
| ) |  |

## clearSubImage() [1/5]

void globjects::Texture::clearSubImage | ( | gl::GLint | level,
|  | gl::GLint | xOffset,
|  | gl::GLint | yOffset,
|  | gl::GLint | zOffset,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const void * | data
| ) |  |

## clearSubImage() [2/5]

void globjects::Texture::clearSubImage | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const void * | data
| ) |  |

## clearSubImage() [3/5]

void globjects::Texture::clearSubImage | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::vec4 & | value
| ) |  |

## clearSubImage() [4/5]

void globjects::Texture::clearSubImage | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::ivec4 & | value
| ) |  |

## clearSubImage() [5/5]

void globjects::Texture::clearSubImage | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const glm::uvec4 & | value
| ) |  |

## invalidateImage()

void globjects::Texture::invalidateImage | ( | gl::GLint | level | ) | const

## invalidateSubImage() [1/2]

void globjects::Texture::invalidateSubImage | ( | gl::GLint | level,
|  | gl::GLint | xoffset,
|  | gl::GLint | yoffset,
|  | gl::GLint | zoffset,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth
| ) |  |

## invalidateSubImage() [2/2]

void globjects::Texture::invalidateSubImage | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 | size
| ) |  |

## bindImageTexture()

void globjects::Texture::bindImageTexture | ( | gl::GLuint | unit,
|  | gl::GLint | level,
|  | gl::GLboolean | layered,
|  | gl::GLint | layer,
|  | gl::GLenum | access,
|  | gl::GLenum | format
| ) |  | const

## unbindImageTexture()

static void globjects::Texture::unbindImageTexture | ( | gl::GLuint | unit | ) |

static

## generateMipmap()

void globjects::Texture::generateMipmap | ( |  | ) |

## cubeMapImage() [1/2]

void globjects::Texture::cubeMapImage | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## cubeMapImage() [2/2]

void globjects::Texture::cubeMapImage | ( | gl::GLint | level,
|  | gl::GLenum | internalFormat,
|  | const glm::ivec2 & | size,
|  | gl::GLint | border,
|  | gl::GLenum | format,
|  | gl::GLenum | type,
|  | const gl::GLvoid * | data
| ) |  |

## textureHandle() [1/2]

TextureHandle globjects::Texture::textureHandle | ( |  | ) | const

## textureHandle() [2/2]

TextureHandle globjects::Texture::textureHandle | ( | Sampler * | sampler | ) | const

## pageCommitment() [1/2]

void globjects::Texture::pageCommitment | ( | gl::GLint | level,
|  | gl::GLint | xOffset,
|  | gl::GLint | yOffset,
|  | gl::GLint | zOffset,
|  | gl::GLsizei | width,
|  | gl::GLsizei | height,
|  | gl::GLsizei | depth,
|  | gl::GLboolean | commit
| ) |  | const

## pageCommitment() [2/2]

void globjects::Texture::pageCommitment | ( | gl::GLint | level,
|  | const glm::ivec3 & | offset,
|  | const glm::ivec3 & | size,
|  | gl::GLboolean | commit
| ) |  | const

## objectType()

virtual gl::GLenum globjects::Texture::objectType | ( |  | ) | const

override virtual

Implements globjects::Object.

## Member Data Documentation

## m_target

gl::GLenum globjects::Texture::m_target

protected

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

- Texture.h