Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > 60f1dc962abad0f3b492991a4fbef9be > files > 263

vtk-doc-5.4.2-5mdv2010.0.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
<title>VTK: vtkCgShaderProgram Class Reference</title>
<link href="doxygen.css" rel="stylesheet" type="text/css">
<link href="tabs.css" rel="stylesheet" type="text/css">
</head><body>
<!-- Generated by Doxygen 1.5.6 -->
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="classes.html"><span>Classes</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="classes.html"><span>Alphabetical&nbsp;List</span></a></li>
      <li><a href="annotated.html"><span>Class&nbsp;List</span></a></li>
      <li><a href="hierarchy.html"><span>Class&nbsp;Hierarchy</span></a></li>
      <li><a href="functions.html"><span>Class&nbsp;Members</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>vtkCgShaderProgram Class Reference</h1><!-- doxytag: class="vtkCgShaderProgram" --><!-- doxytag: inherits="vtkShaderProgram" --><code>#include &lt;<a class="el" href="a05167.html">vtkCgShaderProgram.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for vtkCgShaderProgram:</div>
<div class="dynsection">
<p><center><img src="a08541.png" border="0" usemap="#a08542" alt="Inheritance graph"></center>
<map name="a08542">
<area shape="rect" href="a01537.html" title="vtkShaderProgram" alt="" coords="15,155,151,181"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="43,80,123,107"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="28,5,137,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for vtkCgShaderProgram:</div>
<div class="dynsection">
<p><center><img src="a08543.png" border="0" usemap="#a08544" alt="Collaboration graph"></center>
<map name="a08544">
<area shape="rect" href="a01537.html" title="vtkShaderProgram" alt="" coords="404,496,540,523"><area shape="rect" href="a01536.html" title="an adapter to pass generic vertex attributes to the rendering pipeline. .SECTION..." alt="" coords="551,587,724,614"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="381,96,461,123"><area shape="rect" href="a00285.html" title="create and manipulate unsorted lists of objects" alt="" coords="241,315,343,342"><area shape="rect" href="a00286.html" title="vtkCollectionElement" alt="" coords="72,190,221,216"><area shape="rect" href="a00287.html" title="iterator through a vtkCollection." alt="" coords="76,406,220,432"><area shape="rect" href="a01915.html" title="encapsulates a VTK Material description." alt="" coords="413,315,531,342"><area shape="rect" href="a01902.html" title="Represents an XML element and those nested inside." alt="" coords="348,190,495,216"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="300,6,409,32"><area shape="rect" href="a01719.html" title="record modification and/or execution time" alt="" coords="433,6,543,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="a08545.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
Cg Shader Program. 
<p>
<a class="el" href="a00260.html" title="Cg Shader Program.">vtkCgShaderProgram</a> allows vtkShaderProperty (later <a class="el" href="a01322.html" title="represent surface properties of a geometric object">vtkProperty</a>) to treat a vertex/fragment shader pair as a single unit for the purpose of setting their common material library and encapsulating shader operation: shader installation and variable initialization.<p>
Since the interface between Cg shaders is only resolved at runtime (shader runtime that is, after they've been installed on the card), Cg does not have the concept of a shader Program. This class simply delegates shader program functions to its delegate vtkCgShaders.<p>
<dl class="see" compact><dt><b>See also:</b></dt><dd>vtkShaderBase, <a class="el" href="a01532.html">vtkShader</a>, <a class="el" href="a00258.html" title="Cg Shader.">vtkCgShader</a>, <a class="el" href="a01537.html">vtkShaderProgram</a> </dd></dl>
<dl class="user" compact><dt><b>Thanks:</b></dt><dd>Shader support in VTK includes key contributions by Gary Templet at Sandia National Labs. </dd></dl>

<p>Definition at line <a class="el" href="a05167.html#l00052">52</a> of file <a class="el" href="a05167.html">vtkCgShaderProgram.h</a>.</p>
<table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public Types</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">typedef <a class="el" href="a01537.html">vtkShaderProgram</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#c9a503afcd951e0cd20ad089a0e1ffe1">Superclass</a></td></tr>

<tr><td colspan="2"><br><h2>Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#64c753bef91b29674391060ebfcc22e2">GetClassName</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#2ad96988fa3d5a2e5db2e07296de8875">IsA</a> (const char *type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#e23c0a0075c07cba47de303208715c96">PrintSelf</a> (ostream &amp;os, <a class="el" href="a00869.html">vtkIndent</a> indent)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#3f427d4d0f60ddd11208c2fde01b8aab">Render</a> (<a class="el" href="a00092.html">vtkActor</a> *, <a class="el" href="a01480.html">vtkRenderer</a> *)</td></tr>

<tr><td colspan="2"><br><h2>Static Public Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#507926385bf1803983c6fc41c8290a9c">IsTypeOf</a> (const char *type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a00260.html">vtkCgShaderProgram</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#2605c429eb17d60933a837131b72afee">SafeDownCast</a> (<a class="el" href="a01084.html">vtkObject</a> *o)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a00260.html">vtkCgShaderProgram</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#566aae0e3bfce667795d9981074d3fd2">New</a> ()</td></tr>

<tr><td colspan="2"><br><h2>Protected Member Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#afd374aec68d0026ec69ad2c33552377">vtkCgShaderProgram</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#1064c9b35ffcf49a1d9991522b344780">~vtkCgShaderProgram</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">virtual <a class="el" href="a01532.html">vtkShader</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00260.html#a5b62d0b80ba2748cef977b95b917b6e">NewShader</a> ()</td></tr>

</table>
<hr><h2>Member Typedef Documentation</h2>
<a class="anchor" name="c9a503afcd951e0cd20ad089a0e1ffe1"></a><!-- doxytag: member="vtkCgShaderProgram::Superclass" ref="c9a503afcd951e0cd20ad089a0e1ffe1" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">typedef <a class="el" href="a01537.html">vtkShaderProgram</a> <a class="el" href="a01537.html">vtkCgShaderProgram::Superclass</a>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a01537.html#e229120666ea1a55dbb470bc0d665fbe">vtkShaderProgram</a>.</p>

<p>Definition at line <a class="el" href="a05167.html#l00055">55</a> of file <a class="el" href="a05167.html">vtkCgShaderProgram.h</a>.</p>

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="afd374aec68d0026ec69ad2c33552377"></a><!-- doxytag: member="vtkCgShaderProgram::vtkCgShaderProgram" ref="afd374aec68d0026ec69ad2c33552377" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkCgShaderProgram::vtkCgShaderProgram           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="1064c9b35ffcf49a1d9991522b344780"></a><!-- doxytag: member="vtkCgShaderProgram::~vtkCgShaderProgram" ref="1064c9b35ffcf49a1d9991522b344780" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkCgShaderProgram::~vtkCgShaderProgram           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="64c753bef91b29674391060ebfcc22e2"></a><!-- doxytag: member="vtkCgShaderProgram::GetClassName" ref="64c753bef91b29674391060ebfcc22e2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* vtkCgShaderProgram::GetClassName           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a01537.html#6083eb52eb1d14eb314e62da46bff2ff">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="507926385bf1803983c6fc41c8290a9c"></a><!-- doxytag: member="vtkCgShaderProgram::IsTypeOf" ref="507926385bf1803983c6fc41c8290a9c" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int vtkCgShaderProgram::IsTypeOf           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return 1 if this class type is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. 
<p>Reimplemented from <a class="el" href="a01537.html#b9f4e82d93ed3fccbd133d535e48989e">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="2ad96988fa3d5a2e5db2e07296de8875"></a><!-- doxytag: member="vtkCgShaderProgram::IsA" ref="2ad96988fa3d5a2e5db2e07296de8875" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkCgShaderProgram::IsA           </td>
          <td>(</td>
          <td class="paramtype">const char *&nbsp;</td>
          <td class="paramname"> <em>name</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return 1 if this class is the same type of (or a subclass of) the named class. Returns 0 otherwise. This method works in combination with vtkTypeRevisionMacro found in vtkSetGet.h. 
<p>Reimplemented from <a class="el" href="a01537.html#56888b9401c4a0cecd4ad3e92151d253">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="2605c429eb17d60933a837131b72afee"></a><!-- doxytag: member="vtkCgShaderProgram::SafeDownCast" ref="2605c429eb17d60933a837131b72afee" args="(vtkObject *o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a00260.html">vtkCgShaderProgram</a>* vtkCgShaderProgram::SafeDownCast           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a01084.html">vtkObject</a> *&nbsp;</td>
          <td class="paramname"> <em>o</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Reimplemented from <a class="el" href="a01537.html#fa0c2999049dd62b79ed6a59aade432c">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="566aae0e3bfce667795d9981074d3fd2"></a><!-- doxytag: member="vtkCgShaderProgram::New" ref="566aae0e3bfce667795d9981074d3fd2" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a00260.html">vtkCgShaderProgram</a>* vtkCgShaderProgram::New           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [static]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Create an object with Debug turned off, modified time initialized to zero, and reference counting on. 
<p>Reimplemented from <a class="el" href="a01084.html#4d5b227267c076d6f9e38483370b6612">vtkObject</a>.</p>

</div>
</div><p>
<a class="anchor" name="e23c0a0075c07cba47de303208715c96"></a><!-- doxytag: member="vtkCgShaderProgram::PrintSelf" ref="e23c0a0075c07cba47de303208715c96" args="(ostream &amp;os, vtkIndent indent)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkCgShaderProgram::PrintSelf           </td>
          <td>(</td>
          <td class="paramtype">ostream &amp;&nbsp;</td>
          <td class="paramname"> <em>os</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00869.html">vtkIndent</a>&nbsp;</td>
          <td class="paramname"> <em>indent</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Methods invoked by print to print information about the object including superclasses. Typically not called by the user (use <a class="el" href="a01085.html#edadf6378465fd81c2592ef64262e2a5">Print()</a> instead) but used in the hierarchical print process to combine the output of several classes. 
<p>Reimplemented from <a class="el" href="a01537.html#c744ddf4e3597ff813f2f9eb67aa2677">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="3f427d4d0f60ddd11208c2fde01b8aab"></a><!-- doxytag: member="vtkCgShaderProgram::Render" ref="3f427d4d0f60ddd11208c2fde01b8aab" args="(vtkActor *, vtkRenderer *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual void vtkCgShaderProgram::Render           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00092.html">vtkActor</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a01480.html">vtkRenderer</a> *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Implements <a class="el" href="a01537.html#39b174c79d217b3a2eaccdec725039d5">vtkShaderProgram</a>.</p>

</div>
</div><p>
<a class="anchor" name="a5b62d0b80ba2748cef977b95b917b6e"></a><!-- doxytag: member="vtkCgShaderProgram::NewShader" ref="a5b62d0b80ba2748cef977b95b917b6e" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual <a class="el" href="a01532.html">vtkShader</a>* vtkCgShaderProgram::NewShader           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Creates and returns a new <a class="el" href="a00258.html" title="Cg Shader.">vtkCgShader</a>. 
<p>Implements <a class="el" href="a01537.html#4889410a0d0de847239c3bf5ed2c9d95">vtkShaderProgram</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>dox/Rendering/<a class="el" href="a05167.html">vtkCgShaderProgram.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 18:56:29 2009 for VTK by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.5.6 </small></address>
</body>
</html>