VTK
|
00001 #ifndef vtkKMeansDistanceFunctorCalculator_h 00002 #define vtkKMeansDistanceFunctorCalculator_h 00003 00026 #include "vtkFiltersStatisticsModule.h" // For export macro 00027 #include "vtkKMeansDistanceFunctor.h" 00028 00029 class vtkFunctionParser; 00030 class vtkDoubleArray; 00031 00032 class VTKFILTERSSTATISTICS_EXPORT vtkKMeansDistanceFunctorCalculator : public vtkKMeansDistanceFunctor 00033 { 00034 public: 00035 static vtkKMeansDistanceFunctorCalculator* New(); 00036 vtkTypeMacro(vtkKMeansDistanceFunctorCalculator,vtkKMeansDistanceFunctor); 00037 virtual void PrintSelf( ostream& os, vtkIndent indent ); 00038 00041 virtual void operator() ( double&, vtkVariantArray*, vtkVariantArray * ); 00042 00044 00045 vtkSetStringMacro(DistanceExpression); 00046 vtkGetStringMacro(DistanceExpression); 00048 00050 00054 virtual void SetFunctionParser( vtkFunctionParser* ); 00055 vtkGetObjectMacro(FunctionParser,vtkFunctionParser); 00057 00058 protected: 00059 vtkKMeansDistanceFunctorCalculator(); 00060 virtual ~vtkKMeansDistanceFunctorCalculator(); 00061 00062 char* DistanceExpression; 00063 int TupleSize; 00064 vtkFunctionParser* FunctionParser; 00065 00066 private: 00067 vtkKMeansDistanceFunctorCalculator( const vtkKMeansDistanceFunctorCalculator& ); // Not implemented. 00068 void operator = ( const vtkKMeansDistanceFunctorCalculator& ); // Not implemented. 00069 }; 00070 00071 #endif // vtkKMeansDistanceFunctorCalculator_h