Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members   Related Pages  

Patented/vtkSynchronizedTemplates2D.h

Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile: vtkSynchronizedTemplates2D.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 PATENT PENDING.
00016 
00017      Application of this software for commercial purposes requires 
00018      a license grant from Kitware. Contact:
00019          Ken Martin
00020          Kitware
00021          469 Clifton Corporate Parkway,
00022          Clifton Park, NY 12065
00023          Phone:1-518-371-3971 
00024      for more information.
00025 
00026 =========================================================================*/
00055 #ifndef __vtkSynchronizedTemplates2D_h
00056 #define __vtkSynchronizedTemplates2D_h
00057 
00058 #include "vtkPolyDataSource.h"
00059 
00060 #include "vtkContourValues.h" // Needed for direct access to ContourValues
00061 
00062 class vtkImageData;
00063 class vtkKitwareContourFilter;
00064 
00065 class VTK_PATENTED_EXPORT vtkSynchronizedTemplates2D : public vtkPolyDataSource
00066 {
00067 public:
00068   static vtkSynchronizedTemplates2D *New();
00069   vtkTypeRevisionMacro(vtkSynchronizedTemplates2D,vtkPolyDataSource);
00070   void PrintSelf(ostream& os, vtkIndent indent);
00071 
00073 
00074   void SetInput(vtkImageData *input);
00075   vtkImageData *GetInput();
00077   
00079   unsigned long int GetMTime();
00080 
00083   void SetValue(int i, float value) {this->ContourValues->SetValue(i,value);}
00084 
00086   float GetValue(int i) {return this->ContourValues->GetValue(i);}
00087 
00090   float *GetValues() {return this->ContourValues->GetValues();}
00091 
00093 
00096   void GetValues(float *contourValues) {
00097     this->ContourValues->GetValues(contourValues);}
00099 
00101 
00104   void SetNumberOfContours(int number) {
00105     this->ContourValues->SetNumberOfContours(number);}
00107 
00109 
00110   int GetNumberOfContours() {
00111     return this->ContourValues->GetNumberOfContours();}
00113 
00115 
00117   void GenerateValues(int numContours, float range[2]) {
00118     this->ContourValues->GenerateValues(numContours, range);}
00120 
00122 
00124   void GenerateValues(int numContours, float rangeStart, float rangeEnd)
00125     {this->ContourValues->GenerateValues(numContours, rangeStart, rangeEnd);}
00127 
00129 
00131   vtkSetMacro(ComputeScalars,int);
00132   vtkGetMacro(ComputeScalars,int);
00133   vtkBooleanMacro(ComputeScalars,int);
00135 
00136 protected:
00137   vtkSynchronizedTemplates2D();
00138   ~vtkSynchronizedTemplates2D();
00139 
00141 
00144   vtkGetStringMacro(InputScalarsSelection);
00145   void SelectInputScalars(const char *fieldName) 
00146     {this->SetInputScalarsSelection(fieldName);}
00148   
00149   void Execute();
00150   vtkContourValues *ContourValues;
00151 
00152   int ComputeScalars;
00153 
00154   char *InputScalarsSelection;
00155   vtkSetStringMacro(InputScalarsSelection);
00156 
00157 private:
00158   //BTX
00159   friend class VTK_PATENTED_EXPORT vtkKitwareContourFilter;
00160   //ETX
00161 private:
00162   vtkSynchronizedTemplates2D(const vtkSynchronizedTemplates2D&);  // Not implemented.
00163   void operator=(const vtkSynchronizedTemplates2D&);  // Not implemented.
00164 };
00165 
00166 
00167 #endif
00168