| 74 | } |
| 75 | |
| 76 | void MyProcess::Execute() |
| 77 | { |
| 78 | this->ReturnValue = 1; |
| 79 | int numProcs = this->Controller->GetNumberOfProcesses(); |
| 80 | int me = this->Controller->GetLocalProcessId(); |
| 81 | |
| 82 | int i, go; |
| 83 | |
| 84 | vtkSmartPointer<vtkCompositeRenderManager> prm = |
| 85 | vtkSmartPointer<vtkCompositeRenderManager>::New(); |
| 86 | |
| 87 | // READER |
| 88 | vtkSmartPointer<vtkStructuredPoints> sp; |
| 89 | if (me == 0) |
| 90 | { |
| 91 | vtkSmartPointer<vtkStructuredPointsReader> spr = |
| 92 | vtkSmartPointer<vtkStructuredPointsReader>::New(); |
| 93 | char* fname = vtkTestUtilities::ExpandDataFileName(this->Argc, this->Argv, "Data/ironProt.vtk"); |
| 94 | spr->SetFileName(fname); |
| 95 | sp = spr->GetOutput(); |
| 96 | spr->Update(); |
| 97 | delete[] fname; |
| 98 | |
| 99 | go = 1; |
| 100 | if ((sp == nullptr) || (sp->GetNumberOfCells() == 0)) |
| 101 | { |
| 102 | if (sp) |
| 103 | { |
| 104 | std::cout << "Failure: input file has no cells" << std::endl; |
| 105 | } |
| 106 | go = 0; |
| 107 | } |
| 108 | } |
| 109 | else |
| 110 | { |
| 111 | sp = vtkSmartPointer<vtkStructuredPoints>::New(); |
| 112 | } |
| 113 | |
| 114 | vtkMPICommunicator* comm = vtkMPICommunicator::SafeDownCast(this->Controller->GetCommunicator()); |
| 115 | comm->Broadcast(&go, 1, 0); |
| 116 | if (!go) |
| 117 | { |
| 118 | return; |
| 119 | } |
| 120 | |
| 121 | // FILTER WE ARE TRYING TO TEST |
| 122 | vtkSmartPointer<vtkTransmitImageDataPiece> pass = |
| 123 | vtkSmartPointer<vtkTransmitImageDataPiece>::New(); |
| 124 | pass->SetController(this->Controller); |
| 125 | pass->SetInputData(sp); |
| 126 | |
| 127 | // FILTERING |
| 128 | vtkSmartPointer<vtkContourFilter> cf = vtkSmartPointer<vtkContourFilter>::New(); |
| 129 | cf->SetInputConnection(pass->GetOutputPort()); |
| 130 | cf->SetNumberOfContours(1); |
| 131 | cf->SetValue(0, 10.0); |
| 132 | // I am not sure that this is needed. |
| 133 | //(cf->GetInput())->RequestExactExtentOn(); |
nothing calls this directly
no test coverage detected