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

osg::Texture3D Class Reference

Texture state class which encapsulates OpenGl 3D texture functionality. More...

Inheritance diagram for osg::Texture3D:

Inheritance graph
[legend]
List of all members.

Public Methods

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

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

virtual void getAssociatedModes (std::vector< GLMode > &modes) const
 return the modes associated with this StateSet

void setImage (Image *image)
 Set the texture image.

ImagegetImage ()
 Get the texture image.

const ImagegetImage () const
 Get the const texture image.

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

void getTextureSize (int &width, int &height, int &depth) const
 Get the texture subload width.

void setSubloadCallback (SubloadCallback *cb)
SubloadCallbackgetSubloadCallback ()
const SubloadCallbackgetSubloadCallback () const
void setNumMipmapLevels (unsigned int num) const
 Set the number of mip map levels the the texture has been created with, should only be called within an osg::Texuture::apply() and custom OpenGL texture load.

unsigned int getNumMipmapLevels () const
 Get the number of mip map levels the the texture has been created with.

void copyTexSubImage3D (State &state, int xoffset, int yoffset, int zoffset, int x, int y, int width, int height)
 Copy a two-dimensional texture subimage.

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


Protected Methods

virtual ~Texture3D ()
virtual void computeInternalFormat () const
void applyTexImage3D (GLenum target, Image *image, State &state, GLsizei &inwidth, GLsizei &inheight, GLsizei &indepth, GLsizei &numMimpmapLevels) const

Protected Attributes

ref_ptr< Image_image
GLsizei _textureWidth
GLsizei _textureHeight
GLsizei _textureDepth
GLsizei _numMimpmapLevels
ref_ptr< SubloadCallback_subloadCallback

Detailed Description

Texture state class which encapsulates OpenGl 3D texture functionality.


Constructor & Destructor Documentation

osg::Texture3D::Texture3D  
 

osg::Texture3D::Texture3D const Texture3D &    text,
const CopyOp   copyop = CopyOp::SHALLOW_COPY
 

Copy constructor using CopyOp to manage deep vs shallow copy.

virtual osg::Texture3D::~Texture3D   [protected, virtual]
 


Member Function Documentation

virtual void osg::Texture3D::apply State   state const [virtual]
 

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

Implements osg::Texture.

void osg::Texture3D::applyTexImage3D GLenum    target,
Image   image,
State   state,
GLsizei &    inwidth,
GLsizei &    inheight,
GLsizei &    indepth,
GLsizei &    numMimpmapLevels
const [protected]
 

virtual int osg::Texture3D::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::Texture3D::computeInternalFormat   const [protected, virtual]
 

Implements osg::Texture.

void osg::Texture3D::copyTexSubImage3D State   state,
int    xoffset,
int    yoffset,
int    zoffset,
int    x,
int    y,
int    width,
int    height
 

Copy a two-dimensional texture subimage.

As per glCopyTexSubImage2D. Updates portion of an existing OpenGL texture object from the current OpenGL background framebuffer contents at pos x, y with width width and height height.

virtual void osg::Texture3D::getAssociatedModes std::vector< GLMode > &    modes const [inline, virtual]
 

return the modes associated with this StateSet

Reimplemented from osg::StateAttribute.

const Image* osg::Texture3D::getImage   const [inline]
 

Get the const texture image.

Image* osg::Texture3D::getImage   [inline]
 

Get the texture image.

unsigned int osg::Texture3D::getNumMipmapLevels   const [inline]
 

Get the number of mip map levels the the texture has been created with.

const SubloadCallback* osg::Texture3D::getSubloadCallback   const [inline]
 

SubloadCallback* osg::Texture3D::getSubloadCallback   [inline]
 

void osg::Texture3D::getTextureSize int &    width,
int &    height,
int &    depth
const [inline]
 

Get the texture subload width.

osg::Texture3D::META_StateAttribute osg   ,
Texture3D   ,
TEXTURE   
 

void osg::Texture3D::setImage Image   image
 

Set the texture image.

void osg::Texture3D::setNumMipmapLevels unsigned int    num const [inline]
 

Set the number of mip map levels the the texture has been created with, should only be called within an osg::Texuture::apply() and custom OpenGL texture load.

void osg::Texture3D::setSubloadCallback SubloadCallback   cb [inline]
 

void osg::Texture3D::setTextureSize const int    width,
const int    height,
const int    depth
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.


Member Data Documentation

ref_ptr<Image> osg::Texture3D::_image [protected]
 

GLsizei osg::Texture3D::_numMimpmapLevels [protected]
 

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

GLsizei osg::Texture3D::_textureDepth [protected]
 

GLsizei osg::Texture3D::_textureHeight [protected]
 

GLsizei osg::Texture3D::_textureWidth [protected]
 


The documentation for this class was generated from the following file:
Generated at Wed Sep 18 13:55:45 2002 for the Open Scene Graph by doxygen 1.2.16.