00001 
00002 
00003 
00004 
00005 
00006 
00007 
00008 
00009 
00010 
00011 
00012 
00013 
00014 
00015 
00016 
00017 
00018 
00019 
00020 #ifndef __vtkDSPFilterDefinition_h
00021 #define __vtkDSPFilterDefinition_h
00022 
00023 
00024 
00025 #include "vtkObject.h"
00026 
00027 class vtkDSPFilterDefinitionVectorDoubleSTLCloak;
00028 class vtkDSPFilterDefinitionStringSTLCloak;
00029 
00030 class VTK_HYBRID_EXPORT vtkDSPFilterDefinition : public vtkObject
00031 {
00032  public:
00033   vtkTypeRevisionMacro(vtkDSPFilterDefinition, vtkObject);
00034   void PrintSelf(ostream &os, vtkIndent indent);
00035   static vtkDSPFilterDefinition *New();
00036 
00037  protected:
00038   vtkDSPFilterDefinition();
00039   vtkDSPFilterDefinition(vtkDSPFilterDefinition *other);
00040   ~vtkDSPFilterDefinition();
00041 
00042  public:
00043   void Copy(vtkDSPFilterDefinition *other);
00044   void Clear();
00045   bool IsThisInputVariableInstanceNeeded( int a_timestep, int a_outputTimestep );
00046 
00047   void PushBackNumeratorWeight(double a_value);
00048   void PushBackDenominatorWeight(double a_value);
00049   void PushBackForwardNumeratorWeight(double a_value);
00050   void SetInputVariableName(char *a_value);
00051   void SetOutputVariableName(char *a_value);
00052   const char *GetInputVariableName();
00053   const char *GetOutputVariableName();
00054 
00055   int GetNumNumeratorWeights();
00056   int GetNumDenominatorWeights();
00057   int GetNumForwardNumeratorWeights();
00058 
00059   double GetNumeratorWeight(int a_which);
00060   double GetDenominatorWeight(int a_which);
00061   double GetForwardNumeratorWeight(int a_which);
00062 
00063 
00064   vtkDSPFilterDefinitionVectorDoubleSTLCloak *NumeratorWeights;
00065   vtkDSPFilterDefinitionVectorDoubleSTLCloak *DenominatorWeights;
00066   vtkDSPFilterDefinitionVectorDoubleSTLCloak *ForwardNumeratorWeights;
00067 
00068   vtkDSPFilterDefinitionStringSTLCloak *InputVariableName;
00069   vtkDSPFilterDefinitionStringSTLCloak *OutputVariableName;
00070 
00071 protected:
00072 
00073 private:
00074   vtkDSPFilterDefinition(const vtkDSPFilterDefinition&); 
00075   void operator=(const vtkDSPFilterDefinition&); 
00076 };
00077 
00078 
00079 
00080 #endif