<!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: itkDataObject.h Source File</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> <a href="modules.html" class="qindex">Groups</a> <a href="namespaces.html" class="qindex">Namespace List</a> <a href="hierarchy.html" class="qindex">Class Hierarchy</a> <a href="classes.html" class="qindex">Alphabetical List</a> <a href="annotated.html" class="qindex">Compound List</a> <a href="files.html" class="qindex">File List</a> <a href="namespacemembers.html" class="qindex">Namespace Members</a> <a href="functions.html" class="qindex">Compound Members</a> <a href="globals.html" class="qindex">File Members</a> <a href="pages.html" class="qindex">Concepts</a></center> <!-- Generated by Doxygen 1.5.9 --> <div class="navpath"><a class="el" href="dir_02e23d841c198393a6e961e9a0678fff.html">Code</a> » <a class="el" href="dir_ea7fc529ede9a38b0438cf13831ae873.html">Common</a> </div> <div class="contents"> <h1>itkDataObject.h</h1><a href="itkDataObject_8h.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: Insight Segmentation & Registration Toolkit</span> <a name="l00004"></a>00004 <span class="comment"> Module: $RCSfile: itkDataObject.h,v $</span> <a name="l00005"></a>00005 <span class="comment"> Language: C++</span> <a name="l00006"></a>00006 <span class="comment"> Date: $Date: 2009-02-20 19:59:26 $</span> <a name="l00007"></a>00007 <span class="comment"> Version: $Revision: 1.72 $</span> <a name="l00008"></a>00008 <span class="comment"></span> <a name="l00009"></a>00009 <span class="comment"> Copyright (c) Insight Software Consortium. All rights reserved.</span> <a name="l00010"></a>00010 <span class="comment"> See ITKCopyright.txt or http://www.itk.org/HTML/Copyright.htm for details.</span> <a name="l00011"></a>00011 <span class="comment"></span> <a name="l00012"></a>00012 <span class="comment"> Portions of this code are covered under the VTK copyright.</span> <a name="l00013"></a>00013 <span class="comment"> See VTKCopyright.txt or http://www.kitware.com/VTKCopyright.htm for details.</span> <a name="l00014"></a>00014 <span class="comment"></span> <a name="l00015"></a>00015 <span class="comment"> This software is distributed WITHOUT ANY WARRANTY; without even </span> <a name="l00016"></a>00016 <span class="comment"> the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR </span> <a name="l00017"></a>00017 <span class="comment"> PURPOSE. See the above copyright notices for more information.</span> <a name="l00018"></a>00018 <span class="comment"></span> <a name="l00019"></a>00019 <span class="comment">=========================================================================*/</span> <a name="l00020"></a>00020 <span class="preprocessor">#ifndef __itkDataObject_h</span> <a name="l00021"></a>00021 <span class="preprocessor"></span><span class="preprocessor">#define __itkDataObject_h</span> <a name="l00022"></a>00022 <span class="preprocessor"></span> <a name="l00023"></a>00023 <span class="preprocessor">#include "<a class="code" href="itkObject_8h.html">itkObject.h</a>"</span> <a name="l00024"></a>00024 <span class="preprocessor">#include "<a class="code" href="itkSmartPointerForwardReference_8h.html">itkSmartPointerForwardReference.h</a>"</span> <a name="l00025"></a>00025 <span class="preprocessor">#include "<a class="code" href="itkWeakPointer_8h.html">itkWeakPointer.h</a>"</span> <a name="l00026"></a>00026 <span class="preprocessor">#include "<a class="code" href="itkExceptionObject_8h.html">itkExceptionObject.h</a>"</span> <a name="l00027"></a>00027 <a name="l00028"></a>00028 <span class="keyword">namespace </span>itk <a name="l00029"></a>00029 { <a name="l00030"></a>00030 <a name="l00031"></a>00031 <span class="keyword">class </span>ProcessObject; <a name="l00032"></a>00032 <span class="keyword">class </span>DataObject; <a name="l00033"></a>00033 <a name="l00034"></a>00034 <span class="comment">/*--------------------Data Object Exceptions---------------------------*/</span> <a name="l00035"></a>00035 <a name="l00038"></a><a class="code" href="classitk_1_1DataObjectError.html">00038</a> <span class="keyword">class </span><a class="code" href="itkWin32Header_8h.html#faefe352c9fb4179f5a770afc70ea90f">ITKCommon_EXPORT</a> <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a> : <span class="keyword">public</span> ExceptionObject <a name="l00039"></a>00039 { <a name="l00040"></a>00040 <span class="keyword">public</span>: <a name="l00043"></a>00043 <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>(); <a name="l00044"></a>00044 <a name="l00046"></a><a class="code" href="classitk_1_1DataObjectError.html#dc44e2720c40e951bbf2ce711fadeb18">00046</a> <span class="keyword">virtual</span> <a class="code" href="classitk_1_1DataObjectError.html#dc44e2720c40e951bbf2ce711fadeb18">~DataObjectError</a>() throw() {} <a name="l00047"></a>00047 <a name="l00049"></a>00049 <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> lineNumber); <a name="l00050"></a>00050 <a name="l00052"></a>00052 <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>(<span class="keyword">const</span> std::string& file, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> lineNumber); <a name="l00053"></a>00053 <a name="l00055"></a>00055 <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a> &orig); <a name="l00056"></a>00056 <a name="l00058"></a>00058 <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>& operator=( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>& orig); <a name="l00059"></a>00059 <a name="l00061"></a>00061 <a class="code" href="itkMacro_8h.html#574c1f86661d409dd32c742307a0e96a">itkTypeMacro</a>(<a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>, ExceptionObject); <a name="l00062"></a>00062 <a name="l00064"></a>00064 <span class="keywordtype">void</span> SetDataObject(<a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> *dobj); <a name="l00065"></a>00065 <a name="l00067"></a>00067 <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>* GetDataObject(); <a name="l00068"></a>00068 <a name="l00069"></a>00069 <span class="keyword">protected</span>: <a name="l00074"></a>00074 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#920ae03048a5ad715d803ca2e92b52de">PrintSelf</a>(std::ostream& os, <a class="code" href="classitk_1_1Indent.html" title="Control indentation during Print() invocation.">Indent</a> indent) <span class="keyword">const</span>; <a name="l00075"></a>00075 <a name="l00076"></a>00076 <span class="keyword">private</span>: <a name="l00077"></a>00077 <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> *m_DataObject; <a name="l00078"></a>00078 }; <a name="l00079"></a>00079 <a name="l00080"></a>00080 <a name="l00084"></a><a class="code" href="classitk_1_1InvalidRequestedRegionError.html">00084</a> <span class="keyword">class </span><a class="code" href="itkWin32Header_8h.html#faefe352c9fb4179f5a770afc70ea90f">ITKCommon_EXPORT</a> <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a> : <span class="keyword">public</span> <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a> <a name="l00085"></a>00085 { <a name="l00086"></a>00086 <span class="keyword">public</span>: <a name="l00088"></a>00088 <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>(); <a name="l00089"></a>00089 <a name="l00091"></a><a class="code" href="classitk_1_1InvalidRequestedRegionError.html#290fb5922d57214dcca957f038edb21e">00091</a> <span class="keyword">virtual</span> <a class="code" href="classitk_1_1InvalidRequestedRegionError.html#290fb5922d57214dcca957f038edb21e">~InvalidRequestedRegionError</a>() throw() {} <a name="l00092"></a>00092 <a name="l00094"></a>00094 <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>(<span class="keyword">const</span> <span class="keywordtype">char</span> *file, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> lineNumber); <a name="l00095"></a>00095 <a name="l00097"></a>00097 <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>(<span class="keyword">const</span> std::string& file, <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> lineNumber); <a name="l00098"></a>00098 <a name="l00100"></a>00100 <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a> &orig); <a name="l00101"></a>00101 <a name="l00103"></a>00103 <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>& operator=( <span class="keyword">const</span> <a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>& orig); <a name="l00104"></a>00104 <a name="l00106"></a>00106 <a class="code" href="itkMacro_8h.html#574c1f86661d409dd32c742307a0e96a">itkTypeMacro</a>(<a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>, <a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>); <a name="l00107"></a>00107 <a name="l00108"></a>00108 <span class="keyword">protected</span>: <a name="l00113"></a>00113 <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#920ae03048a5ad715d803ca2e92b52de">PrintSelf</a>(std::ostream& os, <a class="code" href="classitk_1_1Indent.html" title="Control indentation during Print() invocation.">Indent</a> indent) <span class="keyword">const</span>; <a name="l00114"></a>00114 <a name="l00115"></a>00115 }; <a name="l00116"></a>00116 <a name="l00117"></a>00117 <a name="l00118"></a>00118 <span class="comment">/*----------------------------Data Object--------------------------------*/</span> <a name="l00119"></a>00119 <a name="l00262"></a><a class="code" href="classitk_1_1DataObject.html">00262</a> <span class="keyword">class </span><a class="code" href="itkWin32Header_8h.html#faefe352c9fb4179f5a770afc70ea90f">ITKCommon_EXPORT</a> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> : <span class="keyword">public</span> <a class="code" href="classitk_1_1Object.html" title="Base class for most itk classes.">Object</a> <a name="l00263"></a>00263 { <a name="l00264"></a>00264 <span class="keyword">public</span>: <a name="l00266"></a><a class="code" href="classitk_1_1DataObject.html#feef825b8d9dbf740646f834968f9e64">00266</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">Self</a>; <a name="l00267"></a><a class="code" href="classitk_1_1DataObject.html#ee76fef47810b8c6bd8e0f1fdd7791f6">00267</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1Object.html" title="Base class for most itk classes.">Object</a> <a class="code" href="classitk_1_1Object.html" title="Base class for most itk classes.">Superclass</a>; <a name="l00268"></a><a class="code" href="classitk_1_1DataObject.html#6cfe8a74d110b6b07aad70ced5dd91e0">00268</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer<Self></a> <a class="code" href="classitk_1_1SmartPointer.html">Pointer</a>; <a name="l00269"></a><a class="code" href="classitk_1_1DataObject.html#33a357122ad96bba9ddcaae4d12b9889">00269</a> <span class="keyword">typedef</span> <a class="code" href="classitk_1_1SmartPointer.html">SmartPointer<const Self></a> <a class="code" href="classitk_1_1SmartPointer.html">ConstPointer</a>; <a name="l00270"></a>00270 <a name="l00272"></a>00272 <a class="code" href="itkMacro_8h.html#574c1f86661d409dd32c742307a0e96a">itkTypeMacro</a>(<a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>,<a class="code" href="classitk_1_1Object.html" title="Base class for most itk classes.">Object</a>); <a name="l00273"></a>00273 <a name="l00279"></a>00279 <span class="keywordtype">void</span> DisconnectPipeline(); <a name="l00280"></a>00280 <a name="l00293"></a>00293 <a class="code" href="classitk_1_1SmartPointerForwardReference.html" title="Implements transparent reference counting in situations where forward references...">SmartPointerForwardReference<ProcessObject></a> GetSource() <span class="keyword">const</span>; <a name="l00294"></a>00294 <a name="l00296"></a>00296 <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> GetSourceOutputIndex() <span class="keyword">const</span>; <a name="l00297"></a>00297 <a name="l00300"></a>00300 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Initialize(); <a name="l00301"></a>00301 <a name="l00304"></a><a class="code" href="classitk_1_1DataObject.html#9c1c690c987eea6ea7a0e2f28a6fe385">00304</a> <span class="keywordtype">void</span> SetReleaseDataFlag(<span class="keywordtype">bool</span> flag) <a name="l00305"></a>00305 { <a name="l00306"></a>00306 m_ReleaseDataFlag = flag; <a name="l00307"></a>00307 } <a name="l00308"></a>00308 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>(ReleaseDataFlag,<span class="keywordtype">bool</span>); <a name="l00309"></a>00309 <a class="code" href="itkMacro_8h.html#9e7d129ffebb09fd28bc213e02d87248">itkBooleanMacro</a>(ReleaseDataFlag); <a name="l00311"></a>00311 <a name="l00315"></a>00315 <span class="keyword">static</span> <span class="keywordtype">void</span> SetGlobalReleaseDataFlag(<span class="keywordtype">bool</span> val); <a name="l00316"></a>00316 <span class="keyword">static</span> <span class="keywordtype">bool</span> GetGlobalReleaseDataFlag(); <a name="l00317"></a><a class="code" href="classitk_1_1DataObject.html#4aa155cf9f1416d8a784a2c057d75818">00317</a> <span class="keyword">static</span> <span class="keywordtype">void</span> GlobalReleaseDataFlagOn() <a name="l00318"></a>00318 {Self::SetGlobalReleaseDataFlag(<span class="keyword">true</span>);} <a name="l00319"></a><a class="code" href="classitk_1_1DataObject.html#a98c510f2dc5220ac0d2e9c913b4802d">00319</a> <span class="keyword">static</span> <span class="keywordtype">void</span> GlobalReleaseDataFlagOff() <a name="l00320"></a>00320 {Self::SetGlobalReleaseDataFlag(<span class="keyword">false</span>);} <a name="l00322"></a>00322 <a name="l00327"></a>00327 <span class="keywordtype">void</span> ReleaseData(); <a name="l00328"></a>00328 <a name="l00331"></a>00331 <span class="keywordtype">bool</span> ShouldIReleaseData() <span class="keyword">const</span>; <a name="l00332"></a>00332 <a name="l00334"></a><a class="code" href="classitk_1_1DataObject.html#ce6e72bec0d9e05d7fe014cf2807eeaf">00334</a> <span class="keywordtype">bool</span> GetDataReleased()<span class="keyword"> const </span> <a name="l00335"></a>00335 <span class="keyword"> </span>{<span class="keywordflow">return</span> m_DataReleased;} <a name="l00336"></a>00336 <a name="l00347"></a>00347 <span class="keyword">virtual</span> <span class="keywordtype">void</span> Update(); <a name="l00348"></a>00348 <a name="l00358"></a>00358 <span class="keyword">virtual</span> <span class="keywordtype">void</span> UpdateOutputInformation(); <a name="l00359"></a>00359 <a name="l00362"></a>00362 <span class="keyword">virtual</span> <span class="keywordtype">void</span> PropagateRequestedRegion() throw (<a class="code" href="classitk_1_1InvalidRequestedRegionError.html">InvalidRequestedRegionError</a>); <a name="l00363"></a>00363 virtual <span class="keywordtype">void</span> UpdateOutputData(); <a name="l00365"></a>00365 <a name="l00369"></a>00369 virtual <span class="keywordtype">void</span> ResetPipeline(); <a name="l00370"></a>00370 <a name="l00373"></a><a class="code" href="classitk_1_1DataObject.html#c482046eb113427a3bd4c6597d8a1938">00373</a> <span class="keywordtype">void</span> SetPipelineMTime(<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> time) <a name="l00374"></a>00374 {m_PipelineMTime = time;} <a name="l00375"></a>00375 <a class="code" href="itkMacro_8h.html#7d989c13a1a213168db99ae0f84185d4">itkGetConstReferenceMacro</a>(PipelineMTime,<span class="keywordtype">unsigned</span> <span class="keywordtype">long</span>); <a name="l00377"></a>00377 <a name="l00379"></a>00379 <span class="keyword">virtual</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> GetUpdateMTime() <span class="keyword">const</span>; <a name="l00380"></a>00380 <a name="l00389"></a><a class="code" href="classitk_1_1DataObject.html#3bcc4f45982d6818a4683593a89295cd">00389</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> PrepareForNewData() <a name="l00390"></a>00390 {this->Initialize();} <a name="l00391"></a>00391 <a name="l00396"></a>00396 <span class="keywordtype">void</span> DataHasBeenGenerated(); <a name="l00397"></a>00397 <a name="l00398"></a>00398 <a name="l00402"></a><a class="code" href="classitk_1_1DataObject.html#73cfe73686dbb144e99f3fd83874ea51">00402</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1DataObject.html#73cfe73686dbb144e99f3fd83874ea51">SetRequestedRegionToLargestPossibleRegion</a>() {}; <a name="l00403"></a>00403 <a name="l00413"></a><a class="code" href="classitk_1_1DataObject.html#fd6a9fe948a3196acfa92421e42ca049">00413</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> RequestedRegionIsOutsideOfTheBufferedRegion() <a name="l00414"></a>00414 { <span class="keywordflow">return</span> <span class="keyword">false</span>; } <a name="l00415"></a>00415 <a name="l00428"></a><a class="code" href="classitk_1_1DataObject.html#8254b167c051ad3c4ad773cf863b056b">00428</a> <span class="keyword">virtual</span> <span class="keywordtype">bool</span> <a class="code" href="classitk_1_1DataObject.html#8254b167c051ad3c4ad773cf863b056b">VerifyRequestedRegion</a>() { <span class="keywordflow">return</span> <span class="keyword">true</span>; }; <a name="l00429"></a>00429 <a name="l00439"></a><a class="code" href="classitk_1_1DataObject.html#7ecddcd695fddcd41132eade4233568d">00439</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1DataObject.html#7ecddcd695fddcd41132eade4233568d">CopyInformation</a>(<span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>*) {}; <a name="l00440"></a>00440 <a name="l00446"></a><a class="code" href="classitk_1_1DataObject.html#1a492b709cfe09cadd673cf6116de239">00446</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1DataObject.html#1a492b709cfe09cadd673cf6116de239">SetRequestedRegion</a>(<a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> *) {}; <a name="l00447"></a>00447 <a name="l00453"></a><a class="code" href="classitk_1_1DataObject.html#010fc6888cd764e68192c39cfe4c1196">00453</a> <span class="keyword">virtual</span> <span class="keywordtype">void</span> <a class="code" href="classitk_1_1DataObject.html#010fc6888cd764e68192c39cfe4c1196">Graft</a>( <span class="keyword">const</span> <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a> *) {}; <a name="l00454"></a>00454 <a name="l00455"></a>00455 <span class="keyword">protected</span>: <a name="l00456"></a>00456 <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>(); <a name="l00457"></a>00457 ~<a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>(); <a name="l00458"></a>00458 <span class="keywordtype">void</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#920ae03048a5ad715d803ca2e92b52de">PrintSelf</a>(std::ostream& os, <a class="code" href="classitk_1_1Indent.html" title="Control indentation during Print() invocation.">Indent</a> indent) <span class="keyword">const</span>; <a name="l00459"></a>00459 <a name="l00461"></a>00461 <span class="keyword">virtual</span> <span class="keywordtype">void</span> PropagateResetPipeline(); <a name="l00462"></a>00462 <a name="l00463"></a>00463 <span class="keyword">private</span>: <a name="l00464"></a>00464 <a class="code" href="classitk_1_1DataObject.html" title="Base class for all data objects in ITK.">DataObject</a>(<span class="keyword">const</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#ac7d0120fe5292cdcdddb6163b8cb150">Self</a>&); <span class="comment">//purposely not implemented</span> <a name="l00465"></a>00465 <span class="keywordtype">void</span> operator=(<span class="keyword">const</span> <a class="code" href="namespaceHardConnectedComponentImageFilter.html#ac7d0120fe5292cdcdddb6163b8cb150">Self</a>&); <span class="comment">//purposely not implemented</span> <a name="l00466"></a>00466 <a name="l00468"></a>00468 <span class="keyword">mutable</span> <a class="code" href="classitk_1_1WeakPointer.html">WeakPointer<ProcessObject></a> m_Source; <a name="l00469"></a>00469 <span class="keyword">mutable</span> <span class="keywordtype">unsigned</span> <span class="keywordtype">int</span> m_SourceOutputIndex; <a name="l00470"></a>00470 <a name="l00472"></a>00472 <a class="code" href="classitk_1_1TimeStamp.html" title="Generate a unique, increasing time value.">TimeStamp</a> m_UpdateMTime; <a name="l00473"></a>00473 <a name="l00474"></a>00474 <span class="keywordtype">bool</span> m_ReleaseDataFlag; <span class="comment">//Data will release after use by a filter if on</span> <a name="l00475"></a>00475 <span class="keywordtype">bool</span> m_DataReleased; <span class="comment">//Keep track of data release during pipeline execution</span> <a name="l00476"></a>00476 <a name="l00479"></a>00479 <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> m_PipelineMTime; <a name="l00480"></a>00480 <a name="l00482"></a>00482 <span class="keyword">static</span> <span class="keywordtype">bool</span> m_GlobalReleaseDataFlag; <a name="l00483"></a>00483 <a name="l00488"></a>00488 <span class="keywordtype">bool</span> ConnectSource(<a class="code" href="classitk_1_1ProcessObject.html" title="ProcessObject is the base class for all process objects (source, filters, mappers)...">ProcessObject</a> *s, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> idx) <span class="keyword">const</span>; <a name="l00489"></a>00489 <a name="l00498"></a>00498 <span class="keywordtype">bool</span> DisconnectSource(<a class="code" href="classitk_1_1ProcessObject.html" title="ProcessObject is the base class for all process objects (source, filters, mappers)...">ProcessObject</a> *s, <span class="keywordtype">unsigned</span> <span class="keywordtype">long</span> idx) <span class="keyword">const</span>; <a name="l00499"></a>00499 <a name="l00501"></a><a class="code" href="classitk_1_1DataObject.html#eba5d250d1fa81d4b98007582366bec3">00501</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classitk_1_1ProcessObject.html" title="ProcessObject is the base class for all process objects (source, filters, mappers)...">ProcessObject</a>; <a name="l00502"></a><a class="code" href="classitk_1_1DataObject.html#cdec5cbbd9f17a738509b6131702101c">00502</a> <span class="keyword">friend</span> <span class="keyword">class </span><a class="code" href="classitk_1_1DataObjectError.html" title="Exception object for DataObject exceptions.">DataObjectError</a>; <a name="l00503"></a>00503 }; <a name="l00504"></a>00504 <a name="l00505"></a>00505 } <span class="comment">// end namespace itk</span> <a name="l00506"></a>00506 <a name="l00507"></a>00507 <span class="preprocessor">#endif</span> <a name="l00508"></a>00508 <span class="preprocessor"></span> </pre></div></div> <hr><address><small> Generated at Thu May 7 22:32:28 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>, © 1997-2000</small></address> </body> </html>