VTK
vtkEnsembleSource.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: Visualization Toolkit
4 Module: vtkEnsembleSource.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=========================================================================*/
30#ifndef vtkEnsembleSource_h
31#define vtkEnsembleSource_h
32
33#include "vtkCommonExecutionModelModule.h" // For export macro
34#include "vtkAlgorithm.h"
35
36struct vtkEnsembleSourceInternal;
37class vtkTable;
41
42class VTKCOMMONEXECUTIONMODEL_EXPORT vtkEnsembleSource : public vtkAlgorithm
43{
44public:
47 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
48
55
60
64 unsigned int GetNumberOfMembers();
65
67
73 vtkSetMacro(CurrentMember, unsigned int);
74 vtkGetMacro(CurrentMember, unsigned int);
76
83
88
93
94protected:
96 ~vtkEnsembleSource() VTK_OVERRIDE;
97
98 static vtkInformationIntegerKey* DATA_MEMBER();
99
100 friend class vtkInformationEnsembleMemberRequestKey;
101
102 int ProcessRequest(vtkInformation *request,
103 vtkInformationVector **inputVector,
104 vtkInformationVector *outputVector) VTK_OVERRIDE;
105 int FillOutputPortInformation(int, vtkInformation*) VTK_OVERRIDE;
106
107 vtkAlgorithm* GetCurrentReader(vtkInformation*);
108
109 vtkEnsembleSourceInternal* Internal;
110 unsigned int CurrentMember;
111
112 vtkTable* MetaData;
113
114private:
115 vtkEnsembleSource(const vtkEnsembleSource&) VTK_DELETE_FUNCTION;
116 void operator=(const vtkEnsembleSource&) VTK_DELETE_FUNCTION;
117};
118
119#endif
Superclass for all sources, filters, and sinks in VTK.
Definition: vtkAlgorithm.h:60
source that manages dataset ensembles
static vtkEnsembleSource * New()
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
unsigned int GetNumberOfMembers()
Returns the number of ensemble members.
void AddMember(vtkAlgorithm *)
Add an algorithm (source) that will produce the next ensemble member.
static vtkInformationIntegerRequestKey * UPDATE_MEMBER()
Key used to request a particular ensemble member.
void SetMetaData(vtkTable *)
Set the meta-data that will be propagated downstream.
~vtkEnsembleSource() override
void RemoveAllMembers()
Removes all ensemble members.
static vtkInformationDataObjectMetaDataKey * META_DATA()
Meta-data for the ensemble.
a simple class to control print indentation
Definition: vtkIndent.h:40
key used to define meta-data of type vtkDataObject vtkInformationDataObjectMetaDataKey is a vtkInform...
Key for integer values in vtkInformation.
key that can used to request integer values from the pipeline vtkInformationIntegerRequestKey is a vt...
Store zero or more vtkInformation instances.
Store vtkAlgorithm input/output information.
A table, which contains similar-typed columns of data.
Definition: vtkTable.h:69
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.