Sophie

Sophie

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

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: vtkProgrammableSource 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>vtkProgrammableSource Class Reference</h1><!-- doxytag: class="vtkProgrammableSource" --><!-- doxytag: inherits="vtkDataSetAlgorithm" --><code>#include &lt;<a class="el" href="a04416.html">vtkProgrammableSource.h</a>&gt;</code>
<p>
<div class="dynheader">
Inheritance diagram for vtkProgrammableSource:</div>
<div class="dynsection">
<p><center><img src="a13468.png" border="0" usemap="#a13469" alt="Inheritance graph"></center>
<map name="a13469">
<area shape="rect" href="a00375.html" title="Superclass for algorithms that produce output of the same type as input." alt="" coords="19,229,165,256"><area shape="rect" href="a00101.html" title="Superclass for all sources, filters, and sinks in VTK." alt="" coords="43,155,141,181"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="52,80,132,107"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="37,5,147,32"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>
<div class="dynheader">
Collaboration diagram for vtkProgrammableSource:</div>
<div class="dynsection">
<p><center><img src="a13470.png" border="0" usemap="#a13471" alt="Collaboration graph"></center>
<map name="a13471">
<area shape="rect" href="a00375.html" title="Superclass for algorithms that produce output of the same type as input." alt="" coords="164,499,311,525"><area shape="rect" href="a00101.html" title="Superclass for all sources, filters, and sinks in VTK." alt="" coords="226,381,324,408"><area shape="rect" href="a00472.html" title="Superclass for all pipeline executives in VTK." alt="" coords="378,499,476,525"><area shape="rect" href="a01084.html" title="abstract base class for most VTK objects" alt="" coords="398,173,478,200"><area shape="rect" href="a00895.html" title="Store zero or more vtkInformation instances." alt="" coords="363,264,512,291"><area shape="rect" href="a00872.html" title="Store vtkAlgorithm input/output information." alt="" coords="159,264,268,291"><area shape="rect" href="a01085.html" title="abstract base class for most VTK objects" alt="" coords="203,5,312,32"><area shape="rect" href="a00884.html" title="internal structure for vtkInformation" alt="" coords="6,173,168,200"><area shape="rect" href="a00886.html" title="Superclass for vtkInformation keys." alt="" coords="192,83,323,109"><area shape="rect" href="a01719.html" title="record modification and/or execution time" alt="" coords="559,83,668,109"><area shape="rect" href="a00891.html" title="Key for pointer to pointer." alt="" coords="192,173,374,200"></map>
<center><font size="2">[<a href="graph_legend.html">legend</a>]</font></center></div>

<p>
<a href="a13472.html">List of all members.</a><hr><a name="_details"></a><h2>Detailed Description</h2>
generate source dataset via a user-specified function 
<p>
<a class="el" href="a01313.html" title="generate source dataset via a user-specified function">vtkProgrammableSource</a> is a source object that is programmable by the user. To use this object, you must specify a function that creates the output. It is possible to generate an output dataset of any (concrete) type; it is up to the function to properly initialize and define the output. Typically, you use one of the methods to get a concrete output type (e.g., <a class="el" href="a01313.html#445841a7f6a930a8d4d8d87ffee3d072">GetPolyDataOutput()</a> or <a class="el" href="a01313.html#9f7f35d302921ab1bec2b03fb52a09f6">GetStructuredPointsOutput()</a>), and then manipulate the output in the user-specified function.<p>
Example use of this include writing a function to read a data file or interface to another system. (You might want to do this in favor of deriving a new class.) Another important use of this class is that it allows users of interpreters (e.g., Tcl or Java) the ability to write source objects without having to recompile C++ code or generate new libraries. <dl class="see" compact><dt><b>See also:</b></dt><dd><a class="el" href="a01311.html" title="a user-programmable filter">vtkProgrammableFilter</a> <a class="el" href="a01309.html" title="manipulate attribute (cell and point) data via a user-specified function">vtkProgrammableAttributeDataFilter</a> <a class="el" href="a01310.html" title="generate source data object via a user-specified function">vtkProgrammableDataObjectSource</a></dd></dl>
<dl class="user" compact><dt><b>Tests:</b></dt><dd><a class="el" href="c2_vtk_t_12.html#c2_vtk_t_vtkProgrammableSource">vtkProgrammableSource (Tests)</a> </dd></dl>

<p>Definition at line <a class="el" href="a04416.html#l00051">51</a> of file <a class="el" href="a04416.html">vtkProgrammableSource.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="a00375.html">vtkDataSetAlgorithm</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#ca863fc506a60e6ae34924be97a383c1">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="a01313.html#f84719f7141f9073f9acb3f4be7527b3">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="a01313.html#9614a1ea9dc68d1420d4c0d04f58da49">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="a01313.html#664553eb4aabb985e7f111da20661584">SetExecuteMethod</a> (void(*f)(void *), void *arg)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#99873c27e2d84fc0a7a0370790455bcb">SetExecuteMethodArgDelete</a> (void(*f)(void *))</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#e4d472cef8898588cf2bfec4676ab31f">SetRequestInformationMethod</a> (void(*f)(void *))</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01260.html">vtkPolyData</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#445841a7f6a930a8d4d8d87ffee3d072">GetPolyDataOutput</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01635.html">vtkStructuredPoints</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#9f7f35d302921ab1bec2b03fb52a09f6">GetStructuredPointsOutput</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01625.html">vtkStructuredGrid</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#62822924dd7b5d0fed4dc4f7d4e88da7">GetStructuredGridOutput</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01789.html">vtkUnstructuredGrid</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#bba64395bc04be56d86fb3cc3adfe509">GetUnstructuredGridOutput</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01460.html">vtkRectilinearGrid</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#6a76b06a3523e43e514b97c3e068883f">GetRectilinearGridOutput</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 <a class="el" href="a01313.html">vtkProgrammableSource</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#48e9b714131b4defa75e4bf1899b06c3">New</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#fdd3a3edd5665f2c344476d947c5d592">IsTypeOf</a> (const char *type)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">static <a class="el" href="a01313.html">vtkProgrammableSource</a> *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#aaad28cb1f797e578dfd3b1e99965d3e">SafeDownCast</a> (<a class="el" href="a01084.html">vtkObject</a> *o)</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="a01313.html#5b2a7e3122ba8fb8edf20222bf28fad5">vtkProgrammableSource</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#98f86fb4440133e8803e344676bccd42">~vtkProgrammableSource</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="a01313.html#412022201d84a62f238782b2fef2d5b0">RequestData</a> (<a class="el" href="a00872.html">vtkInformation</a> *, <a class="el" href="a00895.html">vtkInformationVector</a> **, <a class="el" href="a00895.html">vtkInformationVector</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="a01313.html#77a7c9dcd0715085602a52279a58d3d6">RequestDataObject</a> (<a class="el" href="a00872.html">vtkInformation</a> *, <a class="el" href="a00895.html">vtkInformationVector</a> **, <a class="el" href="a00895.html">vtkInformationVector</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="a01313.html#9666c36a0ccc6cbcb9ccd4854c9e4a8e">RequestInformation</a> (<a class="el" href="a00872.html">vtkInformation</a> *, <a class="el" href="a00895.html">vtkInformationVector</a> **, <a class="el" href="a00895.html">vtkInformationVector</a> *)</td></tr>

<tr><td colspan="2"><br><h2>Protected Attributes</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#2e9e478ceb2ec927233de2e09896f30c">ExecuteMethod</a> )(void *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#50fdc12c1048d865c1e6a9a8e7b1b2aa">ExecuteMethodArgDelete</a> )(void *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#a28d27a7b22ce0383c78941e5bb47f91">ExecuteMethodArg</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#58880b1416301913d4685f281a19d7b2">RequestInformationMethod</a> )(void *)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="a01719.html">vtkTimeStamp</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#8c93a00be5d437ce285cc111e3a3d3e2">ExecuteTime</a></td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a01313.html#2f8c654ba4e8c468e7843fc31354c757">RequestedDataType</a></td></tr>

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

<p>

<p>Reimplemented from <a class="el" href="a00375.html#5b6a74f37b2c42dea75a05209b3e69bc">vtkDataSetAlgorithm</a>.</p>

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

</div>
</div><p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="5b2a7e3122ba8fb8edf20222bf28fad5"></a><!-- doxytag: member="vtkProgrammableSource::vtkProgrammableSource" ref="5b2a7e3122ba8fb8edf20222bf28fad5" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkProgrammableSource::vtkProgrammableSource           </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="98f86fb4440133e8803e344676bccd42"></a><!-- doxytag: member="vtkProgrammableSource::~vtkProgrammableSource" ref="98f86fb4440133e8803e344676bccd42" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">vtkProgrammableSource::~vtkProgrammableSource           </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="48e9b714131b4defa75e4bf1899b06c3"></a><!-- doxytag: member="vtkProgrammableSource::New" ref="48e9b714131b4defa75e4bf1899b06c3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a01313.html">vtkProgrammableSource</a>* vtkProgrammableSource::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="a00375.html#366c8a9b4e61249c93fd2f7a492de9cb">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="f84719f7141f9073f9acb3f4be7527b3"></a><!-- doxytag: member="vtkProgrammableSource::GetClassName" ref="f84719f7141f9073f9acb3f4be7527b3" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual const char* vtkProgrammableSource::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="a00375.html#d0ae046484ba6d268bdb67ad536260c8">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="fdd3a3edd5665f2c344476d947c5d592"></a><!-- doxytag: member="vtkProgrammableSource::IsTypeOf" ref="fdd3a3edd5665f2c344476d947c5d592" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static int vtkProgrammableSource::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="a00375.html#f86c68af773c12e38dad90f2afc7579a">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="9614a1ea9dc68d1420d4c0d04f58da49"></a><!-- doxytag: member="vtkProgrammableSource::IsA" ref="9614a1ea9dc68d1420d4c0d04f58da49" args="(const char *type)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkProgrammableSource::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="a00375.html#420be20e4ddd9cc9184f09eec0f67a32">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="aaad28cb1f797e578dfd3b1e99965d3e"></a><!-- doxytag: member="vtkProgrammableSource::SafeDownCast" ref="aaad28cb1f797e578dfd3b1e99965d3e" args="(vtkObject *o)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">static <a class="el" href="a01313.html">vtkProgrammableSource</a>* vtkProgrammableSource::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="a00375.html#3ba4f479dbf92dc937f8b6309e16dbea">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="664553eb4aabb985e7f111da20661584"></a><!-- doxytag: member="vtkProgrammableSource::SetExecuteMethod" ref="664553eb4aabb985e7f111da20661584" args="(void(*f)(void *), void *arg)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkProgrammableSource::SetExecuteMethod           </td>
          <td>(</td>
          <td class="paramtype">void(*)(void *)&nbsp;</td>
          <td class="paramname"> <em>f</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">void *&nbsp;</td>
          <td class="paramname"> <em>arg</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Specify the function to use to generate the source data. Note that the function takes a single (void *) argument. 
</div>
</div><p>
<a class="anchor" name="99873c27e2d84fc0a7a0370790455bcb"></a><!-- doxytag: member="vtkProgrammableSource::SetExecuteMethodArgDelete" ref="99873c27e2d84fc0a7a0370790455bcb" args="(void(*f)(void *))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkProgrammableSource::SetExecuteMethodArgDelete           </td>
          <td>(</td>
          <td class="paramtype">void(*)(void *)&nbsp;</td>
          <td class="paramname"> <em>f</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Set the arg delete method. This is used to free user memory. 
</div>
</div><p>
<a class="anchor" name="e4d472cef8898588cf2bfec4676ab31f"></a><!-- doxytag: member="vtkProgrammableSource::SetRequestInformationMethod" ref="e4d472cef8898588cf2bfec4676ab31f" args="(void(*f)(void *))" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void vtkProgrammableSource::SetRequestInformationMethod           </td>
          <td>(</td>
          <td class="paramtype">void(*)(void *)&nbsp;</td>
          <td class="paramname"> <em>f</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Specify the function to use to fill in information about the source data. 
</div>
</div><p>
<a class="anchor" name="445841a7f6a930a8d4d8d87ffee3d072"></a><!-- doxytag: member="vtkProgrammableSource::GetPolyDataOutput" ref="445841a7f6a930a8d4d8d87ffee3d072" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01260.html">vtkPolyData</a>* vtkProgrammableSource::GetPolyDataOutput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the output as a concrete type. This method is typically used by the writer of the source function to get the output as a particular type (i.e., it essentially does type casting). It is the users responsibility to know the correct type of the output data. 
<p>Reimplemented from <a class="el" href="a00375.html#5f6ea760945aaf0eae8ef9f359ab3c27">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="9f7f35d302921ab1bec2b03fb52a09f6"></a><!-- doxytag: member="vtkProgrammableSource::GetStructuredPointsOutput" ref="9f7f35d302921ab1bec2b03fb52a09f6" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01635.html">vtkStructuredPoints</a>* vtkProgrammableSource::GetStructuredPointsOutput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the output as a concrete type. 
<p>Reimplemented from <a class="el" href="a00375.html#fd9a3b968ad49716e02abce77dda8892">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="62822924dd7b5d0fed4dc4f7d4e88da7"></a><!-- doxytag: member="vtkProgrammableSource::GetStructuredGridOutput" ref="62822924dd7b5d0fed4dc4f7d4e88da7" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01625.html">vtkStructuredGrid</a>* vtkProgrammableSource::GetStructuredGridOutput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the output as a concrete type. 
<p>Reimplemented from <a class="el" href="a00375.html#aa1211551c4b9068c480770197772f89">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="bba64395bc04be56d86fb3cc3adfe509"></a><!-- doxytag: member="vtkProgrammableSource::GetUnstructuredGridOutput" ref="bba64395bc04be56d86fb3cc3adfe509" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01789.html">vtkUnstructuredGrid</a>* vtkProgrammableSource::GetUnstructuredGridOutput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the output as a concrete type. 
<p>Reimplemented from <a class="el" href="a00375.html#eb20a61ba8aa05572998f97216c3b540">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="6a76b06a3523e43e514b97c3e068883f"></a><!-- doxytag: member="vtkProgrammableSource::GetRectilinearGridOutput" ref="6a76b06a3523e43e514b97c3e068883f" args="()" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01460.html">vtkRectilinearGrid</a>* vtkProgrammableSource::GetRectilinearGridOutput           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Get the output as a concrete type. 
<p>Reimplemented from <a class="el" href="a00375.html#e5ae029db7c2f937dde00025c6027f30">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="412022201d84a62f238782b2fef2d5b0"></a><!-- doxytag: member="vtkProgrammableSource::RequestData" ref="412022201d84a62f238782b2fef2d5b0" args="(vtkInformation *, vtkInformationVector **, vtkInformationVector *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkProgrammableSource::RequestData           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00872.html">vtkInformation</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is called within ProcessRequest when a request asks the algorithm to do its work. This is the method you should override to do whatever the algorithm is designed to do. This happens during the fourth pass in the pipeline execution process. 
<p>Reimplemented from <a class="el" href="a00375.html#49f7d102eea1f3c58aae7281a1b708cc">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="77a7c9dcd0715085602a52279a58d3d6"></a><!-- doxytag: member="vtkProgrammableSource::RequestDataObject" ref="77a7c9dcd0715085602a52279a58d3d6" args="(vtkInformation *, vtkInformationVector **, vtkInformationVector *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkProgrammableSource::RequestDataObject           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00872.html">vtkInformation</a> *&nbsp;</td>
          <td class="paramname"> <em>request</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> **&nbsp;</td>
          <td class="paramname"> <em>inputVector</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> *&nbsp;</td>
          <td class="paramname"> <em>outputVector</em></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is called within ProcessRequest to when a request asks the algorithm to create empty output data objects. This typically happens early on in the execution of the pipeline. The default behavior is to create an output DataSet of the same type as the input for each output port. This method can be overridden to change the output data type of an algorithm. This happens in the third pass of the pipeline execution. 
<p>Reimplemented from <a class="el" href="a00375.html#46ee50f2d82eecec465c0e86d5a43be6">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<a class="anchor" name="9666c36a0ccc6cbcb9ccd4854c9e4a8e"></a><!-- doxytag: member="vtkProgrammableSource::RequestInformation" ref="9666c36a0ccc6cbcb9ccd4854c9e4a8e" args="(vtkInformation *, vtkInformationVector **, vtkInformationVector *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">virtual int vtkProgrammableSource::RequestInformation           </td>
          <td>(</td>
          <td class="paramtype"><a class="el" href="a00872.html">vtkInformation</a> *&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> **&nbsp;</td>
          <td class="paramname">, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype"><a class="el" href="a00895.html">vtkInformationVector</a> *&nbsp;</td>
          <td class="paramname"></td><td>&nbsp;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td><td><code> [protected, virtual]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
This is called within ProcessRequest when a request asks for Information. Typically an algorithm provides whatever lightweight information about its output that it can here without doing any lengthy computations. This happens in the first pass of the pipeline execution. 
<p>Reimplemented from <a class="el" href="a00375.html#bc14b3083747150d3706494dbed47813">vtkDataSetAlgorithm</a>.</p>

</div>
</div><p>
<hr><h2>Member Data Documentation</h2>
<a class="anchor" name="2e9e478ceb2ec927233de2e09896f30c"></a><!-- doxytag: member="vtkProgrammableSource::ExecuteMethod" ref="2e9e478ceb2ec927233de2e09896f30c" args=")(void *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="a01313.html#2e9e478ceb2ec927233de2e09896f30c">vtkProgrammableSource::ExecuteMethod</a>)(void *)<code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="50fdc12c1048d865c1e6a9a8e7b1b2aa"></a><!-- doxytag: member="vtkProgrammableSource::ExecuteMethodArgDelete" ref="50fdc12c1048d865c1e6a9a8e7b1b2aa" args=")(void *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="a01313.html#50fdc12c1048d865c1e6a9a8e7b1b2aa">vtkProgrammableSource::ExecuteMethodArgDelete</a>)(void *)<code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="a28d27a7b22ce0383c78941e5bb47f91"></a><!-- doxytag: member="vtkProgrammableSource::ExecuteMethodArg" ref="a28d27a7b22ce0383c78941e5bb47f91" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void* <a class="el" href="a01313.html#a28d27a7b22ce0383c78941e5bb47f91">vtkProgrammableSource::ExecuteMethodArg</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a04416.html#l00096">96</a> of file <a class="el" href="a04416.html">vtkProgrammableSource.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="58880b1416301913d4685f281a19d7b2"></a><!-- doxytag: member="vtkProgrammableSource::RequestInformationMethod" ref="58880b1416301913d4685f281a19d7b2" args=")(void *)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="a01313.html#58880b1416301913d4685f281a19d7b2">vtkProgrammableSource::RequestInformationMethod</a>)(void *)<code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

</div>
</div><p>
<a class="anchor" name="8c93a00be5d437ce285cc111e3a3d3e2"></a><!-- doxytag: member="vtkProgrammableSource::ExecuteTime" ref="8c93a00be5d437ce285cc111e3a3d3e2" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="a01719.html">vtkTimeStamp</a> <a class="el" href="a01313.html#8c93a00be5d437ce285cc111e3a3d3e2">vtkProgrammableSource::ExecuteTime</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a04416.html#l00099">99</a> of file <a class="el" href="a04416.html">vtkProgrammableSource.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="2f8c654ba4e8c468e7843fc31354c757"></a><!-- doxytag: member="vtkProgrammableSource::RequestedDataType" ref="2f8c654ba4e8c468e7843fc31354c757" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int <a class="el" href="a01313.html#2f8c654ba4e8c468e7843fc31354c757">vtkProgrammableSource::RequestedDataType</a><code> [protected]</code>          </td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>

<p>Definition at line <a class="el" href="a04416.html#l00100">100</a> of file <a class="el" href="a04416.html">vtkProgrammableSource.h</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li>dox/Graphics/<a class="el" href="a04416.html">vtkProgrammableSource.h</a></ul>
</div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 19:27:21 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>