17 #include "vtkAlgorithm.h"
18 #include "vtkAlgorithmOutput.h"
19 #include "vtkDataObject.h"
20 #include "vtkInformation.h"
21 #include "vtkInformationIntegerVectorKey.h"
22 #include "vtkInformationKey.h"
23 #include "vtkInformationObjectBaseKey.h"
24 #include "vtkInformationVector.h"
25 #include "vtkObjectFactory.h"
43 vtkInformationVector** inInfoVec, vtkInformationVector* outInfoVec)
45 this->Superclass::CopyDefaultInformation(request, direction, inInfoVec, outInfoVec);
47 if (request->Has(REQUEST_UPDATE_EXTENT()))
49 vtkInformation* algorithmInfo = this->Algorithm->GetInformation();
53 vtkInformationVector* inArrayVec = algorithmInfo->Get(vtkAlgorithm::INPUT_ARRAYS_TO_PROCESS());
54 int num_arrays = inArrayVec ? inArrayVec->GetNumberOfInformationObjects() : 0;
55 int informationIndex = 0;
56 for (
int array_index = 0; array_index < num_arrays; array_index++)
58 vtkInformation* arrayInfo = this->Algorithm->GetInputArrayInformation(array_index);
60 if (arrayInfo->Has(vtkDataObject::FIELD_NAME()) &&
61 arrayInfo->Has(vtkAlgorithm::INPUT_PORT()) &&
62 arrayInfo->Has(vtkAlgorithm::INPUT_CONNECTION()) &&
63 arrayInfo->Has(vtkDataObject::FIELD_ASSOCIATION()))
65 int port = arrayInfo->Get(vtkAlgorithm::INPUT_PORT());
66 int connection = arrayInfo->Get(vtkAlgorithm::INPUT_CONNECTION());
67 if (port < 0 || port >= this->GetNumberOfInputPorts() || connection < 0 ||
68 connection >= this->GetNumberOfInputConnections(port))
72 vtkExecutive* input_executive = this->GetInputExecutive(port, connection);
76 assert(this->Algorithm->GetInputConnection(port, connection)->GetIndex() == 0);
88 this->Superclass::ResetPipelineInformation(port, info);
94 this->Superclass::PrintSelf(os, indent);
void PrintSelf(ostream &os, vtkIndent indent) override
~vtkPVCompositeDataPipeline() override
vtkPVCompositeDataPipeline()
void CopyDefaultInformation(vtkInformation *request, int direction, vtkInformationVector **inInfoVec, vtkInformationVector *outInfoVec) override
void ResetPipelineInformation(int port, vtkInformation *) override
void SetPostArrayToProcessInformation(int idx, vtkInformation *inInfo)
vtkStandardNewMacro(vtkPVCompositeDataPipeline)