OpenSceneGraph/doc/doc++/osg/HeightField.html

280 lines
13 KiB
HTML
Raw Normal View History

2003-04-18 00:22:51 +08:00
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE>class SG_EXPORT osg::HeightField</TITLE>
<META NAME="GENERATOR" CONTENT="DOC++ 3.4.10">
</HEAD>
<BODY BGCOLOR="#ffffff">
<H2>class SG_EXPORT <A HREF="#DOC.DOCU">osg::HeightField</A></H2></H2><HR>
<H2>Inheritance:</H2>
<APPLET CODE="ClassGraph.class" WIDTH=600 HEIGHT=155>
<param name=classes value="CReferenced,MReferenced.html,CObject,MObject.html,CShape,MShape.html,CHeightField,MHeightField.html,CGrid,MGrid.html">
<param name=before value="M,M,M,M,M^_">
<param name=after value="Md_SPSP,Md_SP,Md_,M,M">
<param name=indent value="0,1,2,3,3">
<param name=arrowdir value="down">
</APPLET>
<HR>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.181.1">HeightField</A></B>()
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.181.2">HeightField</A></B>(const <!1><A HREF="HeightField.html#DOC.2.181.2">HeightField</A>&amp; mesh, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual bool <B><A HREF="#DOC.2.181.3">isSameKindAs</A></B>(const <!1><A HREF="Object.html">Object</A>* obj) const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const char* <B><A HREF="#DOC.2.181.4">libraryName</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual const char* <B><A HREF="#DOC.2.181.5">className</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.181.6">accept</A></B>(<!1><A HREF="ShapeVisitor.html">osg::ShapeVisitor</A>&amp; sv)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual void <B><A HREF="#DOC.2.181.7">accept</A></B>(<!1><A HREF="ConstShapeVisitor.html">osg::ConstShapeVisitor</A>&amp; csv) const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned int <B><A HREF="#DOC.2.181.8">getNumColumns</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline unsigned int <B><A HREF="#DOC.2.181.9">getNumRows</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.181.10">setOrigin</A></B>(const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; origin)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; <B><A HREF="#DOC.2.181.11">getOrigin</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.181.12">setXInterval</A></B>(float dx)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline float <B><A HREF="#DOC.2.181.13">getXInterval</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.181.14">setYInterval</A></B>(float dy)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline float <B><A HREF="#DOC.2.181.15">getYInterval</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual float <B><A HREF="#DOC.2.181.16">getHeight</A></B>(unsigned int c, unsigned int <!1><A HREF="UByte4.html#DOC.2.222.12">r</A>) const = 0
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>virtual <!1><A HREF="Vec3.html">Vec3</A> <B><A HREF="#DOC.2.181.17">getNormal</A></B>(unsigned int c, unsigned int <!1><A HREF="UByte4.html#DOC.2.222.12">r</A>) const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline void <B><A HREF="#DOC.2.181.18">setRotation</A></B>(const <!1><A HREF="Quat.html">Quat</A>&amp; quat)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline const <!1><A HREF="Quat.html">Quat</A>&amp; <B><A HREF="#DOC.2.181.19">getRotation</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline <!1><A HREF="osg.html#DOC.2.102">Matrix</A> <B><A HREF="#DOC.2.181.20">getRotationMatrix</A></B>() const
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>inline bool <B><A HREF="#DOC.2.181.21">zeroRotation</A></B>() const
2003-04-18 00:22:51 +08:00
</DL></P>
<P><DL>
<DT><H3>Protected Fields</H3><DD><DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned int <B><A HREF="#DOC.2.181.23">_columns</A></B>
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>unsigned int <B><A HREF="#DOC.2.181.24">_rows</A></B>
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Vec3.html">osg::Vec3</A> <B><A HREF="#DOC.2.181.25">_origin</A></B>
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.181.26">_dx</A></B>
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif>float <B><A HREF="#DOC.2.181.27">_dy</A></B>
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif><!1><A HREF="Quat.html">Quat</A> <B><A HREF="#DOC.2.181.28">_rotation</A></B>
2003-04-18 00:22:51 +08:00
</DL></P>
<P><DL>
<DT><H3>Protected Methods</H3><DD><DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="[more]" BORDER=0 SRC=icon1.gif> <B><A HREF="#DOC.2.181.22">~HeightField</A></B>()
2003-04-18 00:22:51 +08:00
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Shape.html">Shape</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
<IMG ALT="o" SRC=icon2.gif>virtual <!1><A HREF="Object.html">Object</A>* <B>cloneType</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>virtual <!1><A HREF="Object.html">Object</A>* <B>clone</B>(const <!1><A HREF="CopyOp.html">CopyOp</A>&amp;) const
</DL></P>
</DL>
<HR><H3>Inherited from <A HREF="Object.html">Object</A>:</H3>
<DL>
<P><DL>
<DT><H3>Public Methods</H3><DD><DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="o" SRC=icon2.gif>inline void <B>setDataVariance</B>(<!1><A HREF="Object.html#DOC.2.136.8">DataVariance</A> dv)
2003-04-18 00:22:51 +08:00
<DT>
2003-10-02 22:28:30 +08:00
<IMG ALT="o" SRC=icon2.gif>inline <!1><A HREF="Object.html#DOC.2.136.8">DataVariance</A> <B>getDataVariance</B>() const
2003-04-18 00:22:51 +08:00
<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>
2003-10-02 22:28:30 +08:00
<IMG ALT="o" SRC=icon2.gif><!1><A HREF="Object.html#DOC.2.136.8">DataVariance</A> <B>_dataVariance</B>
2003-04-18 00:22:51 +08:00
<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 <!1><A HREF="Referenced.html">Referenced</A>&amp; <B>operator = </B>(<!1><A HREF="Referenced.html">Referenced</A>&amp;)
<DT>
<IMG ALT="o" SRC=icon2.gif>static void <B>setDeleteHandler</B>(<!1><A HREF="DeleteHandler.html">DeleteHandler</A>* handler)
<DT>
<IMG ALT="o" SRC=icon2.gif>static <!1><A HREF="DeleteHandler.html">DeleteHandler</A>* <B>getDeleteHandler</B>()
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>ref</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref_nodelete</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline int <B>referenceCount</B>() const
<DT>
<IMG ALT="o" SRC=icon2.gif>inline void <B>unref</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>
<DL>
<A NAME="HeightField"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.1"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> HeightField()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="HeightField"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.2"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> HeightField(const <!1><A HREF="HeightField.html#DOC.2.181.2">HeightField</A>&amp; mesh, const <!1><A HREF="CopyOp.html">CopyOp</A>&amp; copyop=CopyOp::SHALLOW_COPY)</B></TT>
2003-04-18 00:22:51 +08:00
<DL><DT><DD></DL><P>
<A NAME="isSameKindAs"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.3"></A>
2003-04-18 00:22:51 +08:00
<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>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.4"></A>
2003-04-18 00:22:51 +08:00
<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>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.5"></A>
2003-04-18 00:22:51 +08:00
<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="accept"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.6"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void accept(<!1><A HREF="ShapeVisitor.html">osg::ShapeVisitor</A>&amp; sv)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="accept"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.7"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual void accept(<!1><A HREF="ConstShapeVisitor.html">osg::ConstShapeVisitor</A>&amp; csv) const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getNumColumns"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.8"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned int getNumColumns() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getNumRows"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.9"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline unsigned int getNumRows() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setOrigin"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.10"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setOrigin(const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; origin)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getOrigin"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.11"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Vec3.html">osg::Vec3</A>&amp; getOrigin() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setXInterval"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.12"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setXInterval(float dx)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getXInterval"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.13"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline float getXInterval() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="setYInterval"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.14"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setYInterval(float dy)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getYInterval"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.15"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline float getYInterval() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getHeight"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.16"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual float getHeight(unsigned int c, unsigned int <!1><A HREF="UByte4.html#DOC.2.222.12">r</A>) const = 0</B></TT>
2003-04-18 00:22:51 +08:00
<DL><DT><DD></DL><P>
<A NAME="getNormal"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.17"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>virtual <!1><A HREF="Vec3.html">Vec3</A> getNormal(unsigned int c, unsigned int <!1><A HREF="UByte4.html#DOC.2.222.12">r</A>) const </B></TT>
2003-04-18 00:22:51 +08:00
<DL><DT><DD></DL><P>
<A NAME="setRotation"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.18"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline void setRotation(const <!1><A HREF="Quat.html">Quat</A>&amp; quat)</B></TT>
<DL><DT><DD></DL><P>
<A NAME="getRotation"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.19"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline const <!1><A HREF="Quat.html">Quat</A>&amp; getRotation() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="getRotationMatrix"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.20"></A>
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline <!1><A HREF="osg.html#DOC.2.102">Matrix</A> getRotationMatrix() const </B></TT>
2003-04-18 00:22:51 +08:00
<DL><DT><DD></DL><P>
<A NAME="zeroRotation"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.21"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>inline bool zeroRotation() const </B></TT>
<DL><DT><DD></DL><P>
<A NAME="~HeightField"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.22"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B> ~HeightField()</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_columns"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.23"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int _columns</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_rows"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.24"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>unsigned int _rows</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_origin"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.25"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Vec3.html">osg::Vec3</A> _origin</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_dx"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.26"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _dx</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_dy"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.27"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B>float _dy</B></TT>
<DL><DT><DD></DL><P>
<A NAME="_rotation"></A>
2003-10-02 22:28:30 +08:00
<A NAME="DOC.2.181.28"></A>
2003-04-18 00:22:51 +08:00
<DT><IMG ALT="o" BORDER=0 SRC=icon2.gif><TT><B><!1><A HREF="Quat.html">Quat</A> _rotation</B></TT>
<DL><DT><DD></DL><P></DL>
<HR>
<DL><DT><B>Direct child classes:
</B><DD><A HREF="Grid.html">Grid</A><BR>
</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>