VTK
dox/Filters/Hybrid/vtkDSPFilterDefinition.h
Go to the documentation of this file.
00001 /*=========================================================================
00002 
00003   Program:   Visualization Toolkit
00004   Module:    vtkDSPFilterDefinition.h
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 =========================================================================*/
00015 /*----------------------------------------------------------------------------
00016  Copyright (c) Sandia Corporation
00017  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
00018 ----------------------------------------------------------------------------*/
00028 #ifndef __vtkDSPFilterDefinition_h
00029 #define __vtkDSPFilterDefinition_h
00030 
00031 
00032 
00033 #include "vtkFiltersHybridModule.h" // For export macro
00034 #include "vtkObject.h"
00035 
00036 class vtkDSPFilterDefinitionVectorDoubleSTLCloak;
00037 class vtkDSPFilterDefinitionStringSTLCloak;
00038 
00039 class VTKFILTERSHYBRID_EXPORT vtkDSPFilterDefinition : public vtkObject
00040 {
00041  public:
00042   vtkTypeMacro(vtkDSPFilterDefinition, vtkObject);
00043   void PrintSelf(ostream &os, vtkIndent indent);
00044   static vtkDSPFilterDefinition *New();
00045 
00046  protected:
00047   vtkDSPFilterDefinition();
00048   vtkDSPFilterDefinition(vtkDSPFilterDefinition *other);
00049   ~vtkDSPFilterDefinition();
00050 
00051  public:
00052   void Copy(vtkDSPFilterDefinition *other);
00053   void Clear();
00054   bool IsThisInputVariableInstanceNeeded( int a_timestep, int a_outputTimestep );
00055 
00056   void PushBackNumeratorWeight(double a_value);
00057   void PushBackDenominatorWeight(double a_value);
00058   void PushBackForwardNumeratorWeight(double a_value);
00059   void SetInputVariableName(char *a_value);
00060   void SetOutputVariableName(char *a_value);
00061   const char *GetInputVariableName();
00062   const char *GetOutputVariableName();
00063 
00064   int GetNumNumeratorWeights();
00065   int GetNumDenominatorWeights();
00066   int GetNumForwardNumeratorWeights();
00067 
00068   double GetNumeratorWeight(int a_which);
00069   double GetDenominatorWeight(int a_which);
00070   double GetForwardNumeratorWeight(int a_which);
00071 
00072 
00073   vtkDSPFilterDefinitionVectorDoubleSTLCloak *NumeratorWeights;
00074   vtkDSPFilterDefinitionVectorDoubleSTLCloak *DenominatorWeights;
00075   vtkDSPFilterDefinitionVectorDoubleSTLCloak *ForwardNumeratorWeights;
00076 
00077   vtkDSPFilterDefinitionStringSTLCloak *InputVariableName;
00078   vtkDSPFilterDefinitionStringSTLCloak *OutputVariableName;
00079 
00080 protected:
00081 
00082 private:
00083   vtkDSPFilterDefinition(const vtkDSPFilterDefinition&); // Not implemented
00084   void operator=(const vtkDSPFilterDefinition&); // Not implemented
00085 };
00086 
00087 
00088 
00089 #endif