VTK  9.3.20240419
vtkDSPFilterGroup.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-FileCopyrightText: Copyright (c) Sandia Corporation
3 // SPDX-License-Identifier: BSD-3-Clause
14 #ifndef vtkDSPFilterGroup_h
15 #define vtkDSPFilterGroup_h
16 
17 #include "vtkFiltersHybridModule.h" // For export macro
18 #include "vtkObject.h"
19 
20 VTK_ABI_NAMESPACE_BEGIN
21 class vtkDSPFilterGroupVectorIntSTLCloak;
22 class vtkDSPFilterGroupVectorVectorIntSTLCloak;
23 class vtkDSPFilterGroupVectorArraySTLCloak;
24 class vtkDSPFilterGroupVectorVectorArraySTLCloak;
25 class vtkDSPFilterGroupVectorStringSTLCloak;
26 class vtkDSPFilterGroupVectorDefinitionSTLCloak;
27 class vtkFloatArray;
29 
30 class VTKFILTERSHYBRID_EXPORT vtkDSPFilterGroup : public vtkObject
31 {
32 public:
34  vtkTypeMacro(vtkDSPFilterGroup, vtkObject);
35  void PrintSelf(ostream& os, vtkIndent indent) override;
36 
38  void RemoveFilter(const char* a_outputVariableName);
39 
40  bool IsThisInputVariableInstanceNeeded(const char* a_name, int a_timestep, int a_outputTimestep);
41  bool IsThisInputVariableInstanceCached(const char* a_name, int a_timestep);
42  void AddInputVariableInstance(const char* a_name, int a_timestep, vtkFloatArray* a_data);
43 
44  vtkFloatArray* GetOutput(int a_whichFilter, int a_whichTimestep, int& a_instancesCalculated);
45 
46  vtkFloatArray* GetCachedInput(int a_whichFilter, int a_whichTimestep);
47  vtkFloatArray* GetCachedOutput(int a_whichFilter, int a_whichTimestep);
48 
49  const char* GetInputVariableName(int a_whichFilter);
50 
52 
53  void Copy(vtkDSPFilterGroup* other);
54 
55  vtkDSPFilterDefinition* GetFilter(int a_whichFilter);
56 
57  vtkDSPFilterGroupVectorDefinitionSTLCloak* /*std::vector<vtkDSPFilterDefinition *>*/
59 
60 protected:
62  ~vtkDSPFilterGroup() override;
63 
64  vtkDSPFilterGroupVectorArraySTLCloak* /*std::vector<vtkFloatArray *>*/ CachedInputs;
65  vtkDSPFilterGroupVectorStringSTLCloak* /*std::vector<std::string>*/ CachedInputNames;
66  vtkDSPFilterGroupVectorIntSTLCloak* /*std::vector<int>*/ CachedInputTimesteps;
67 
68  vtkDSPFilterGroupVectorVectorArraySTLCloak* /*std::vector< std::vector<vtkFloatArray *> >*/
70  vtkDSPFilterGroupVectorVectorIntSTLCloak* /*std::vector< std::vector<int> >*/
72 
73 private:
74  vtkDSPFilterGroup(const vtkDSPFilterGroup&) = delete;
75  void operator=(const vtkDSPFilterGroup&) = delete;
76 };
77 
78 VTK_ABI_NAMESPACE_END
79 #endif
used by the Exodus readers
used by the Exodus readers
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkFloatArray * GetOutput(int a_whichFilter, int a_whichTimestep, int &a_instancesCalculated)
const char * GetInputVariableName(int a_whichFilter)
vtkDSPFilterGroupVectorIntSTLCloak * CachedInputTimesteps
void AddFilter(vtkDSPFilterDefinition *filter)
static vtkDSPFilterGroup * New()
~vtkDSPFilterGroup() override
vtkDSPFilterGroupVectorStringSTLCloak * CachedInputNames
vtkFloatArray * GetCachedOutput(int a_whichFilter, int a_whichTimestep)
vtkDSPFilterDefinition * GetFilter(int a_whichFilter)
void AddInputVariableInstance(const char *a_name, int a_timestep, vtkFloatArray *a_data)
bool IsThisInputVariableInstanceNeeded(const char *a_name, int a_timestep, int a_outputTimestep)
vtkDSPFilterGroupVectorDefinitionSTLCloak * FilterDefinitions
vtkDSPFilterGroupVectorVectorIntSTLCloak * CachedOutputTimesteps
vtkDSPFilterGroupVectorVectorArraySTLCloak * CachedOutputs
vtkDSPFilterGroupVectorArraySTLCloak * CachedInputs
void Copy(vtkDSPFilterGroup *other)
void RemoveFilter(const char *a_outputVariableName)
bool IsThisInputVariableInstanceCached(const char *a_name, int a_timestep)
vtkFloatArray * GetCachedInput(int a_whichFilter, int a_whichTimestep)
dynamic, self-adjusting array of float
a simple class to control print indentation
Definition: vtkIndent.h:108
abstract base class for most VTK objects
Definition: vtkObject.h:162