VTK
vtkDSPFilterGroup.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkDSPFilterGroup.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*----------------------------------------------------------------------------
16  Copyright (c) Sandia Corporation
17  See Copyright.txt or http://www.paraview.org/HTML/Copyright.html for details.
18 ----------------------------------------------------------------------------*/
28 #ifndef vtkDSPFilterGroup_h
29 #define vtkDSPFilterGroup_h
30 
31 #include "vtkFiltersHybridModule.h" // For export macro
32 #include "vtkObject.h"
33 
34 class vtkDSPFilterGroupVectorIntSTLCloak;
35 class vtkDSPFilterGroupVectorVectorIntSTLCloak;
36 class vtkDSPFilterGroupVectorArraySTLCloak;
37 class vtkDSPFilterGroupVectorVectorArraySTLCloak;
38 class vtkDSPFilterGroupVectorStringSTLCloak;
39 class vtkDSPFilterGroupVectorDefinitionSTLCloak;
40 class vtkFloatArray;
42 
44 {
45 public:
46  static vtkDSPFilterGroup *New();
48  void PrintSelf(ostream& os, vtkIndent indent);
49 
50 
51  void AddFilter(vtkDSPFilterDefinition *filter);
52  void RemoveFilter(char *a_outputVariableName);
53 
54  bool IsThisInputVariableInstanceNeeded( const char *a_name, int a_timestep, int a_outputTimestep );
55  bool IsThisInputVariableInstanceCached( const char *a_name, int a_timestep );
56  void AddInputVariableInstance( const char *a_name, int a_timestep, vtkFloatArray *a_data );
57 
58  vtkFloatArray *GetOutput( int a_whichFilter, int a_whichTimestep, int &a_instancesCalculated );
59 
60  vtkFloatArray *GetCachedInput( int a_whichFilter, int a_whichTimestep );
61  vtkFloatArray *GetCachedOutput( int a_whichFilter, int a_whichTimestep );
62 
63  const char *GetInputVariableName(int a_whichFilter);
64 
65  int GetNumFilters();
66 
67  void Copy( vtkDSPFilterGroup *other );
68 
69  vtkDSPFilterDefinition *GetFilter(int a_whichFilter);
70 
71  vtkDSPFilterGroupVectorDefinitionSTLCloak * /*std::vector<vtkDSPFilterDefinition *>*/ FilterDefinitions;
72 
73 protected:
76 
77 
78  vtkDSPFilterGroupVectorArraySTLCloak * /*std::vector<vtkFloatArray *>*/ CachedInputs;
79  vtkDSPFilterGroupVectorStringSTLCloak * /*std::vector<std::string>*/ CachedInputNames;
80  vtkDSPFilterGroupVectorIntSTLCloak * /*std::vector<int>*/ CachedInputTimesteps;
81 
82  vtkDSPFilterGroupVectorVectorArraySTLCloak * /*std::vector< std::vector<vtkFloatArray *> >*/ CachedOutputs;
83  vtkDSPFilterGroupVectorVectorIntSTLCloak * /*std::vector< std::vector<int> >*/ CachedOutputTimesteps;
84 
85 private:
86  vtkDSPFilterGroup(const vtkDSPFilterGroup&); // Not implemented
87  void operator=(const vtkDSPFilterGroup&); // Not implemented
88 };
89 
90 #endif
abstract base class for most VTK objects
Definition: vtkObject.h:61
used by the Exodus readers
dynamic, self-adjusting array of float
Definition: vtkFloatArray.h:45
vtkDSPFilterGroupVectorIntSTLCloak * CachedInputTimesteps
vtkDSPFilterGroupVectorVectorArraySTLCloak * CachedOutputs
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
Definition: vtkIndent.h:38
#define VTKFILTERSHYBRID_EXPORT
used by the Exodus readers
vtkDSPFilterGroupVectorDefinitionSTLCloak * FilterDefinitions
vtkDSPFilterGroupVectorArraySTLCloak * CachedInputs
vtkDSPFilterGroupVectorVectorIntSTLCloak * CachedOutputTimesteps
vtkDSPFilterGroupVectorStringSTLCloak * CachedInputNames
static vtkObject * New()