24 #ifndef PXR_IMAGING_GLF_TEXTURE_H
25 #define PXR_IMAGING_GLF_TEXTURE_H
47 #define GLF_TEXTURE_TOKENS \
79 , textureId(textureId)
80 , samplerId(samplerId) { }
101 GLuint samplerId = 0) = 0;
163 size_t _memoryRequested;
170 virtual GlfTextureRefPtr
New(
const TfToken& texturePath,
176 #endif // PXR_IMAGING_GLF_TEXTURE_H
TF_DECLARE_PUBLIC_TOKENS(GlfTextureTokens, GLF_API, GLF_TEXTURE_TOKENS)
GLF_API size_t GetContentsID() const
virtual GLF_API void _OnMemoryRequestedDirty()
GLF_API HioImage::ImageOriginLocation GetOriginLocation() const
virtual BindingVector GetBindings(TfToken const &identifier, GLuint samplerId=0)=0
Base class of all factory types.
GLF_API void _UpdateContentsID()
virtual VtDictionary GetTextureInfo(bool forceLoad)=0
static GLF_API size_t GetTextureMemoryAllocated()
static reporting function
TF_DECLARE_WEAK_AND_REF_PTRS(GlfTexture)
GLF_API size_t GetMemoryRequested() const
Amount of memory the user wishes to allocate to the texture.
virtual GLF_API bool IsMinFilterSupported(GLenum filter)
GLuint const GLchar * name
GlfTexture & operator=(const GlfTexture &)=delete
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
virtual GLF_API bool IsMagFilterSupported(GLenum filter)
GLF_API size_t GetMemoryUsed() const
Amount of memory used to store the texture.
#define PXR_NAMESPACE_CLOSE_SCOPE
virtual GLuint GetGlTextureName()=0
Returns the OpenGl texture name for the texture.
virtual GlfTextureRefPtr New(const TfToken &texturePath, HioImage::ImageOriginLocation originLocation) const =0
virtual GLF_API ~GlfTexture()=0
GLF_API void _SetMemoryUsed(size_t size)
GLF_API bool IsOriginLowerLeft() const
#define GLF_TEXTURE_TOKENS
std::vector< Binding > BindingVector
Binding(TfToken name, TfToken role, GLenum target, GLuint textureId, GLuint samplerId)
GLF_API void SetMemoryRequested(size_t targetMemory)
Specify the amount of memory the user wishes to allocate to the texture.
GLint GLint GLint GLint GLint GLint GLint GLbitfield GLenum filter