20 #ifndef vtkMPIPixelView_h
21 #define vtkMPIPixelView_h
38 MPI_Initialized(&mpiOk);
41 std::cerr <<
"This class requires the MPI runtime." << std::endl;
48 MPI_Datatype nativeType;
49 iErr=MPI_Type_contiguous(
59 domain.
Size(domainDims);
65 decomp.
Size(decompDims);
73 unsigned long long nCells=decomp.
Size();
74 iErr=MPI_Type_contiguous((
int)nCells, nativeType, &view);
77 MPI_Type_free(&nativeType);
83 iErr=MPI_Type_create_subarray(
93 MPI_Type_free(&nativeType);
97 iErr=MPI_Type_commit(&view);
100 MPI_Type_free(&nativeType);
104 MPI_Type_free(&nativeType);
void GetStartIndex(int first[2]) const
Get the start/end index.
int vtkMPIPixelViewNew(const vtkPixelExtent &domain, const vtkPixelExtent &decomp, int nComps, MPI_Datatype &view)
Representation of a cartesian pixel plane and common operations on it.
void Size(T nCells[2]) const
Get the number in each direction.