00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkSliceCubes.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 THIS CLASS IS PATENTED UNDER UNITED STATES PATENT NUMBER 4,710,876 00016 "System and Method for the Display of Surface Structures Contained 00017 Within the Interior Region of a Solid Body". 00018 Application of this software for commercial purposes requires 00019 a license grant from GE. Contact: 00020 00021 Carl B. Horton 00022 Sr. Counsel, Intellectual Property 00023 3000 N. Grandview Blvd., W-710 00024 Waukesha, WI 53188 00025 Phone: (262) 513-4022 00026 E-Mail: Carl.Horton@med.ge.com 00027 00028 for more information. 00029 00030 =========================================================================*/ 00082 #ifndef __vtkSliceCubes_h 00083 #define __vtkSliceCubes_h 00084 00085 #include "vtkObject.h" 00086 00087 class vtkVolumeReader; 00088 00089 class VTK_PATENTED_EXPORT vtkSliceCubes : public vtkObject 00090 { 00091 public: 00092 static vtkSliceCubes *New(); 00093 vtkTypeRevisionMacro(vtkSliceCubes,vtkObject); 00094 void PrintSelf(ostream& os, vtkIndent indent); 00095 00096 // methods to make it look like a filter 00097 void Write() {this->Update();}; 00098 void Update(); 00099 00101 00102 virtual void SetReader(vtkVolumeReader*); 00103 vtkGetObjectMacro(Reader,vtkVolumeReader); 00105 00107 00108 vtkSetStringMacro(FileName); 00109 vtkGetStringMacro(FileName); 00111 00113 00114 vtkSetMacro(Value,float); 00115 vtkGetMacro(Value,float); 00117 00119 00121 vtkSetStringMacro(LimitsFileName); 00122 vtkGetStringMacro(LimitsFileName); 00124 00125 protected: 00126 vtkSliceCubes(); 00127 ~vtkSliceCubes(); 00128 00129 void Execute(); 00130 00131 vtkVolumeReader *Reader; 00132 char *FileName; 00133 float Value; 00134 char *LimitsFileName; 00135 00136 private: 00137 vtkSliceCubes(const vtkSliceCubes&); // Not implemented. 00138 void operator=(const vtkSliceCubes&); // Not implemented. 00139 }; 00140 00141 #endif 00142