14#ifndef OSG_TEXTURERECTANGLE
15#define OSG_TEXTURERECTANGLE 1
19#ifndef GL_TEXTURE_RECTANGLE_NV
20#define GL_TEXTURE_RECTANGLE_NV 0x84F5
23#ifndef GL_TEXTURE_RECTANGLE
24#define GL_TEXTURE_RECTANGLE GL_TEXTURE_RECTANGLE_NV
43 setWrap(WRAP_S, CLAMP);
44 setWrap(WRAP_T, CLAMP);
46 setFilter(MIN_FILTER, LINEAR);
47 setFilter(MAG_FILTER, LINEAR);
49 setImage(image.
get());
74 virtual bool isDirty(
unsigned int contextID)
const {
return (_image.valid() && _image->getModifiedCount()!=_modifiedCount[contextID]); }
79 return _modifiedCount[contextID];
90 virtual const Image*
getImage(
unsigned int)
const {
return _image.get(); }
101 _textureWidth = width;
102 _textureHeight = height;
#define GL_TEXTURE_RECTANGLE
Definition GLDefines:406
Definition StateAttribute:77
Definition TextureRectangle:113
virtual void load(const TextureRectangle &, State &) const =0
virtual void subload(const TextureRectangle &, State &) const =0
Definition TextureRectangle:31
const SubloadCallback * getSubloadCallback() const
Definition TextureRectangle:121
void setImage(Image *image)
virtual int compare(const StateAttribute &rhs) const
buffered_value< unsigned int > ImageModifiedCount
Definition TextureRectangle:160
void setSubloadCallback(SubloadCallback *cb)
Definition TextureRectangle:119
TextureRectangle(Image *image)
unsigned int & getModifiedCount(unsigned int contextID) const
Definition TextureRectangle:76
void setTextureWidth(int width)
Definition TextureRectangle:105
void setTextureSize(int width, int height) const
Definition TextureRectangle:99
virtual void setImage(unsigned int, Image *image)
Definition TextureRectangle:84
virtual int getTextureWidth() const
Definition TextureRectangle:108
ref_ptr< Image > _image
Definition TextureRectangle:153
Image * getImage()
Definition TextureRectangle:68
void applyTexImage_subload(GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight, GLint &inInternalFormat) const
virtual bool isDirty(unsigned int contextID) const
Definition TextureRectangle:74
ref_ptr< SubloadCallback > _subloadCallback
Definition TextureRectangle:158
void allocateMipmap(State &state) const
void setImage(const ref_ptr< T > &image)
Definition TextureRectangle:65
ImageModifiedCount _modifiedCount
Definition TextureRectangle:161
TextureRectangle(const TextureRectangle &text, const CopyOp ©op=CopyOp::SHALLOW_COPY)
const Image * getImage() const
Definition TextureRectangle:71
TextureRectangle(const osg::ref_ptr< T > &image)
Definition TextureRectangle:39
void setTextureHeight(int height)
Definition TextureRectangle:106
virtual void apply(State &state) const
void applyTexImage_load(GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight) const
virtual int getTextureDepth() const
Definition TextureRectangle:110
void copyTexImage2D(State &state, int x, int y, int width, int height)
virtual Image * getImage(unsigned int)
Definition TextureRectangle:87
virtual GLenum getTextureTarget() const
Definition TextureRectangle:60
virtual int getTextureHeight() const
Definition TextureRectangle:109
META_StateAttribute(osg, TextureRectangle, TEXTURE)
void copyTexSubImage2D(State &state, int xoffset, int yoffset, int x, int y, int width, int height)
SubloadCallback * getSubloadCallback()
Definition TextureRectangle:120
virtual const Image * getImage(unsigned int) const
Definition TextureRectangle:90
virtual void computeInternalFormat() const
virtual unsigned int getNumImages() const
Definition TextureRectangle:93
GLsizei _textureHeight
Definition TextureRectangle:156
virtual ~TextureRectangle()
Definition buffered_value:27
T * get() const
Definition ref_ptr:117
author: Julien Valentin 2017 (mp3butcher@hotmail.com)
Definition AlphaFunc:19
#define OSG_EXPORT
Definition osg/Export:39