Sophie

Sophie

distrib > Mandriva > 2010.0 > i586 > media > contrib-release > by-pkgid > d5e74628f0e673bb8680aebce32b2c04 > files > 11498

itk-doc-3.12.0-1mdv2010.0.i586.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html><head><meta name="robots" content="noindex">
<meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1">
<title>ITK: itk::fem::FEMP&lt; T &gt; Class Template Reference</title>
<link href="DoxygenStyle.css" rel="stylesheet" type="text/css">
</head><body bgcolor="#ffffff">


<!--  Section customized for INSIGHT : Tue Jul 17 01:02:45 2001 -->
<center>
<a href="index.html" class="qindex">Main Page</a>&nbsp;&nbsp; 
<a href="modules.html" class="qindex">Groups</a>&nbsp;&nbsp;
<a href="namespaces.html" class="qindex">Namespace List</a>&nbsp;&nbsp;
<a href="hierarchy.html" class="qindex">Class Hierarchy</a>&nbsp;&nbsp;
<a href="classes.html" class="qindex">Alphabetical List</a>&nbsp;&nbsp;
<a href="annotated.html" class="qindex">Compound List</a>&nbsp;&nbsp; 
<a href="files.html" class="qindex">File
List</a>&nbsp;&nbsp; 
<a href="namespacemembers.html" class="qindex">Namespace Members</a>&nbsp;&nbsp; 
<a href="functions.html" class="qindex">Compound Members</a>&nbsp;&nbsp; 
<a href="globals.html" class="qindex">File Members</a>&nbsp;&nbsp;
<a href="pages.html" class="qindex">Concepts</a></center>


<!-- Generated by Doxygen 1.5.9 -->
  <div class="navpath"><a class="el" href="namespaceitk.html">itk</a>::<a class="el" href="namespaceitk_1_1fem.html">fem</a>::<a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>
  </div>
<div class="contents">
<h1>itk::fem::FEMP&lt; T &gt; Class Template Reference</h1><!-- doxytag: class="itk::fem::FEMP" -->Pointer used to store polymorphic elements in STL arrays.  
<a href="#_details">More...</a>
<p>
<code>#include &lt;<a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>&gt;</code>
<p>

<p>
<a href="classitk_1_1fem_1_1FEMP-members.html">List of all members.</a><table border="0" cellpadding="0" cellspacing="0">
<tr><td></td></tr>
<tr><td colspan="2"><br><h2>Public 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="classitk_1_1fem_1_1FEMP.html#d11e3b551625498d578424ca75e6be87">FEMP</a> (typename <a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a> x)</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#fa30291203cbe8757f857aaf85a44e5d">FEMP</a> ()</td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">bool&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#76c0b24ef12222935e4036f1a7620c21">IsNULL</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#ba5c232fe12b9fa9e5e4e8c1babd8008">operator T *</a> () const </td></tr>

<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a>&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#45b0daf938929f39a9e4065c2da4dac1">operator-&gt;</a> () const </td></tr>

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

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#f17997734c17f055ce9bf70ed8695107">FEMP</a> (const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a> &amp;x)</td></tr>

<tr><td colspan="2"><div class="groupHeader"></div></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a> &amp;&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="classitk_1_1fem_1_1FEMP.html#2c318caf112435284d205b155e2515a8">operator=</a> (const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a> &amp;rhs)</td></tr>

</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
<h3>template&lt;class T&gt;<br>
 class itk::fem::FEMP&lt; T &gt;</h3>

Pointer used to store polymorphic elements in STL arrays. 
<p>
<a class="el" href="classitk_1_1fem_1_1FEMP.html" title="Pointer used to store polymorphic elements in STL arrays.">FEMP</a> holds a pointer to objects of class T and its derived classes. it behaves like a special kind of pointer. Special pointers to object can be used to store polymorphic arrays in STL. The basic idea of the special pointer is: whatever you do to the pointer (object of class <a class="el" href="classitk_1_1fem_1_1FEMP.html" title="Pointer used to store polymorphic elements in STL arrays.">FEMP</a>), is also reflected on the object within (pointed to by m_Data member). For example: if you copy the special pointer, an object within is also copied.<p>
Class T should have a member Clone() which produces a copy of an object. This is important in polymorphic classes, where object of the derived class should be created when copying an existing object.<p>
Class T should also include typedefs <a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a> and <a class="el" href="itkFEMMacro_8h.html#68fafcc6909430ccd70cbc4aeee0107c">T::ConstPointer</a> that define standard pointers to the class. Note that these could be <a class="el" href="classitk_1_1SmartPointer.html" title="Implements transparent reference counting.">SmartPointer</a> classes. 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00043">43</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>
<hr><h2>Constructor &amp; Destructor Documentation</h2>
<a class="anchor" name="fa30291203cbe8757f857aaf85a44e5d"></a><!-- doxytag: member="itk::fem::FEMP::FEMP" ref="fa30291203cbe8757f857aaf85a44e5d" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::<a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Default constructor makes sure that m_Data is 0, to prevent problems when deleting m_Data object on destruction. 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00052">52</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="f17997734c17f055ce9bf70ed8695107"></a><!-- doxytag: member="itk::fem::FEMP::FEMP" ref="f17997734c17f055ce9bf70ed8695107" args="(const FEMP &amp;x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::<a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>x</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Copy constructor. Clone() method is called to duplicate the existing object. 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00060">60</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="d11e3b551625498d578424ca75e6be87"></a><!-- doxytag: member="itk::fem::FEMP::FEMP" ref="d11e3b551625498d578424ca75e6be87" args="(typename T::Pointer x)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::<a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>           </td>
          <td>(</td>
          <td class="paramtype">typename <a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a>&nbsp;</td>
          <td class="paramname"> <em>x</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline, explicit]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Conversion constructor from <a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a> to FEMP&lt;T&gt;. The object T* must exist and we take ownership of object T*. If you want to create a copy of object and take ownership of that, use: <a class="el" href="classitk_1_1fem_1_1FEMP.html" title="Pointer used to store polymorphic elements in STL arrays.">FEMP</a>(x-&gt;Clone()) instead of FEMP(x). 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00079">79</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="fbe1ef85178d0cc286101d1d4754eb8a"></a><!-- doxytag: member="itk::fem::FEMP::~FEMP" ref="fbe1ef85178d0cc286101d1d4754eb8a" args="()" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::~<a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Destructor of a special pointer class also destroys the actual object. 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00085">85</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<hr><h2>Member Function Documentation</h2>
<a class="anchor" name="76c0b24ef12222935e4036f1a7620c21"></a><!-- doxytag: member="itk::fem::FEMP::IsNULL" ref="76c0b24ef12222935e4036f1a7620c21" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">bool <a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::IsNULL           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Return true if special pointer actually points to a valid object and false otherwise. 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00115">115</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="ba5c232fe12b9fa9e5e4e8c1babd8008"></a><!-- doxytag: member="itk::fem::FEMP::operator T *" ref="ba5c232fe12b9fa9e5e4e8c1babd8008" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::operator T *           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Dereferencing operator provides automatic conversion from special to standard pointer to object 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00106">106</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="45b0daf938929f39a9e4065c2da4dac1"></a><!-- doxytag: member="itk::fem::FEMP::operator&#45;&gt;" ref="45b0daf938929f39a9e4065c2da4dac1" args="() const " -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname"><a class="el" href="itkFEMMacro_8h.html#539cce1a3282ba59952dedcbf9cdb23f">T::Pointer</a> <a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::operator-&gt;           </td>
          <td>(</td>
          <td class="paramname">          </td>
          <td>&nbsp;)&nbsp;</td>
          <td> const<code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Easy access to members of stored object 
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00100">100</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<a class="anchor" name="2c318caf112435284d205b155e2515a8"></a><!-- doxytag: member="itk::fem::FEMP::operator=" ref="2c318caf112435284d205b155e2515a8" args="(const FEMP &amp;rhs)" -->
<div class="memitem">
<div class="memproto">
<div class="memtemplate">
template&lt;class T &gt; </div>
      <table class="memname">
        <tr>
          <td class="memname">const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>&lt; T &gt; &amp; <a class="el" href="classitk_1_1fem_1_1FEMP.html">itk::fem::FEMP</a>&lt; T &gt;::operator=           </td>
          <td>(</td>
          <td class="paramtype">const <a class="el" href="classitk_1_1fem_1_1FEMP.html">FEMP</a>&lt; T &gt; &amp;&nbsp;</td>
          <td class="paramname"> <em>rhs</em>          </td>
          <td>&nbsp;)&nbsp;</td>
          <td><code> [inline]</code></td>
        </tr>
      </table>
</div>
<div class="memdoc">

<p>
Asignment operator 
<p>
Self assignments don't make sense.<p>
First destroy the existing object on the left hand side<p>
Then clone the one on the right hand side of the expression (if not NULL).
<p>Definition at line <a class="el" href="itkFEMP_8h_source.html#l00130">130</a> of file <a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a>.</p>

</div>
</div><p>
<hr>The documentation for this class was generated from the following file:<ul>
<li><a class="el" href="itkFEMP_8h_source.html">itkFEMP.h</a></ul>
</div>
<hr><address><small>
Generated at Fri May 8 08:40:14 2009 for ITK  by <a href="http://www.stack.nl/~dimitri/doxygen/index.html"> <img 
src="http://www.stack.nl/~dimitri/doxygen/doxygen.png" alt="doxygen"
align="middle" border=0 width=110 height=53>
</a> 1.5.9 written by <a href="mailto:dimitri@stack.nl">Dimitri van Heesch</a>,
 &copy;&nbsp;1997-2000</small></address>
</body>
</html>