Inviwo 0.9.12-pre
Inviwo documentation
Loading...
Searching...
No Matches
inviwo::Texture Class Referenceabstract
Inheritance diagram for inviwo::Texture:

Public Member Functions

 Texture (GLenum target, GLFormat glFormat, GLenum filtering, const SwizzleMask &swizzleMask, std::span< const GLenum > wrapping, GLint level)
 Texture (GLenum target, GLint format, GLint internalformat, GLenum dataType, GLenum filtering, const SwizzleMask &swizzleMask, std::span< const GLenum > wrapping, GLint level)
 Texture (const Texture &other)
 Texture (Texture &&other)
Textureoperator= (const Texture &other)
Textureoperator= (Texture &&other)
virtual Textureclone () const =0
virtual size_t getNumberOfValues () const =0
virtual void upload (const void *data)=0
GLenum getFormat () const
GLenum getInternalFormat () const
GLenum getDataType () const
const DataFormatBasegetDataFormat () const
GLenum getFiltering () const
GLint getLevel () const
GLuint getNChannels () const
GLuint getSizeInBytes () const
void setSwizzleMask (SwizzleMask mask)
SwizzleMask getSwizzleMask () const
void setInterpolation (InterpolationType interpolation)
InterpolationType getInterpolation () const
void setWrapping (std::span< const GLenum > wrapping)
void getWrapping (std::span< GLenum > wrapping) const
void download (void *data) const
void downloadToPBO () const
void loadFromPBO (const Texture *)
Public Member Functions inherited from inviwo::TextureBase
 TextureBase (GLenum target)
 TextureBase (const TextureBase &other)
 TextureBase (TextureBase &&other)
TextureBaseoperator= (const TextureBase &other)
TextureBaseoperator= (TextureBase &&other)
GLuint getID () const
GLenum getTarget () const
void bind () const
void unbind () const
Public Member Functions inherited from inviwo::Observable< TextureObserver >
Observable< TextureObserver > & operator= (const Observable< TextureObserver > &other)
void addObserver (TextureObserver *observer)
void removeObserver (TextureObserver *observer)
virtual void startBlockingNotifications () override final
virtual void stopBlockingNotifications () override final

Protected Member Functions

void bindFromPBO () const
void bindToPBO () const
void unbindFromPBO () const
void unbindToPBO () const
void setupAsyncReadBackPBO () const
void setPBOAsInvalid ()
Protected Member Functions inherited from inviwo::Observable< TextureObserver >
void forEachObserver (C callback)
Protected Member Functions inherited from inviwo::ObservableInterface
virtual void addObserver (Observer *observer)=0
virtual void removeObserver (Observer *observer)=0
void addObservationHelper (Observer *observer)
void removeObservationHelper (Observer *observer)

Static Protected Member Functions

static size_t targetDims (GLenum target)
static GLuint channels (GLenum format)
static size_t dataTypeSize (GLenum dataType)

Protected Attributes

GLenum format_
GLenum internalformat_
GLenum dataType_
GLint level_
std::mutex syncMutex
GLsync syncObj = 0
Protected Attributes inherited from inviwo::TextureBase
GLuint id_
GLenum target_

Static Protected Attributes

static constexpr std::array< GLenum, 3 > wrapNames
static constexpr std::array< std::pair< GLenum, size_t >, 5 > targetToDim

Member Data Documentation

◆ targetToDim

std::array<std::pair<GLenum, size_t>, 5> inviwo::Texture::targetToDim
staticconstexprprotected
Initial value:
{
{{GL_TEXTURE_1D, 1},
{GL_TEXTURE_2D, 2},
{GL_TEXTURE_3D, 3},
{GL_TEXTURE_1D_ARRAY, 1},
{GL_TEXTURE_2D_ARRAY, 2}}}

◆ wrapNames

std::array<GLenum, 3> inviwo::Texture::wrapNames
staticconstexprprotected
Initial value:
{GL_TEXTURE_WRAP_S, GL_TEXTURE_WRAP_T,
GL_TEXTURE_WRAP_R}

The documentation for this class was generated from the following file:
  • texture.h