VTK: Common/ExecutionModel/vtkInformationExecutivePortVectorKey.h Source File

| VTK 9.3.1

vtkInformationExecutivePortVectorKey.h
Go to the documentation of this file.
1 // SPDX-FileCopyrightText: Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
2 // SPDX-License-Identifier: BSD-3-Clause
12 #ifndef vtkInformationExecutivePortVectorKey_h
13 #define vtkInformationExecutivePortVectorKey_h
14
15 #include "vtkCommonExecutionModelModule.h" // For export macro
16 #include "vtkInformationKey.h"
17
18 #include "vtkFilteringInformationKeyManager.h" // Manage instances of this type.
19
20 VTK_ABI_NAMESPACE_BEGIN
21 class vtkExecutive;
22
23 class VTKCOMMONEXECUTIONMODEL_EXPORT vtkInformationExecutivePortVectorKey : public vtkInformationKey
24 {
25 public:
26 vtkTypeMacro(vtkInformationExecutivePortVectorKey, vtkInformationKey);
27 void PrintSelf(ostream& os, vtkIndent indent) override;
28
29 vtkInformationExecutivePortVectorKey(const char* name, const char* location);
30 ~vtkInformationExecutivePortVectorKey() override;
31
37 static VTK_NEWINSTANCE vtkInformationExecutivePortVectorKey* MakeKey(
38 const char* name, const char* location)
39 {
40 return new vtkInformationExecutivePortVectorKey(name, location);
41 }
42
44
48 void Append(vtkInformation* info, vtkExecutive* executive, int port);
49 void Remove(vtkInformation* info, vtkExecutive* executive, int port);
50 void Set(vtkInformation* info, vtkExecutive** executives, int* ports, int length);
51 vtkExecutive** GetExecutives(vtkInformation* info);
52 int* GetPorts(vtkInformation* info);
53 void Get(vtkInformation* info, vtkExecutive** executives, int* ports);
54 int Length(vtkInformation* info);
56
62 void ShallowCopy(vtkInformation* from, vtkInformation* to) override;
63
67 void Remove(vtkInformation* info) override;
68
72 void Report(vtkInformation* info, vtkGarbageCollector* collector) override;
73
77 void Print(ostream& os, vtkInformation* info) override;
78
79 protected:
81
86 vtkExecutive** GetExecutivesWatchAddress(vtkInformation* info);
87 int* GetPortsWatchAddress(vtkInformation* info);
89
90 private:
91 vtkInformationExecutivePortVectorKey(const vtkInformationExecutivePortVectorKey&) = delete;
92 void operator=(const vtkInformationExecutivePortVectorKey&) = delete;
93 };
94
95 VTK_ABI_NAMESPACE_END
96 #endif
vtkExecutive
Superclass for all pipeline executives in VTK.
Definition: vtkExecutive.h:48
vtkGarbageCollector
Detect and break reference loops.
Definition: vtkGarbageCollector.h:80
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:38
vtkInformationExecutivePortVectorKey
Key for vtkExecutive/Port value pair vectors.
Definition: vtkInformationExecutivePortVectorKey.h:24
vtkInformationExecutivePortVectorKey::Remove
void Remove(vtkInformation *info, vtkExecutive *executive, int port)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::Get
void Get(vtkInformation *info, vtkExecutive **executives, int *ports)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::~vtkInformationExecutivePortVectorKey
~vtkInformationExecutivePortVectorKey() override
vtkInformationExecutivePortVectorKey::Length
int Length(vtkInformation *info)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::GetExecutivesWatchAddress
vtkExecutive ** GetExecutivesWatchAddress(vtkInformation *info)
Get the address at which the actual value is stored.
vtkInformationExecutivePortVectorKey::ShallowCopy
void ShallowCopy(vtkInformation *from, vtkInformation *to) override
Copy the entry associated with this key from one information object to another.
vtkInformationExecutivePortVectorKey::GetExecutives
vtkExecutive ** GetExecutives(vtkInformation *info)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent) override
Methods invoked by print to print information about the object including superclasses.
vtkInformationExecutivePortVectorKey::MakeKey
static vtkInformationExecutivePortVectorKey * MakeKey(const char *name, const char *location)
This method simply returns a new vtkInformationExecutivePortVectorKey, given a name and a location.
Definition: vtkInformationExecutivePortVectorKey.h:37
vtkInformationExecutivePortVectorKey::Append
void Append(vtkInformation *info, vtkExecutive *executive, int port)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::Print
void Print(ostream &os, vtkInformation *info) override
Print the key's value in an information object to a stream.
vtkInformationExecutivePortVectorKey::Set
void Set(vtkInformation *info, vtkExecutive **executives, int *ports, int length)
Get/Set the value associated with this key in the given information object.
vtkInformationExecutivePortVectorKey::Remove
void Remove(vtkInformation *info) override
Remove this key from the given information object.
vtkInformationExecutivePortVectorKey::GetPortsWatchAddress
int * GetPortsWatchAddress(vtkInformation *info)
Get the address at which the actual value is stored.
vtkInformationExecutivePortVectorKey::Report
void Report(vtkInformation *info, vtkGarbageCollector *collector) override
Report a reference this key has in the given information object.
vtkInformationExecutivePortVectorKey::vtkInformationExecutivePortVectorKey
vtkInformationExecutivePortVectorKey(const char *name, const char *location)
vtkInformationExecutivePortVectorKey::GetPorts
int * GetPorts(vtkInformation *info)
Get/Set the value associated with this key in the given information object.
vtkInformationKey
Superclass for vtkInformation keys.
Definition: vtkInformationKey.h:31
vtkInformation
Store vtkAlgorithm input/output information.
Definition: vtkInformation.h:72
vtkX3D::location
@ location
Definition: vtkX3D.h:406
vtkX3D::info
@ info
Definition: vtkX3D.h:376
vtkX3D::length
@ length
Definition: vtkX3D.h:393
vtkX3D::port
@ port
Definition: vtkX3D.h:447
vtkX3D::name
@ name
Definition: vtkX3D.h:219
vtkFilteringInformationKeyManager.h
vtkInformationKey.h
VTK_NEWINSTANCE
#define VTK_NEWINSTANCE
Definition: vtkWrappingHints.h:32