Texture state class which encapsulates OpenGl texture functionality
Inheritance:
Public Classes
-
class SG_EXPORT SubloadCallback: public Referenced
Public Methods
-
Texture2D()
-
Texture2D(Image* image)
-
Texture2D(const Texture2D& text, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
-
META_StateAttribute(osg, Texture2D, TEXTURE)
-
virtual int compare(const StateAttribute& rhs) const
- return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs
-
virtual bool getModeUsage(ModeUsage& usage) const
-
void setImage(Image* image)
- Set the texture image.
-
Image* getImage()
- Get the texture image.
-
inline const Image* getImage() const
- Get the const texture image.
-
inline unsigned int& getModifiedTag(unsigned int contextID) const
-
virtual void setImage(unsigned int, Image* image)
- Set the texture image, ignoring face.
-
virtual Image* getImage(unsigned int)
- Get the texture image, ignoring face value as there is only one image.
-
virtual const Image* getImage(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.
-
inline void setTextureSize(int width, int height) const
- Set the texture width and height.
-
int getTextureWidth() const
-
int getTextureHeight() const
-
inline void getTextureSize(int& width, int& height) const
-
void setSubloadCallback(SubloadCallback* cb)
-
SubloadCallback* getSubloadCallback()
-
const SubloadCallback* getSubloadCallback() 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 copyTexImage2D(State& state, int x, int y, int width, int height )
- Copy pixels into a 2D texture imageAs per glCopyTexImage2D.
-
void copyTexSubImage2D(State& state, int xoffset, int yoffset, 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 Fields
-
ref_ptr<Image> _image
-
mutable GLsizei _textureWidth
-
mutable GLsizei _textureHeight
-
mutable GLsizei _numMipmapLevels
-
ref_ptr<SubloadCallback> _subloadCallback
-
mutable ImageModifiedTag _modifiedTag
Protected Methods
-
virtual ~Texture2D()
-
virtual void computeInternalFormat() const
Protected
-
typedef buffered_value<unsigned int> ImageModifiedTag
Inherited from Texture:
Public Classes
-
enum WrapParameter
-
enum WrapMode
-
enum FilterParameter
-
enum FilterMode
-
enum InternalFormatMode
-
enum ShadowCompareFunc
-
enum ShadowTextureMode
-
class SG_EXPORT Extensions: public osg::Referenced
- Extensions class which encapsulates the querring of extensions and associated function pointers, and provide convinience wrappers to check for the extensions or use the associated functions
-
class TextureObject: public osg::Referenced
-
class SG_EXPORT TextureObjectManager: public osg::Referenced
Public Fields
-
mutable TextureObjectBuffer _textureObjectBuffer
Public Methods
-
virtual osg::Object* cloneType() const
-
virtual osg::Object* clone(const CopyOp& copyop) const
-
virtual bool isSameKindAs(const osg::Object* obj) const
-
virtual const char* libraryName() const
-
virtual const char* className() const
-
virtual Type getType() const
-
virtual bool isTextureAttribute() const
-
void setWrap(WrapParameter which, WrapMode wrap)
-
WrapMode getWrap(WrapParameter which) const
-
void setBorderColor(const Vec4& color)
-
const Vec4& getBorderColor() const
-
void setBorderWidth(GLint width)
-
GLint getBorderWidth() const
-
void setFilter(FilterParameter which, FilterMode filter)
-
FilterMode getFilter(FilterParameter which) const
-
void setMaxAnisotropy(float anis)
-
inline float getMaxAnisotropy() const
-
inline void setUseHardwareMipMapGeneration(bool useHardwareMipMapGeneration)
-
inline bool getUseHardwareMipMapGeneration() const
-
inline void setUnRefImageDataAfterApply(bool flag)
-
inline bool getUnRefImageDataAfterApply() const
-
inline void setClientStorageHint(bool flag)
-
inline bool getClientStorageHint() const
-
inline void setInternalFormatMode(InternalFormatMode mode)
-
inline InternalFormatMode getInternalFormatMode() const
-
inline void setInternalFormat(GLint internalFormat)
-
inline GLint getInternalFormat() const
-
bool isCompressedInternalFormat() const
-
inline TextureObject* getTextureObject(unsigned int contextID) const
-
void dirtyTextureObject()
-
bool areAllTextureObjectsLoaded() const
-
inline unsigned int& getTextureParameterDirty(unsigned int contextID) const
-
void dirtyTextureParameters()
-
void setShadowComparison(bool flag)
-
void setShadowCompareFunc(ShadowCompareFunc func)
-
ShadowCompareFunc getShadowCompareFunc()
-
void setShadowTextureMode(ShadowTextureMode mode)
-
ShadowTextureMode getShadowTextureMode()
-
void setShadowAmbient(float shadow_ambient)
-
float getShadowAmbient()
-
virtual void compileGLObjects(State& state) const
-
virtual void releaseGLObjects(State* state=0) const
-
static Extensions* getExtensions(unsigned int contextID, bool createIfNotInitalized)
-
static void setExtensions(unsigned int contextID, Extensions* extensions)
-
void applyTexImage2D_load(State& state, GLenum target, const Image* image, GLsizei width, GLsizei height, GLsizei numMipmapLevels) const
-
void applyTexImage2D_subload(State& state, GLenum target, const Image* image, GLsizei width, GLsizei height, GLint inInternalFormat, GLsizei numMipmapLevels) const
-
void takeTextureObjects(TextureObjectListMap& toblm)
-
static void setTextureObjectManager(TextureObjectManager* tom)
-
static TextureObjectManager* getTextureObjectManager()
-
static void flushTextureObjects(unsigned int contextID, double currentTime, double& availableTime)
Public
-
typedef std::list< ref_ptr<TextureObject> > TextureObjectList
-
typedef std::map<unsigned int, TextureObjectList > TextureObjectListMap
-
typedef buffered_object< ref_ptr<TextureObject> > TextureObjectBuffer
Protected Fields
-
mutable TexParameterDirtyList _texParametersDirtyList
-
WrapMode _wrap_s
-
WrapMode _wrap_t
-
WrapMode _wrap_r
-
FilterMode _min_filter
-
FilterMode _mag_filter
-
float _maxAnisotropy
-
bool _useHardwareMipMapGeneration
-
bool _unrefImageDataAfterApply
-
bool _clientStorageHint
-
Vec4 _borderColor
-
GLint _borderWidth
-
InternalFormatMode _internalFormatMode
-
mutable GLint _internalFormat
-
bool _use_shadow_comparison
-
ShadowCompareFunc _shadow_compare_func
-
ShadowTextureMode _shadow_texture_mode
-
float _shadow_ambient
Protected Methods
-
void computeInternalFormatWithImage(const osg::Image& image) const
-
void computeRequiredTextureDimensions(State& state, const osg::Image& image, GLsizei& width, GLsizei& height, GLsizei& numMipmapLevels) const
-
bool isCompressedInternalFormat(GLint internalFormat) const
-
void applyTexParameters(GLenum target, State& state) const
-
int compareTexture(const Texture& rhs) const
Protected
-
typedef buffered_value<unsigned int> TexParameterDirtyList
Public Classes
-
enum Values
-
enum Types
-
struct ModeUsage
Public Methods
-
bool operator < (const StateAttribute& rhs) const
-
bool operator == (const StateAttribute& rhs) const
-
bool operator != (const StateAttribute& rhs) const
Public
-
typedef GLenum GLMode
-
typedef unsigned int GLModeValue
-
typedef unsigned int OverrideValue
-
typedef unsigned int Type
Inherited from Object:
Public Classes
-
enum DataVariance
Public Methods
-
inline void setDataVariance(DataVariance dv)
-
inline DataVariance getDataVariance() const
-
inline void setUserData(Referenced* obj)
-
inline Referenced* getUserData()
-
inline const Referenced* getUserData() const
Protected Fields
-
DataVariance _dataVariance
-
ref_ptr<Referenced> _userData
Public Methods
-
inline Referenced& operator = (const Referenced&)
-
static void setDeleteHandler(DeleteHandler* handler)
-
static DeleteHandler* getDeleteHandler()
-
inline void ref() const
-
inline void unref_nodelete() const
-
inline int referenceCount() const
-
inline void unref() const
Protected Fields
-
mutable OpenThreads::Mutex _refMutex
-
mutable int _refCount
Documentation
Texture state class which encapsulates OpenGl texture functionality
Texture2D()
Texture2D(Image* image)
Texture2D(const Texture2D& text, const CopyOp& copyop=CopyOp::SHALLOW_COPY)
- Copy constructor using CopyOp to manage deep vs shallow copy
META_StateAttribute(osg, Texture2D, TEXTURE)
virtual int compare(const StateAttribute& rhs) const
- return -1 if *this < *rhs, 0 if *this==*rhs, 1 if *this>*rhs
virtual bool getModeUsage(ModeUsage& usage) const
void setImage(Image* image)
- Set the texture image.
Image* getImage()
- Get the texture image.
inline const Image* getImage() const
- Get the const texture image.
inline unsigned int& getModifiedTag(unsigned int contextID) const
virtual void setImage(unsigned int, Image* image)
- Set the texture image, ignoring face. as there is only one image
virtual Image* getImage(unsigned int)
- Get the texture image, ignoring face value as there is only one image.
virtual const Image* getImage(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.
inline void setTextureSize(int width, int height) const
- Set the texture width and height. If width or height are zero then
the repsective size value is calculated from the source image sizes.
int getTextureWidth() const
int getTextureHeight() const
inline void getTextureSize(int& width, int& height) const
void setSubloadCallback(SubloadCallback* cb)
SubloadCallback* getSubloadCallback()
const SubloadCallback* getSubloadCallback() 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 copyTexImage2D(State& state, int x, int y, int width, int height )
- Copy pixels into a 2D texture imageAs per glCopyTexImage2D.
Creates an OpenGL texture object from the current OpenGL background
framebuffer contents at pos \a x, \a y with width \a width and
height \a height. \a width and \a height must be a power of two.
void copyTexSubImage2D(State& state, int xoffset, int yoffset, 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 \a x, \a y with width \a width and
height \a height. \a width and \a height must be a power of two,
and writing into the texture with offset \a xoffset and \a yoffset.
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
virtual ~Texture2D()
virtual void computeInternalFormat() const
ref_ptr<Image> _image
mutable GLsizei _textureWidth
mutable GLsizei _textureHeight
mutable GLsizei _numMipmapLevels
ref_ptr<SubloadCallback> _subloadCallback
typedef buffered_value<unsigned int> ImageModifiedTag
mutable ImageModifiedTag _modifiedTag
- This class has no child classes.
Alphabetic index HTML hierarchy of classes or Java
This page was generated with the help of DOC++.