Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | File List | Namespace Members | Class Members | File Members | Related Pages

osg::TextureRectangle Class Reference

Texture state class which encapsulates OpenGL texture functionality. More...

Inheritance diagram for osg::TextureRectangle:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 TextureRectangle ()
 TextureRectangle (Image *image)
 TextureRectangle (const TextureRectangle &text, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 Copy constructor using CopyOp to manage deep vs shallow copy.

 META_StateAttribute (osg, TextureRectangle, TEXTURE)
virtual int compare (const StateAttribute &rhs) const
 Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

virtual GLenum getTextureTarget () const
void setImage (Image *image)
 Set the texture image.

ImagegetImage ()
 Get the texture image.

const ImagegetImage () const
 Get the const texture image.

unsigned int & getModifiedCount (unsigned int contextID) const
virtual void setImage (unsigned int, Image *image)
 Set the texture image, ignoring face value as there is only one image.

virtual ImagegetImage (unsigned int)
 Get the texture image, ignoring face value as there is only one image.

virtual const ImagegetImage (unsigned int) const
 Get the const texture image, ignoring face value as there is only one image.

virtual unsigned int getNumImages () const
 Get the number of images that can be assigned to the Texture.

void setTextureSize (int width, int height) const
 Set the texture width and height.

void setTextureWidth (int width)
int getTextureWidth () const
void setTextureHeight (int height)
int getTextureHeight () const
void setSubloadCallback (SubloadCallback *cb)
SubloadCallbackgetSubloadCallback ()
const SubloadCallbackgetSubloadCallback () const
void copyTexImage2D (State &state, int x, int y, int width, int height)
 Copies pixels into a 2D texture image, as per glCopyTexImage2D.

void copyTexSubImage2D (State &state, int xoffset, int yoffset, int x, int y, int width, int height)
 Copies a two-dimensional texture subimage, as per glCopyTexSubImage2D.

virtual void apply (State &state) const
 On first apply (unless already compiled), create and bind the texture, subsequent apply will simply bind to texture.


Protected Types

typedef buffered_value< unsigned
int > 
ImageModifiedCount

Protected Member Functions

virtual ~TextureRectangle ()
virtual void computeInternalFormat () const
void applyTexParameters (GLenum target, State &state) const
 Helper method.

void applyTexImage_load (GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight) const
void applyTexImage_subload (GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight, GLint &inInternalFormat) const

Protected Attributes

ref_ptr< Image_image
GLsizei _textureWidth
GLsizei _textureHeight
ref_ptr< SubloadCallback_subloadCallback
ImageModifiedCount _modifiedCount

Detailed Description

Texture state class which encapsulates OpenGL texture functionality.


Member Typedef Documentation

typedef buffered_value<unsigned int> osg::TextureRectangle::ImageModifiedCount [protected]
 


Constructor & Destructor Documentation

osg::TextureRectangle::TextureRectangle  ) 
 

osg::TextureRectangle::TextureRectangle Image image  ) 
 

osg::TextureRectangle::TextureRectangle const TextureRectangle text,
const CopyOp copyop = CopyOp::SHALLOW_COPY
 

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::TextureRectangle::~TextureRectangle  )  [protected, virtual]
 


Member Function Documentation

virtual void osg::TextureRectangle::apply State state  )  const [virtual]
 

On first apply (unless already compiled), create and bind the texture, subsequent apply will simply bind to texture.

Implements osg::Texture.

void osg::TextureRectangle::applyTexImage_load GLenum  target,
Image image,
State state,
GLsizei &  inwidth,
GLsizei &  inheight
const [protected]
 

void osg::TextureRectangle::applyTexImage_subload GLenum  target,
Image image,
State state,
GLsizei &  inwidth,
GLsizei &  inheight,
GLint &  inInternalFormat
const [protected]
 

void osg::TextureRectangle::applyTexParameters GLenum  target,
State state
const [protected]
 

Helper method.

Sets texture paramters.

Reimplemented from osg::Texture.

virtual int osg::TextureRectangle::compare const StateAttribute rhs  )  const [virtual]
 

Return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs.

Implements osg::StateAttribute.

virtual void osg::TextureRectangle::computeInternalFormat  )  const [protected, virtual]
 

Implements osg::Texture.

void osg::TextureRectangle::copyTexImage2D State state,
int  x,
int  y,
int  width,
int  height
 

Copies pixels into a 2D texture image, as per glCopyTexImage2D.

Creates an OpenGL texture object from the current OpenGL background framebuffer contents at position x, y with width width and height height. width and height must be a power of two.

void osg::TextureRectangle::copyTexSubImage2D State state,
int  xoffset,
int  yoffset,
int  x,
int  y,
int  width,
int  height
 

Copies a two-dimensional texture subimage, as per glCopyTexSubImage2D.

Updates a portion of an existing OpenGL texture object from the current OpenGL background framebuffer contents at position x, y with width width and height height. Loads framebuffer data into the texture using offsets xoffset and yoffset. width and height must be powers of two.

virtual const Image* osg::TextureRectangle::getImage unsigned  int  )  const [inline, virtual]
 

Get the const texture image, ignoring face value as there is only one image.

Implements osg::Texture.

virtual Image* osg::TextureRectangle::getImage unsigned  int  )  [inline, virtual]
 

Get the texture image, ignoring face value as there is only one image.

Implements osg::Texture.

const Image* osg::TextureRectangle::getImage  )  const [inline]
 

Get the const texture image.

Image* osg::TextureRectangle::getImage  )  [inline]
 

Get the texture image.

unsigned int& osg::TextureRectangle::getModifiedCount unsigned int  contextID  )  const [inline]
 

virtual unsigned int osg::TextureRectangle::getNumImages  )  const [inline, virtual]
 

Get the number of images that can be assigned to the Texture.

Implements osg::Texture.

const SubloadCallback* osg::TextureRectangle::getSubloadCallback  )  const [inline]
 

SubloadCallback* osg::TextureRectangle::getSubloadCallback  )  [inline]
 

int osg::TextureRectangle::getTextureHeight  )  const [inline]
 

virtual GLenum osg::TextureRectangle::getTextureTarget  )  const [inline, virtual]
 

Implements osg::Texture.

int osg::TextureRectangle::getTextureWidth  )  const [inline]
 

osg::TextureRectangle::META_StateAttribute osg  ,
TextureRectangle  ,
TEXTURE 
 

virtual void osg::TextureRectangle::setImage unsigned  int,
Image image
[inline, virtual]
 

Set the texture image, ignoring face value as there is only one image.

Implements osg::Texture.

void osg::TextureRectangle::setImage Image image  ) 
 

Set the texture image.

void osg::TextureRectangle::setSubloadCallback SubloadCallback cb  )  [inline]
 

void osg::TextureRectangle::setTextureHeight int  height  )  [inline]
 

void osg::TextureRectangle::setTextureSize int  width,
int  height
const [inline]
 

Set the texture width and height.

If width or height are zero then the repsective size value is calculated from the source image sizes.

void osg::TextureRectangle::setTextureWidth int  width  )  [inline]
 


Member Data Documentation

ref_ptr<Image> osg::TextureRectangle::_image [mutable, protected]
 

ImageModifiedCount osg::TextureRectangle::_modifiedCount [mutable, protected]
 

ref_ptr<SubloadCallback> osg::TextureRectangle::_subloadCallback [protected]
 

GLsizei osg::TextureRectangle::_textureHeight [mutable, protected]
 

GLsizei osg::TextureRectangle::_textureWidth [mutable, protected]
 


The documentation for this class was generated from the following file:
Generated at Thu Nov 24 16:23:59 2005 for the OpenSceneGraph by doxygen 1.3.6.