Sophie

Sophie

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

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: dox/Common/vtkDataArrayTemplate.h Source File</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><a href="classes.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
    </ul>
  </div>
<h1>dox/Common/vtkDataArrayTemplate.h</h1><a href="a02009.html">Go to the documentation of this file.</a><div class="fragment"><pre class="fragment"><a name="l00001"></a>00001 <span class="comment">/*=========================================================================</span>
<a name="l00002"></a>00002 <span class="comment"></span>
<a name="l00003"></a>00003 <span class="comment">  Program:   Visualization Toolkit</span>
<a name="l00004"></a>00004 <span class="comment">  Module:    $RCSfile: vtkDataArrayTemplate.h,v $</span>
<a name="l00005"></a>00005 <span class="comment"></span>
<a name="l00006"></a>00006 <span class="comment">  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen</span>
<a name="l00007"></a>00007 <span class="comment">  All rights reserved.</span>
<a name="l00008"></a>00008 <span class="comment">  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.</span>
<a name="l00009"></a>00009 <span class="comment"></span>
<a name="l00010"></a>00010 <span class="comment">     This software is distributed WITHOUT ANY WARRANTY; without even</span>
<a name="l00011"></a>00011 <span class="comment">     the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR</span>
<a name="l00012"></a>00012 <span class="comment">     PURPOSE.  See the above copyright notice for more information.</span>
<a name="l00013"></a>00013 <span class="comment"></span>
<a name="l00014"></a>00014 <span class="comment">=========================================================================*/</span>
<a name="l00023"></a>00023 <span class="preprocessor">#ifndef __vtkDataArrayTemplate_h</span>
<a name="l00024"></a>00024 <span class="preprocessor"></span><span class="preprocessor">#define __vtkDataArrayTemplate_h</span>
<a name="l00025"></a>00025 <span class="preprocessor"></span>
<a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="a02005.html">vtkDataArray.h</a>"</span>
<a name="l00027"></a>00027 
<a name="l00028"></a>00028 <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;
<a name="l00029"></a>00029 <span class="keyword">class </span>vtkDataArrayTemplateLookup;
<a name="l00030"></a>00030 
<a name="l00031"></a>00031 <span class="keyword">template</span> &lt;<span class="keyword">class</span> T&gt;
<a name="l00032"></a><a class="code" href="a00360.html">00032</a> <span class="keyword">class </span><a class="code" href="a00360.html" title="Implementation template for vtkDataArray.">vtkDataArrayTemplate</a>: <span class="keyword">public</span> <a class="code" href="a00356.html" title="abstract superclass for arrays of numeric data">vtkDataArray</a>
<a name="l00033"></a>00033 {
<a name="l00034"></a>00034 <span class="keyword">public</span>:
<a name="l00035"></a><a class="code" href="a00360.html#5391df5d0a6c78ba40a67c36c2b84108">00035</a>   <span class="keyword">typedef</span> <a class="code" href="a00356.html" title="abstract superclass for arrays of numeric data">vtkDataArray</a> <a class="code" href="a01084.html" title="abstract base class for most VTK objects">Superclass</a>;
<a name="l00036"></a>00036   <span class="keywordtype">void</span> <a class="code" href="a00360.html#ddf1b6e26ce0d82186dce5bcfbdd4397">PrintSelf</a>(ostream&amp; os, <a class="code" href="a00869.html" title="a simple class to control print indentation">vtkIndent</a> indent);
<a name="l00037"></a>00037 
<a name="l00040"></a>00040   <span class="keywordtype">int</span> <a class="code" href="a00360.html#f11f141034ebd92193913f2b1f960483">Allocate</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> sz, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> ext=1000);
<a name="l00041"></a>00041 
<a name="l00043"></a>00043   <span class="keywordtype">void</span> <a class="code" href="a00360.html#eb23c980e85dd41546ff8809025d2b47">Initialize</a>();
<a name="l00044"></a>00044 
<a name="l00046"></a><a class="code" href="a00360.html#a1d90809b09fcb6d806ff81cd66d5583">00046</a>   <span class="keywordtype">int</span> <a class="code" href="a00360.html#a1d90809b09fcb6d806ff81cd66d5583">GetDataTypeSize</a>() { <span class="keywordflow">return</span> <span class="keyword">static_cast&lt;</span><span class="keywordtype">int</span><span class="keyword">&gt;</span>(<span class="keyword">sizeof</span>(T)); }
<a name="l00047"></a>00047 
<a name="l00049"></a>00049   <span class="keywordtype">void</span> <a class="code" href="a00360.html#8ad749d37de98b017848959bc4e15bbc">SetNumberOfTuples</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> number);
<a name="l00050"></a>00050 
<a name="l00056"></a>00056   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#99f85b2f4c5a75c915091beb458d8cb8">SetTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> j, <a class="code" href="a00081.html" title="Abstract superclass for all arrays.">vtkAbstractArray</a>* <a class="code" href="a02995.html#7c22aa18a4e42c330618a6410d133551">source</a>);
<a name="l00057"></a>00057 
<a name="l00061"></a>00061   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#2ed0c8b806c2e7e637664f4ae97fe2c6">InsertTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> j, <a class="code" href="a00081.html" title="Abstract superclass for all arrays.">vtkAbstractArray</a>* <a class="code" href="a02995.html#7c22aa18a4e42c330618a6410d133551">source</a>);
<a name="l00062"></a>00062 
<a name="l00066"></a>00066   <span class="keyword">virtual</span> <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#5f9699259532c140e32bf919cb5f2b11">InsertNextTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> j, <a class="code" href="a00081.html" title="Abstract superclass for all arrays.">vtkAbstractArray</a>* <a class="code" href="a02995.html#7c22aa18a4e42c330618a6410d133551">source</a>);
<a name="l00067"></a>00067   
<a name="l00070"></a>00070   <span class="keywordtype">double</span>* <a class="code" href="a00360.html#5ff3510c2cdba6804480b2f4813e283d">GetTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i);
<a name="l00071"></a>00071 
<a name="l00073"></a>00073 
<a name="l00074"></a>00074   <span class="keywordtype">void</span> <a class="code" href="a00360.html#5ff3510c2cdba6804480b2f4813e283d">GetTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keywordtype">double</span>* tuple);
<a name="l00075"></a>00075   <span class="keywordtype">void</span> <a class="code" href="a00360.html#288bac16d0b1dc6cc129dd88e4806134">GetTupleValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, T* tuple);
<a name="l00077"></a>00077 
<a name="l00079"></a>00079 
<a name="l00080"></a>00080   <span class="keywordtype">void</span> <a class="code" href="a00360.html#99f85b2f4c5a75c915091beb458d8cb8">SetTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> <span class="keywordtype">float</span>* tuple);
<a name="l00081"></a>00081   <span class="keywordtype">void</span> <a class="code" href="a00360.html#99f85b2f4c5a75c915091beb458d8cb8">SetTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> <span class="keywordtype">double</span>* tuple);
<a name="l00082"></a>00082   <span class="keywordtype">void</span> <a class="code" href="a00360.html#c13188aff61d9149cdce9b58c17ef4f3">SetTupleValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> T* tuple);
<a name="l00084"></a>00084 
<a name="l00086"></a>00086 
<a name="l00088"></a>00088   <span class="keywordtype">void</span> <a class="code" href="a00360.html#2ed0c8b806c2e7e637664f4ae97fe2c6">InsertTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> <span class="keywordtype">float</span>* tuple);
<a name="l00089"></a>00089   <span class="keywordtype">void</span> <a class="code" href="a00360.html#2ed0c8b806c2e7e637664f4ae97fe2c6">InsertTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> <span class="keywordtype">double</span>* tuple);
<a name="l00090"></a>00090   <span class="keywordtype">void</span> <a class="code" href="a00360.html#22052c187054dcab13475f399fdee3b7">InsertTupleValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keyword">const</span> T* tuple);
<a name="l00092"></a>00092 
<a name="l00094"></a>00094 
<a name="l00096"></a>00096   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#5f9699259532c140e32bf919cb5f2b11">InsertNextTuple</a>(<span class="keyword">const</span> <span class="keywordtype">float</span>* tuple);
<a name="l00097"></a>00097   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#5f9699259532c140e32bf919cb5f2b11">InsertNextTuple</a>(<span class="keyword">const</span> <span class="keywordtype">double</span>* tuple);
<a name="l00098"></a>00098   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#5a7d55451797054162303a3099941a92">InsertNextTupleValue</a>(<span class="keyword">const</span> T* tuple);
<a name="l00100"></a>00100 
<a name="l00102"></a><a class="code" href="a00360.html#d6596f4a8bd35c22a895f1df84fe6414">00102</a>   <span class="keywordtype">void</span> <a class="code" href="a00360.html#d6596f4a8bd35c22a895f1df84fe6414">Squeeze</a>() { this-&gt;<a class="code" href="a00360.html#4a1ba2d2fa5818d91502ec2cc75b23f5">ResizeAndExtend</a> (this-&gt;<a class="code" href="a00081.html#3f162ae65eeae4718e50fed68f2ebad4">MaxId</a>+1); }
<a name="l00103"></a>00103 
<a name="l00105"></a><a class="code" href="a00360.html#391aaabf331620ea45770fe342b11edb">00105</a>   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#391aaabf331620ea45770fe342b11edb">Capacity</a>() { <span class="keywordflow">return</span> this-&gt;<a class="code" href="a00081.html#6aa4fe90365895fdfc7477b1a9be3f38">Size</a>; }
<a name="l00106"></a>00106 
<a name="l00108"></a>00108   <span class="keyword">virtual</span> <span class="keywordtype">int</span> <a class="code" href="a00360.html#132f8eb9cca78d7a1e506168adb7b74c">Resize</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> numTuples);
<a name="l00109"></a>00109 
<a name="l00111"></a><a class="code" href="a00360.html#419fc2c5f0192867d451053aa3818bcd">00111</a>   T <a class="code" href="a00360.html#419fc2c5f0192867d451053aa3818bcd">GetValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>) { <span class="keywordflow">return</span> this-&gt;<a class="code" href="a00360.html#3b37ce9ae9ab457aca8dbf478d2990a2">Array</a>[id]; }
<a name="l00112"></a>00112 
<a name="l00114"></a>00114 
<a name="l00116"></a><a class="code" href="a00360.html#f2a39a3f060298b5b9005c64458912a7">00116</a>   <span class="keywordtype">void</span> <a class="code" href="a00360.html#f2a39a3f060298b5b9005c64458912a7">SetValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>, T <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>)
<a name="l00117"></a>00117     { this-&gt;<a class="code" href="a00360.html#3b37ce9ae9ab457aca8dbf478d2990a2">Array</a>[id] = value;};
<a name="l00119"></a>00119 
<a name="l00123"></a>00123   <span class="keywordtype">void</span> <a class="code" href="a00360.html#0ad4528256531a3d0e2bc102ceea1e29">SetNumberOfValues</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> number);
<a name="l00124"></a>00124 
<a name="l00126"></a>00126   <span class="keywordtype">void</span> <a class="code" href="a00360.html#3a3233d96115a869be58249f7f937563">InsertValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>, T f);
<a name="l00127"></a>00127 
<a name="l00129"></a>00129   <span class="keywordtype">void</span> <a class="code" href="a00360.html#d41abbe9133d176a14842e01b2c66c99">InsertVariantValue</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>, <a class="code" href="a01810.html" title="A atomic type representing the union of many types.">vtkVariant</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>);
<a name="l00130"></a>00130 
<a name="l00133"></a>00133   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#6b54143d24d4e3b2295c11ccc52235e6">InsertNextValue</a>(T f);
<a name="l00134"></a>00134 
<a name="l00136"></a>00136 
<a name="l00139"></a>00139   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#5aeaee7bd886b70c97b0cb89f438dab2">RemoveTuple</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>);
<a name="l00140"></a>00140   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#413db526c228cb7122c6e3fe1da20053">RemoveFirstTuple</a>();
<a name="l00141"></a>00141   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#9b1dfe31b29b80860f79ed4cc6d4c06f">RemoveLastTuple</a>();
<a name="l00143"></a>00143 
<a name="l00147"></a>00147   <span class="keywordtype">double</span> <a class="code" href="a00360.html#a7d37e4d2114ff6711a5ee2c95cbede4">GetComponent</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keywordtype">int</span> j);
<a name="l00148"></a>00148 
<a name="l00153"></a>00153   <span class="keywordtype">void</span> <a class="code" href="a00360.html#d169dc5265805b76e99fd8fd0e661179">SetComponent</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keywordtype">int</span> j, <span class="keywordtype">double</span> c);
<a name="l00154"></a>00154 
<a name="l00158"></a>00158   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#df35d504764b5ed81fe7ae9e6f9024d9">InsertComponent</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> i, <span class="keywordtype">int</span> j, <span class="keywordtype">double</span> c);
<a name="l00159"></a>00159 
<a name="l00161"></a>00161 
<a name="l00164"></a>00164   T* <a class="code" href="a00360.html#1a3dade002cbce83c0ce0d9a07cec2b0">WritePointer</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> number);
<a name="l00165"></a><a class="code" href="a00360.html#a9e3092b92b6d3905d3f1bb344deb3bc">00165</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span>* <a class="code" href="a00360.html#a9e3092b92b6d3905d3f1bb344deb3bc">WriteVoidPointer</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> number)
<a name="l00166"></a>00166     { <span class="keywordflow">return</span> this-&gt;<a class="code" href="a00360.html#1a3dade002cbce83c0ce0d9a07cec2b0">WritePointer</a>(<span class="keywordtype">id</span>, number); }
<a name="l00168"></a>00168 
<a name="l00170"></a>00170 
<a name="l00172"></a><a class="code" href="a00360.html#ee8b7592aca98ead039615ea17d439a6">00172</a>   T* <a class="code" href="a00360.html#ee8b7592aca98ead039615ea17d439a6">GetPointer</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>) { <span class="keywordflow">return</span> this-&gt;<a class="code" href="a00360.html#3b37ce9ae9ab457aca8dbf478d2990a2">Array</a> + id; }
<a name="l00173"></a><a class="code" href="a00360.html#66d0793dc0eea4b8026e281d5d532a16">00173</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span>* <a class="code" href="a00360.html#66d0793dc0eea4b8026e281d5d532a16">GetVoidPointer</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>) { <span class="keywordflow">return</span> this-&gt;<a class="code" href="a00360.html#ee8b7592aca98ead039615ea17d439a6">GetPointer</a>(<span class="keywordtype">id</span>); }
<a name="l00175"></a>00175 
<a name="l00177"></a>00177 
<a name="l00178"></a>00178   <span class="keywordtype">void</span> <a class="code" href="a00360.html#21abe4af70c119fca7e1dc04b3d8e94b">DeepCopy</a>(<a class="code" href="a00356.html" title="abstract superclass for arrays of numeric data">vtkDataArray</a>* da);
<a name="l00179"></a><a class="code" href="a00360.html#cd60f592767bd5b1a7cb2f7ed70dd160">00179</a>   <span class="keywordtype">void</span> <a class="code" href="a00360.html#21abe4af70c119fca7e1dc04b3d8e94b">DeepCopy</a>(<a class="code" href="a00081.html" title="Abstract superclass for all arrays.">vtkAbstractArray</a>* aa)
<a name="l00180"></a>00180     { this-&gt;<a class="code" href="a00356.html#54cbe6987c4dc9f4075dc6bfac93ded9">Superclass::DeepCopy</a>(aa); }
<a name="l00182"></a>00182 
<a name="l00183"></a>00183 <span class="comment">//BTX</span>
<a name="l00184"></a><a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde7915">00184</a>   <span class="keyword">enum</span> <a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde7915">DeleteMethod</a>
<a name="l00185"></a>00185   {
<a name="l00186"></a><a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde79154e03c426fbcac50473d989fd3914b8eb">00186</a>     <a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde79154e03c426fbcac50473d989fd3914b8eb">VTK_DATA_ARRAY_FREE</a>,
<a name="l00187"></a><a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde7915f0dfac2bd9398fdef270a608a5bdad90">00187</a>     <a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde7915f0dfac2bd9398fdef270a608a5bdad90">VTK_DATA_ARRAY_DELETE</a>
<a name="l00188"></a>00188   };
<a name="l00189"></a>00189 <span class="comment">//ETX</span>
<a name="l00190"></a>00190 
<a name="l00192"></a>00192 
<a name="l00201"></a>00201   <span class="keywordtype">void</span> <a class="code" href="a00360.html#5d4281c3356c18a276ae7a8db8ca0c87">SetArray</a>(T* array, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d210e3d5e7c015dff08d8daf72a0102e1444">size</a>, <span class="keywordtype">int</span> <a class="code" href="a02161.html#d6bef997add92b8246718df030c029c8">save</a>, <span class="keywordtype">int</span> deleteMethod);
<a name="l00202"></a><a class="code" href="a00360.html#e8ffff1fd4e50269f0dbbbd3a1afcfaf">00202</a>   <span class="keywordtype">void</span> <a class="code" href="a00360.html#5d4281c3356c18a276ae7a8db8ca0c87">SetArray</a>(T* array, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d210e3d5e7c015dff08d8daf72a0102e1444">size</a>, <span class="keywordtype">int</span> <a class="code" href="a02161.html#d6bef997add92b8246718df030c029c8">save</a>)
<a name="l00203"></a>00203     { this-&gt;<a class="code" href="a00360.html#5d4281c3356c18a276ae7a8db8ca0c87">SetArray</a>(array, size, save, <a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde79154e03c426fbcac50473d989fd3914b8eb">VTK_DATA_ARRAY_FREE</a>); }
<a name="l00204"></a><a class="code" href="a00360.html#d18c2ca660c2df5dacf67e7b10c0cf94">00204</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#d18c2ca660c2df5dacf67e7b10c0cf94">SetVoidArray</a>(<span class="keywordtype">void</span>* array, <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d210e3d5e7c015dff08d8daf72a0102e1444">size</a>, <span class="keywordtype">int</span> <a class="code" href="a02161.html#d6bef997add92b8246718df030c029c8">save</a>)
<a name="l00205"></a>00205     { this-&gt;<a class="code" href="a00360.html#5d4281c3356c18a276ae7a8db8ca0c87">SetArray</a>(static_cast&lt;T*&gt;(array), size, save); }
<a name="l00206"></a><a class="code" href="a00360.html#bf2a5fcc24b79ba9e5ad698627b333e9">00206</a>   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#d18c2ca660c2df5dacf67e7b10c0cf94">SetVoidArray</a>(<span class="keywordtype">void</span>* array, 
<a name="l00207"></a>00207                             <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d210e3d5e7c015dff08d8daf72a0102e1444">size</a>, 
<a name="l00208"></a>00208                             <span class="keywordtype">int</span> <a class="code" href="a02161.html#d6bef997add92b8246718df030c029c8">save</a>, 
<a name="l00209"></a>00209                             <span class="keywordtype">int</span> deleteMethod)
<a name="l00210"></a>00210     { 
<a name="l00211"></a>00211       this-&gt;<a class="code" href="a00360.html#5d4281c3356c18a276ae7a8db8ca0c87">SetArray</a>(static_cast&lt;T*&gt;(array), size, save, deleteMethod); 
<a name="l00212"></a>00212     }
<a name="l00214"></a>00214 
<a name="l00218"></a>00218   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#3fc0f6a41217bb680a2ee16f910782dd">ExportToVoidPointer</a>(<span class="keywordtype">void</span> *out_ptr);
<a name="l00219"></a>00219 
<a name="l00221"></a>00221   <span class="keyword">virtual</span> <a class="code" href="a00131.html" title="Abstract superclass to iterate over elements in an vtkAbstractArray.">vtkArrayIterator</a>* <a class="code" href="a00360.html#a9494017bdbe417fb6c24314e36d0fff">NewIterator</a>();
<a name="l00222"></a>00222   
<a name="l00223"></a>00223   <span class="comment">//BTX</span>
<a name="l00225"></a>00225 <span class="comment"></span>
<a name="l00226"></a>00226   <span class="keyword">virtual</span> <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#a17000c975f82488e7661731b7baf540">LookupValue</a>(<a class="code" href="a01810.html" title="A atomic type representing the union of many types.">vtkVariant</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>);
<a name="l00227"></a>00227   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#a17000c975f82488e7661731b7baf540">LookupValue</a>(<a class="code" href="a01810.html" title="A atomic type representing the union of many types.">vtkVariant</a> <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>, <a class="code" href="a00720.html" title="list of point or cell ids">vtkIdList</a>* ids);
<a name="l00228"></a>00228   <span class="comment">//ETX</span>
<a name="l00229"></a>00229   <a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <a class="code" href="a00360.html#a17000c975f82488e7661731b7baf540">LookupValue</a>(T <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>);
<a name="l00230"></a>00230   <span class="keywordtype">void</span> <a class="code" href="a00360.html#a17000c975f82488e7661731b7baf540">LookupValue</a>(T <a class="code" href="a03761.html#c6551f7bf833e8254b2b3ecdaea0d2106bf5e5151797630e91167caab3f22b9a">value</a>, <a class="code" href="a00720.html" title="list of point or cell ids">vtkIdList</a>* ids);
<a name="l00232"></a>00232   
<a name="l00239"></a>00239   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#432159ab1f434a63f6ab9af134c617cb">DataChanged</a>();
<a name="l00240"></a>00240   
<a name="l00244"></a>00244   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#173504c279a565e882f762331da419fa">DataElementChanged</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> <span class="keywordtype">id</span>);
<a name="l00245"></a>00245 
<a name="l00249"></a>00249   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#3c0364ecb1f6d30df3b8f8d080a63c9b">ClearLookup</a>();
<a name="l00250"></a>00250   
<a name="l00251"></a>00251 <span class="keyword">protected</span>:
<a name="l00252"></a>00252   <a class="code" href="a00360.html#6afbb947336b3a43dc2dbd034468f95a">vtkDataArrayTemplate</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> numComp);
<a name="l00253"></a>00253   <a class="code" href="a00360.html#46443dcc43d47291726e1a278e45f827">~vtkDataArrayTemplate</a>();
<a name="l00254"></a>00254 
<a name="l00255"></a><a class="code" href="a00360.html#3b37ce9ae9ab457aca8dbf478d2990a2">00255</a>   T* <a class="code" href="a00360.html#3b37ce9ae9ab457aca8dbf478d2990a2">Array</a>;   <span class="comment">// pointer to data</span>
<a name="l00256"></a>00256   T* <a class="code" href="a00360.html#4a1ba2d2fa5818d91502ec2cc75b23f5">ResizeAndExtend</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> sz);  <span class="comment">// function to resize data</span>
<a name="l00257"></a>00257   T* <a class="code" href="a00360.html#cee9787130bd0b002efa0d46cf30f41f">Realloc</a>(<a class="code" href="a02149.html#20bd6b6dedfe1bbb096c50354d52cc7e">vtkIdType</a> sz);
<a name="l00258"></a>00258   
<a name="l00259"></a><a class="code" href="a00360.html#4ccb4f9291393873eeea5a41147fe635">00259</a>   <span class="keywordtype">int</span> <a class="code" href="a00360.html#4ccb4f9291393873eeea5a41147fe635">TupleSize</a>; <span class="comment">//used for data conversion</span>
<a name="l00260"></a><a class="code" href="a00360.html#6eeb7ceaadd2c2892020e1bd7023cbbd">00260</a>   <span class="keywordtype">double</span>* <a class="code" href="a00360.html#6eeb7ceaadd2c2892020e1bd7023cbbd">Tuple</a>;
<a name="l00261"></a>00261 
<a name="l00262"></a><a class="code" href="a00360.html#d1a8a1c6241be6d7d0d1febd10360f7a">00262</a>   <span class="keywordtype">int</span> <a class="code" href="a00360.html#d1a8a1c6241be6d7d0d1febd10360f7a">SaveUserArray</a>;
<a name="l00263"></a><a class="code" href="a00360.html#3a969d17940ddb39bf3747601ecd889b">00263</a>   <span class="keywordtype">int</span> <a class="code" href="a00360.html#1309a999fe28565cbf0a6e1edfde7915">DeleteMethod</a>;
<a name="l00264"></a>00264 
<a name="l00265"></a>00265   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#89db4d32a6a9d4e9a98d718b6a5871e5">ComputeScalarRange</a>(<span class="keywordtype">int</span> comp);
<a name="l00266"></a>00266   <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="a00360.html#88caef18a991537c519a7303163806c0">ComputeVectorRange</a>();
<a name="l00267"></a>00267 <span class="keyword">private</span>:
<a name="l00268"></a>00268   <a class="code" href="a00360.html#6afbb947336b3a43dc2dbd034468f95a">vtkDataArrayTemplate</a>(<span class="keyword">const</span> <a class="code" href="a00360.html" title="Implementation template for vtkDataArray.">vtkDataArrayTemplate</a>&amp;);  <span class="comment">// Not implemented.</span>
<a name="l00269"></a>00269   <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="a00360.html" title="Implementation template for vtkDataArray.">vtkDataArrayTemplate</a>&amp;);  <span class="comment">// Not implemented.</span>
<a name="l00270"></a>00270 
<a name="l00271"></a>00271   vtkDataArrayTemplateLookup&lt;T&gt;* Lookup;
<a name="l00272"></a>00272   <span class="keywordtype">void</span> UpdateLookup();
<a name="l00273"></a>00273 
<a name="l00274"></a>00274   <span class="keywordtype">void</span> DeleteArray();
<a name="l00275"></a>00275 };
<a name="l00276"></a>00276 
<a name="l00277"></a>00277 <span class="preprocessor">#if !defined(VTK_NO_EXPLICIT_TEMPLATE_INSTANTIATION)</span>
<a name="l00278"></a><a class="code" href="a02009.html#b911aaeb76b34febcbb39750cfaf7df0">00278</a> <span class="preprocessor"></span><span class="preprocessor"># define VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE(T) \</span>
<a name="l00279"></a>00279 <span class="preprocessor">   template class VTK_COMMON_EXPORT vtkDataArrayTemplate&lt; T &gt;</span>
<a name="l00280"></a>00280 <span class="preprocessor"></span><span class="preprocessor">#else</span>
<a name="l00281"></a>00281 <span class="preprocessor"></span><span class="preprocessor"># include "vtkDataArrayTemplateImplicit.txx"</span>
<a name="l00282"></a>00282 <span class="preprocessor"># define VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE(T)</span>
<a name="l00283"></a>00283 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
<a name="l00284"></a>00284 <span class="preprocessor"></span>
<a name="l00285"></a>00285 <span class="preprocessor">#endif // !defined(__vtkDataArrayTemplate_h)</span>
<a name="l00286"></a>00286 <span class="preprocessor"></span>
<a name="l00287"></a>00287 <span class="comment">// This portion must be OUTSIDE the include blockers.  Each</span>
<a name="l00288"></a>00288 <span class="comment">// vtkDataArray subclass uses this to give its instantiation of this</span>
<a name="l00289"></a>00289 <span class="comment">// template a DLL interface.</span>
<a name="l00290"></a>00290 <span class="preprocessor">#if defined(VTK_DATA_ARRAY_TEMPLATE_TYPE)</span>
<a name="l00291"></a>00291 <span class="preprocessor"></span><span class="preprocessor"># if defined(VTK_BUILD_SHARED_LIBS) &amp;&amp; defined(_MSC_VER)</span>
<a name="l00292"></a>00292 <span class="preprocessor"></span><span class="preprocessor">#  pragma warning (push)</span>
<a name="l00293"></a>00293 <span class="preprocessor"></span><span class="preprocessor">#  pragma warning (disable: 4091) // warning C4091: 'extern ' : </span>
<a name="l00294"></a>00294 <span class="preprocessor"></span>   <span class="comment">// ignored on left of 'int' when no variable is declared</span>
<a name="l00295"></a>00295 <span class="preprocessor">#  pragma warning (disable: 4231) // Compiler-specific extension warning.</span>
<a name="l00296"></a>00296 <span class="preprocessor"></span>
<a name="l00297"></a>00297    <span class="comment">// We need to disable warning 4910 and do an extern dllexport</span>
<a name="l00298"></a>00298    <span class="comment">// anyway.  When deriving vtkCharArray and other types from an</span>
<a name="l00299"></a>00299    <span class="comment">// instantiation of this template the compiler does an explicit</span>
<a name="l00300"></a>00300    <span class="comment">// instantiation of the base class.  From outside the vtkCommon</span>
<a name="l00301"></a>00301    <span class="comment">// library we block this using an extern dllimport instantiation.</span>
<a name="l00302"></a>00302    <span class="comment">// For classes inside vtkCommon we should be able to just do an</span>
<a name="l00303"></a>00303    <span class="comment">// extern instantiation, but VS 2008 complains about missing</span>
<a name="l00304"></a>00304    <span class="comment">// definitions.  We cannot do an extern dllimport inside vtkCommon</span>
<a name="l00305"></a>00305    <span class="comment">// since the symbols are local to the dll.  An extern dllexport</span>
<a name="l00306"></a>00306    <span class="comment">// seems to be the only way to convince VS 2008 to do the right</span>
<a name="l00307"></a>00307    <span class="comment">// thing, so we just disable the warning.</span>
<a name="l00308"></a>00308 <span class="preprocessor">#  pragma warning (disable: 4910) // extern and dllexport incompatible</span>
<a name="l00309"></a>00309 <span class="preprocessor"></span>
<a name="l00310"></a>00310    <span class="comment">// Use an "extern explicit instantiation" to give the class a DLL</span>
<a name="l00311"></a>00311    <span class="comment">// interface.  This is a compiler-specific extension.</span>
<a name="l00312"></a>00312    <span class="keyword">extern</span> <a class="code" href="a02009.html#b911aaeb76b34febcbb39750cfaf7df0">VTK_DATA_ARRAY_TEMPLATE_INSTANTIATE</a>(<a class="code" href="a01967.html#a276a7d042ddd61dda514b71cb5c0b80">VTK_DATA_ARRAY_TEMPLATE_TYPE</a>);
<a name="l00313"></a>00313 <span class="preprocessor">#  pragma warning (pop)</span>
<a name="l00314"></a>00314 <span class="preprocessor"></span><span class="preprocessor"># endif</span>
<a name="l00315"></a>00315 <span class="preprocessor"></span><span class="preprocessor"># undef VTK_DATA_ARRAY_TEMPLATE_TYPE</span>
<a name="l00316"></a>00316 <span class="preprocessor"></span><span class="preprocessor">#endif</span>
</pre></div></div>
<hr size="1"><address style="text-align: right;"><small>Generated on Wed Jun 3 18:35:10 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>