OpenSceneGraph/doc/doc++/osg/Image.html
2002-08-29 14:29:49 +00:00

512 lines
26 KiB
HTML

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class SG_EXPORT osg::Image</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.8">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::Image</A></H2></H2><BLOCKQUOTE>Image class for encapsulating the storage texture image data</BLOCKQUOTE>
<HR>
<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=95>
<param name=classes value="CReferenced,MReferenced.html,CObject,MObject.html,CImage,MImage.html">
<param name=before value="M,M,M">
<param name=after value="Md_SP,Md_,M">
<param name=indent value="0,1,2">
<param name=arrowdir value="down">
</APPLET>
<HR>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.59.1">Image</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.59.2">Image</A></B>(const <!1><A HREF="Image.html#DOC.2.59.2">Image</A>&amp; image, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)
<DD><I>Copy constructor using CopyOp to manage deep vs shallow copy</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <!1><A HREF="Object.html">Object</A>* <B><A HREF="#DOC.2.59.3">cloneType</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <!1><A HREF="Object.html">Object</A>* <B><A HREF="#DOC.2.59.4">clone</A></B>(const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual bool <B><A HREF="#DOC.2.59.5">isSameKindAs</A></B>(const <!1><A HREF="Object.html">Object</A>* obj) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const char* <B><A HREF="#DOC.2.59.6">libraryName</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const char* <B><A HREF="#DOC.2.59.7">className</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.8">setFileName</A></B>(const std::string&amp; fileName)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const std::string&amp; <B><A HREF="#DOC.2.59.9">getFileName</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.10">allocateImage</A></B>(int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, int <!1><A HREF="Image.html#DOC.2.59.17">r</A>, GLenum format, GLenum type, int packing=1)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.11">setImage</A></B>(int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, int <!1><A HREF="Image.html#DOC.2.59.17">r</A>, GLint internalTextureformat, GLenum format, GLenum type, unsigned char* <!1><A HREF="Image.html#DOC.2.59.28">data</A>, int packing=1)
<DD><I>set the image data and format.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.12">readPixels</A></B>(int <!1><A HREF="Viewport.html#DOC.2.153.7">x</A>, int <!1><A HREF="Viewport.html#DOC.2.153.8">y</A>, int <!1><A HREF="Viewport.html#DOC.2.153.9">width</A>, int <!1><A HREF="Viewport.html#DOC.2.153.10">height</A>, GLenum format, GLenum type)
<DD><I>readPixels from screen at specified position and size, using glReadPixels.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.13">scaleImage</A></B>(const int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, const int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, const int <!1><A HREF="Image.html#DOC.2.59.17">r</A>)
<DD><I>Scale image to specified size.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.14">copySubImage</A></B>(int s_offset, int t_offset, int r_offset, <!1><A HREF="Image.html">osg::Image</A>* source)
<DD><I>Copy a source Image into a subpart of this Image at specified position.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const int <B><A HREF="#DOC.2.59.15">s</A></B>() const
<DD><I>Width of image</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const int <B><A HREF="#DOC.2.59.16">t</A></B>() const
<DD><I>Height of image</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const int <B><A HREF="#DOC.2.59.17">r</A></B>() const
<DD><I>Depth of image</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.18">setInternalTextureFormat</A></B>(GLint internalFormat)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const GLint <B><A HREF="#DOC.2.59.19">getInternalTextureFormat</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.20">setPixelFormat</A></B>(const GLenum format)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const GLenum <B><A HREF="#DOC.2.59.21">getPixelFormat</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const GLenum <B><A HREF="#DOC.2.59.22">getDataType</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.23">getPacking</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.24">getPixelSizeInBits</A></B>() const
<DD><I>return the numbers of bits required for each pixel</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.25">getRowSizeInBytes</A></B>() const
<DD><I>return the numbers of bytes each row of pixels occupies once it has been packed</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.26">getImageSizeInBytes</A></B>() const
<DD><I>return the numbers of bytes each image (_s*_t) of pixels occupies</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.27">getTotalSizeInBytes</A></B>() const
<DD><I>return the numbers of bytes the whole row/image/volume of pixels occupies</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned char* <B><A HREF="#DOC.2.59.28">data</A></B>()
<DD><I>raw image data</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned char* <B><A HREF="#DOC.2.59.29">data</A></B>() const
<DD><I>raw const image data</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned char* <B><A HREF="#DOC.2.59.30">data</A></B>(int column, int row=0, int image=0)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned char* <B><A HREF="#DOC.2.59.31">data</A></B>(int column, int row=0, int image=0) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.32">flipHorizontal</A></B>(int image=0)
<DD><I>Flip the image horizontally</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.33">flipVertical</A></B>(int image=0)
<DD><I>Flip the image vertically</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.34">ensureValidSizeForTexturing</A></B>()
<DD><I>Ensure image dimensions are a power of two.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.59.35">dirty</A></B>()
<DD><I>Dirty the image, which increments the modified flag, to force osg::Texture to reload the image</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.59.36">setModifiedTag</A></B>(const unsigned int value)
<DD><I>Set the modified tag value, only used by osg::Texture when using texture subloading.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const unsigned int <B><A HREF="#DOC.2.59.37">getModifiedTag</A></B>() const
<DD><I>Get modified tag value, only used by osg::Texture when using texture subloading.</I>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static const bool <B><A HREF="#DOC.2.59.38">isPackedType</A></B>(GLenum type)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static const unsigned int <B><A HREF="#DOC.2.59.39">computeNumComponents</A></B>(GLenum format)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static const unsigned int <B><A HREF="#DOC.2.59.40">computePixelSizeInBits</A></B>(GLenum format, GLenum type)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static const unsigned int <B><A HREF="#DOC.2.59.41">computeRowWidthInBytes</A></B>(int <!1><A HREF="Viewport.html#DOC.2.153.9">width</A>, GLenum format, GLenum type, int packing)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>static const unsigned int <B><A HREF="#DOC.2.59.42">computeNearestPowerOfTwo</A></B>(unsigned int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, float bias=0.5f)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>typedef std::vector&lt; unsigned int &gt;inline MipmapDataType bool <B><A HREF="#DOC.2.59.43">isMipmap</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned int <B><A HREF="#DOC.2.59.44">getNumMipmapLevels</A></B>() const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.59.45">setMipmapData</A></B>(const MipmapDataType&amp; mipmapDataVector)
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned char* <B><A HREF="#DOC.2.59.46">getMipmapData</A></B>(unsigned int mipmapNumber) const
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>void <B><A HREF="#DOC.2.59.47">computeMipMaps</A></B>()
<DD><I>converts a single image into mip mapped version image</I>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>std::string <B><A HREF="#DOC.2.59.50">_fileName</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.59.51">_s</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.59.52">_t</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>int <B><A HREF="#DOC.2.59.53">_r</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>GLint <B><A HREF="#DOC.2.59.54">_internalTextureFormat</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>GLenum <B><A HREF="#DOC.2.59.55">_pixelFormat</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>GLenum <B><A HREF="#DOC.2.59.56">_dataType</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned int <B><A HREF="#DOC.2.59.57">_packing</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned char* <B><A HREF="#DOC.2.59.58">_data</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned int <B><A HREF="#DOC.2.59.59">_modifiedTag</A></B>
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>MipmapDataType <B><A HREF="#DOC.2.59.60">_mipmapData</A></B>
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <B><A HREF="#DOC.2.59.48">~Image</A></B>()
<DT>
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Image.html">Image</A>&amp; <B><A HREF="#DOC.2.59.49">operator = </A></B>(const <!1><A HREF="Image.html">Image</A>&amp;)
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Object.html">Object</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setDataVariance</B>(const <!1><A HREF="Object.html#DOC.2.90.8">DataVariance</A> dv)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Object.html#DOC.2.90.8">DataVariance</A> <B>getDataVariance</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>setUserData</B>(<!1><A HREF="Referenced.html">Referenced</A>* obj)
<DT>
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Referenced.html">Referenced</A>* <B>getUserData</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const <!1><A HREF="Referenced.html">Referenced</A>* <B>getUserData</B>() const
</DL></P>
<P><DL>
<DT><H3>Public Members</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>enum <B>DataVariance</B>
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Object.html#DOC.2.90.8">DataVariance</A> <B>_dataVariance</B>
<DT>
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="ref_ptr.html">ref_ptr</A>&lt;<!1><A HREF="Referenced.html">Referenced</A>&gt; <B>_userData</B>
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Referenced.html">Referenced</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>ref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref_nodelete</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline const int <B>referenceCount</B>() const
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>mutable int <B>_refCount</B>
</DL></P>
</DL>
<A NAME="DOC.DOCU"></A>
<HR>
<H2>Documentation</H2>
<BLOCKQUOTE>Image class for encapsulating the storage texture image data</BLOCKQUOTE>
<DL>
<A NAME="Image"></A>
<A NAME="DOC.2.59.1"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Image()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="Image"></A>
<A NAME="DOC.2.59.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> Image(const <!1><A HREF="Image.html#DOC.2.59.2">Image</A>&amp; image, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)</B></TT>
<DD>Copy constructor using CopyOp to manage deep vs shallow copy
<DL><DT><DD></DL><P>
<A NAME="cloneType"></A>
<A NAME="DOC.2.59.3"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual <!1><A HREF="Object.html">Object</A>* cloneType() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="clone"></A>
<A NAME="DOC.2.59.4"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual <!1><A HREF="Object.html">Object</A>* clone(const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="isSameKindAs"></A>
<A NAME="DOC.2.59.5"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual bool isSameKindAs(const <!1><A HREF="Object.html">Object</A>* obj) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="libraryName"></A>
<A NAME="DOC.2.59.6"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const char* libraryName() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="className"></A>
<A NAME="DOC.2.59.7"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual const char* className() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setFileName"></A>
<A NAME="DOC.2.59.8"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setFileName(const std::string&amp; fileName)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getFileName"></A>
<A NAME="DOC.2.59.9"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const std::string&amp; getFileName() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="allocateImage"></A>
<A NAME="DOC.2.59.10"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void allocateImage(int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, int <!1><A HREF="Image.html#DOC.2.59.17">r</A>, GLenum format, GLenum type, int packing=1)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="setImage"></A>
<A NAME="DOC.2.59.11"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setImage(int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, int <!1><A HREF="Image.html#DOC.2.59.17">r</A>, GLint internalTextureformat, GLenum format, GLenum type, unsigned char* <!1><A HREF="Image.html#DOC.2.59.28">data</A>, int packing=1)</B></TT>
<DD>set the image data and format.
note, when the packing value is negative (the default is -1) this method assumes
a _packing width of 1 if the width is not a multiple of 4,
otherwise automatically sets to _packing to 4. If a positive
value of packing is supplied than _packing is simply set to that value.
<DL><DT><DD></DL><P>
<A NAME="readPixels"></A>
<A NAME="DOC.2.59.12"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void readPixels(int <!1><A HREF="Viewport.html#DOC.2.153.7">x</A>, int <!1><A HREF="Viewport.html#DOC.2.153.8">y</A>, int <!1><A HREF="Viewport.html#DOC.2.153.9">width</A>, int <!1><A HREF="Viewport.html#DOC.2.153.10">height</A>, GLenum format, GLenum type)</B></TT>
<DD>readPixels from screen at specified position and size, using glReadPixels.
Create memory for storage if required, reuse existing pixel coords if possible.
if pixelFormat or dataType
<DL><DT><DD></DL><P>
<A NAME="scaleImage"></A>
<A NAME="DOC.2.59.13"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void scaleImage(const int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, const int <!1><A HREF="Image.html#DOC.2.59.16">t</A>, const int <!1><A HREF="Image.html#DOC.2.59.17">r</A>)</B></TT>
<DD>Scale image to specified size.
<DL><DT><DD></DL><P>
<A NAME="copySubImage"></A>
<A NAME="DOC.2.59.14"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void copySubImage(int s_offset, int t_offset, int r_offset, <!1><A HREF="Image.html">osg::Image</A>* source)</B></TT>
<DD>Copy a source Image into a subpart of this Image at specified position.
Typically used to copy to an already allocated image, such as creating
a 3D image from a stack 2D images.
If the this Image is empty then image data is created to
accomodate the imaging image in its offset position.
If source is NULL then no operation happens, this Image is left unchanged.
<DL><DT><DD></DL><P>
<A NAME="s"></A>
<A NAME="DOC.2.59.15"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const int s() const </B></TT>
<DD>Width of image
<DL><DT><DD></DL><P>
<A NAME="t"></A>
<A NAME="DOC.2.59.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const int t() const </B></TT>
<DD>Height of image
<DL><DT><DD></DL><P>
<A NAME="r"></A>
<A NAME="DOC.2.59.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const int r() const </B></TT>
<DD>Depth of image
<DL><DT><DD></DL><P>
<A NAME="setInternalTextureFormat"></A>
<A NAME="DOC.2.59.18"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setInternalTextureFormat(GLint internalFormat)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getInternalTextureFormat"></A>
<A NAME="DOC.2.59.19"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const GLint getInternalTextureFormat() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setPixelFormat"></A>
<A NAME="DOC.2.59.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void setPixelFormat(const GLenum format)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getPixelFormat"></A>
<A NAME="DOC.2.59.21"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const GLenum getPixelFormat() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getDataType"></A>
<A NAME="DOC.2.59.22"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const GLenum getDataType() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getPacking"></A>
<A NAME="DOC.2.59.23"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getPacking() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getPixelSizeInBits"></A>
<A NAME="DOC.2.59.24"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getPixelSizeInBits() const </B></TT>
<DD>return the numbers of bits required for each pixel
<DL><DT><DD></DL><P>
<A NAME="getRowSizeInBytes"></A>
<A NAME="DOC.2.59.25"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getRowSizeInBytes() const </B></TT>
<DD>return the numbers of bytes each row of pixels occupies once it has been packed
<DL><DT><DD></DL><P>
<A NAME="getImageSizeInBytes"></A>
<A NAME="DOC.2.59.26"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getImageSizeInBytes() const </B></TT>
<DD>return the numbers of bytes each image (_s*_t) of pixels occupies
<DL><DT><DD></DL><P>
<A NAME="getTotalSizeInBytes"></A>
<A NAME="DOC.2.59.27"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getTotalSizeInBytes() const </B></TT>
<DD>return the numbers of bytes the whole row/image/volume of pixels occupies
<DL><DT><DD></DL><P>
<A NAME="data"></A>
<A NAME="DOC.2.59.28"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned char* data()</B></TT>
<DD>raw image data
<DL><DT><DD></DL><P>
<A NAME="data"></A>
<A NAME="DOC.2.59.29"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned char* data() const </B></TT>
<DD>raw const image data
<DL><DT><DD></DL><P>
<A NAME="data"></A>
<A NAME="DOC.2.59.30"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned char* data(int column, int row=0, int image=0)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="data"></A>
<A NAME="DOC.2.59.31"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned char* data(int column, int row=0, int image=0) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="flipHorizontal"></A>
<A NAME="DOC.2.59.32"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void flipHorizontal(int image=0)</B></TT>
<DD>Flip the image horizontally
<DL><DT><DD></DL><P>
<A NAME="flipVertical"></A>
<A NAME="DOC.2.59.33"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void flipVertical(int image=0)</B></TT>
<DD>Flip the image vertically
<DL><DT><DD></DL><P>
<A NAME="ensureValidSizeForTexturing"></A>
<A NAME="DOC.2.59.34"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void ensureValidSizeForTexturing()</B></TT>
<DD>Ensure image dimensions are a power of two.
Mip Mapped texture require the image dimensions to be
power of two and are within the maxiumum texture size for
the host machine.
<DL><DT><DD></DL><P>
<A NAME="dirty"></A>
<A NAME="DOC.2.59.35"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void dirty()</B></TT>
<DD>Dirty the image, which increments the modified flag, to force osg::Texture to reload the image
<DL><DT><DD></DL><P>
<A NAME="setModifiedTag"></A>
<A NAME="DOC.2.59.36"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setModifiedTag(const unsigned int value)</B></TT>
<DD>Set the modified tag value, only used by osg::Texture when using texture subloading.
<DL><DT><DD></DL><P>
<A NAME="getModifiedTag"></A>
<A NAME="DOC.2.59.37"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const unsigned int getModifiedTag() const </B></TT>
<DD>Get modified tag value, only used by osg::Texture when using texture subloading.
<DL><DT><DD></DL><P>
<A NAME="isPackedType"></A>
<A NAME="DOC.2.59.38"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static const bool isPackedType(GLenum type)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeNumComponents"></A>
<A NAME="DOC.2.59.39"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static const unsigned int computeNumComponents(GLenum format)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="computePixelSizeInBits"></A>
<A NAME="DOC.2.59.40"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static const unsigned int computePixelSizeInBits(GLenum format, GLenum type)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeRowWidthInBytes"></A>
<A NAME="DOC.2.59.41"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static const unsigned int computeRowWidthInBytes(int <!1><A HREF="Viewport.html#DOC.2.153.9">width</A>, GLenum format, GLenum type, int packing)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeNearestPowerOfTwo"></A>
<A NAME="DOC.2.59.42"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>static const unsigned int computeNearestPowerOfTwo(unsigned int <!1><A HREF="Image.html#DOC.2.59.15">s</A>, float bias=0.5f)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="isMipmap"></A>
<A NAME="DOC.2.59.43"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>typedef std::vector&lt; unsigned int &gt;inline MipmapDataType bool isMipmap() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getNumMipmapLevels"></A>
<A NAME="DOC.2.59.44"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int getNumMipmapLevels() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setMipmapData"></A>
<A NAME="DOC.2.59.45"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setMipmapData(const MipmapDataType&amp; mipmapDataVector)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getMipmapData"></A>
<A NAME="DOC.2.59.46"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned char* getMipmapData(unsigned int mipmapNumber) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="computeMipMaps"></A>
<A NAME="DOC.2.59.47"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>void computeMipMaps()</B></TT>
<DD>converts a single image into mip mapped version image
<DL><DT><DD></DL><P>
<A NAME="~Image"></A>
<A NAME="DOC.2.59.48"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual ~Image()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="operator = "></A>
<A NAME="DOC.2.59.49"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Image.html">Image</A>&amp; operator = (const <!1><A HREF="Image.html">Image</A>&amp;)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_fileName"></A>
<A NAME="DOC.2.59.50"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>std::string _fileName</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_s"></A>
<A NAME="DOC.2.59.51"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _s</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_t"></A>
<A NAME="DOC.2.59.52"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _t</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_r"></A>
<A NAME="DOC.2.59.53"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>int _r</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_internalTextureFormat"></A>
<A NAME="DOC.2.59.54"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>GLint _internalTextureFormat</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_pixelFormat"></A>
<A NAME="DOC.2.59.55"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>GLenum _pixelFormat</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_dataType"></A>
<A NAME="DOC.2.59.56"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>GLenum _dataType</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_packing"></A>
<A NAME="DOC.2.59.57"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int _packing</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_data"></A>
<A NAME="DOC.2.59.58"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned char* _data</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_modifiedTag"></A>
<A NAME="DOC.2.59.59"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int _modifiedTag</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_mipmapData"></A>
<A NAME="DOC.2.59.60"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>MipmapDataType _mipmapData</B></TT>
<DL><DT><DD></DL><P></DL>
<HR><DL><DT><B>This class has no child classes.</B></DL>
<DL><DT><DD></DL><P><P><I><A HREF="index.html">Alphabetic index</A></I> <I><A HREF="HIER.html">HTML hierarchy of classes</A> or <A HREF="HIERjava.html">Java</A></I></P><HR>
<BR>
This page was generated with the help of <A HREF="http://docpp.sourceforge.net">DOC++</A>.
</BODY>
</HTML>