VTK
dox/Common/DataModel/vtkReebGraphSimplificationMetric.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    $RCSfile$
00005 
00006   Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
00007   All rights reserved.
00008   See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
00009 
00010      This software is distributed WITHOUT ANY WARRANTY; without even
00011      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
00012      PURPOSE.  See the above copyright notice for more information.
00013 
00014 =========================================================================*/
00048 #ifndef __vtkReebGraphSimplificationMetric_h
00049 #define __vtkReebGraphSimplificationMetric_h
00050 
00051 #include "vtkCommonDataModelModule.h" // For export macro
00052 #include "vtkObject.h"
00053 
00054 class vtkDataSet;
00055 class vtkDataArray;
00056 class vtkAbstractArray;
00057 
00058 class VTKCOMMONDATAMODEL_EXPORT vtkReebGraphSimplificationMetric :
00059   public vtkObject
00060 {
00061 public:
00062   static vtkReebGraphSimplificationMetric* New();
00063   vtkTypeMacro(vtkReebGraphSimplificationMetric, vtkObject);
00064   void PrintSelf(ostream& os, vtkIndent indent);
00065 
00067 
00071   vtkSetMacro(LowerBound, double);
00072   vtkGetMacro(LowerBound, double);
00074 
00076 
00080   vtkSetMacro(UpperBound, double);
00081   vtkGetMacro(UpperBound, double);
00083 
00085 
00090   virtual double ComputeMetric(vtkDataSet *mesh, vtkDataArray *field,
00091     vtkIdType startCriticalPoint, vtkAbstractArray *vertexList,
00092     vtkIdType endCriticalPoint);
00094 
00095 protected:
00096   vtkReebGraphSimplificationMetric();
00097   ~vtkReebGraphSimplificationMetric();
00098 
00099   double    LowerBound, UpperBound;
00100 
00101 private:
00102   vtkReebGraphSimplificationMetric(const vtkReebGraphSimplificationMetric&);
00103   // Not implemented.
00104   void operator=(const vtkReebGraphSimplificationMetric&);
00105   // Not implemented.
00106 };
00107 
00108 #endif