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

osg::Texture1D Class Reference

Inheritance diagram for osg::Texture1D:

osg::Texture osg::StateAttribute osg::Object osg::Referenced List of all members.

Public Member Functions

 Texture1D ()
 Texture1D (const Texture1D &text, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_StateAttribute (osg, Texture1D, TEXTURE)
virtual int compare (const StateAttribute &rhs) const
virtual bool getModeUsage (ModeUsage &usage) const
void setImage (Image *image)
ImagegetImage ()
const ImagegetImage () const
unsigned int & getModifiedTag (unsigned int contextID) const
virtual void setImage (unsigned int, Image *image)
virtual ImagegetImage (unsigned int)
virtual const ImagegetImage (unsigned int) const
virtual unsigned int getNumImages () const
void setTextureSize (int width) const
void getTextureSize (int &width) const
void setSubloadCallback (SubloadCallback *cb)
SubloadCallbackgetSubloadCallback ()
const SubloadCallbackgetSubloadCallback () const
void setNumMipmapLevels (unsigned int num) const
unsigned int getNumMipmapLevels () const
void copyTexImage1D (State &state, int x, int y, int width)
void copyTexSubImage1D (State &state, int xoffset, int x, int y, int width)
virtual void apply (State &state) const

Protected Types

typedef buffered_value< unsigned
int > 
ImageModifiedTag

Protected Member Functions

virtual ~Texture1D ()
virtual void computeInternalFormat () const
void applyTexImage1D (GLenum target, Image *image, State &state, GLsizei &width, GLsizei &numMipmapLevels) const

Protected Attributes

ref_ptr< Image_image
GLsizei _textureWidth
GLsizei _numMipmapLevels
ref_ptr< SubloadCallback_subloadCallback
ImageModifiedTag _modifiedTag

Classes

class  SubloadCallback

Detailed Description

Encapsulates OpenGl 1D texture functionality. Doesn't support cube maps, so ignore face parameters.


Member Typedef Documentation

typedef buffered_value<unsigned int> osg::Texture1D::ImageModifiedTag [protected]
 


Constructor & Destructor Documentation

osg::Texture1D::Texture1D  ) 
 

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

Copy constructor using CopyOp to manage deep vs shallow copy.

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


Member Function Documentation

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

Bind the texture object. If the texture object hasn't already been compiled, create the texture mipmap levels.

Implements osg::Texture.

void osg::Texture1D::applyTexImage1D GLenum  target,
Image image,
State state,
GLsizei &  width,
GLsizei &  numMipmapLevels
const [protected]
 

Helper method. Createa the texture without setting or using a texture binding.

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

Implements osg::Texture.

void osg::Texture1D::copyTexImage1D State state,
int  x,
int  y,
int  width
 

Copies pixels into a 1D texture image, as per glCopyTexImage1D. Creates an OpenGL texture object from the current OpenGL background framebuffer contents at position x, y with width width. width must be a power of two.

void osg::Texture1D::copyTexSubImage1D State state,
int  xoffset,
int  x,
int  y,
int  width
 

Copies a one-dimensional texture subimage, as per glCopyTexSubImage1D. Updates a portion of an existing OpenGL texture object from the current OpenGL background framebuffer contents at position x, y with width width.

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

Gets the const texture image, ignoring face.

Implements osg::Texture.

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

Gets the texture image, ignoring face.

Implements osg::Texture.

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

Gets the const texture image.

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

Gets the texture image.

virtual bool osg::Texture1D::getModeUsage ModeUsage &  usage  )  const [inline, virtual]
 

unsigned int& osg::Texture1D::getModifiedTag unsigned int  contextID  )  const [inline]
 

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

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

Implements osg::Texture.

unsigned int osg::Texture1D::getNumMipmapLevels  )  const [inline]
 

Gets the number of mipmap levels created.

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

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

void osg::Texture1D::getTextureSize int &  width  )  const [inline]
 

Gets the texture subload width.

osg::Texture1D::META_StateAttribute osg  ,
Texture1D  ,
TEXTURE 
 

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

Sets the texture image, ignoring face.

Implements osg::Texture.

void osg::Texture1D::setImage Image image  ) 
 

Sets the texture image.

void osg::Texture1D::setNumMipmapLevels unsigned int  num  )  const [inline]
 

Helper function. Sets the number of mipmap levels created for this texture. Should only be called within an osg::Texuture::apply(), or during a custom OpenGL texture load.

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

void osg::Texture1D::setTextureSize int  width  )  const [inline]
 

Sets the texture width. If width is zero, calculate the value from the source image width.


Member Data Documentation

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

It's not ideal that _image is mutable, but it's required since Image::ensureDimensionsArePowerOfTwo() can only be called in a valid OpenGL context, and therefore within Texture::apply, which is const.

ImageModifiedTag osg::Texture1D::_modifiedTag [mutable, protected]
 

GLsizei osg::Texture1D::_numMipmapLevels [mutable, protected]
 

Number of mipmap levels created.

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

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

Subloaded images can have different texture and image sizes.


The documentation for this class was generated from the following file:
Generated on Wed Sep 7 11:10:03 2005 for openscenegraph by  doxygen 1.4.4