| 17 | { |
| 18 | |
| 19 | vtkVector3d AllGather(const vtkVector3d& spacing, vtkMultiProcessController* controller) |
| 20 | { |
| 21 | vtkVector3d in(spacing); |
| 22 | vtkVector3d out = in; |
| 23 | controller->AllReduce(in.GetData(), out.GetData(), 3, vtkCommunicator::MAX_OP); |
| 24 | for (int cc = 0; cc < 3; ++cc) |
| 25 | { |
| 26 | in[cc] = (in[cc] == 0 || in[cc] == out[cc]) ? out[cc] : VTK_DOUBLE_MAX; |
| 27 | } |
| 28 | |
| 29 | controller->AllReduce(in.GetData(), out.GetData(), 3, vtkCommunicator::MAX_OP); |
| 30 | return out; |
| 31 | } |
| 32 | |
| 33 | bool IsSpacingValid(const vtkVector3d& spacing) |
| 34 | { |
no test coverage detected