class to handle inter-process communication of pixel data from non-contiguous regions of a shared index space.
More...
|
| vtkPPixelTransfer () |
|
| vtkPPixelTransfer (int srcRank, const vtkPixelExtent &srcWholeExt, const vtkPixelExtent &srcExt, int destRank, const vtkPixelExtent &destWholeExt, const vtkPixelExtent &destExt, int id=0) |
| Initialize a transaction from sub extent of source to sub extent of dest, where the subsets are different. More...
|
|
| vtkPPixelTransfer (int srcRank, const vtkPixelExtent &srcWholeExt, const vtkPixelExtent &targetExt, int destRank, const vtkPixelExtent &destWholeExt, int id) |
| Initialize a transaction from sub extent of source to sub extent of dest, where the subsets are the same. More...
|
|
| vtkPPixelTransfer (int srcRank, int destRank, const vtkPixelExtent &wholeExt, const vtkPixelExtent &targetExt, int id=0) |
| Initialize a transaction from sub extent of source to sub extent of dest, both the whole and the subsets are the same. More...
|
|
| vtkPPixelTransfer (int srcRank, int destRank, const vtkPixelExtent &ext, int id=0) |
| Initialize a transaction from sub extent of source to sub extent of dest, both the whole and the subsets are the same. More...
|
|
| vtkPPixelTransfer (int srcRank, const vtkPixelExtent &srcWholeExt, int destRank, const vtkPixelExtent &destWholeExt, int id=0) |
| Initialize a transaction from whole extent of source to whole extent of dest, where source and destination have different whole extents. More...
|
|
| vtkPPixelTransfer (const vtkPixelExtent &srcWholeExt, const vtkPixelExtent &srcExt, const vtkPixelExtent &destWholeExt, const vtkPixelExtent &destExt) |
| Initialize a transaction from sub extent of source to sub extent of dest, where the subsets are different. More...
|
|
| ~vtkPPixelTransfer () |
|
void | SetSourceRank (int rank) |
| Set/Get the MPI rank of source and destination processes. More...
|
|
int | GetSourceRank () const |
|
void | SetDestinationRank (int rank) |
|
int | GetDestinationRank () const |
|
bool | Sender (int rank) const |
| Tests to determine a given rank's role in this transaction. More...
|
|
bool | Receiver (int rank) const |
|
bool | Local (int rank) const |
|
void | SetSourceWholeExtent (vtkPixelExtent &srcExt) |
| Set/Get the source extent. More...
|
|
vtkPixelExtent & | GetSourceWholeExtent () |
|
const vtkPixelExtent & | GetSourceWholeExtent () const |
|
void | SetSourceExtent (vtkPixelExtent &srcExt) |
| Set/Get the source extent. More...
|
|
vtkPixelExtent & | GetSourceExtent () |
|
const vtkPixelExtent & | GetSourceExtent () const |
|
void | SetDestinationWholeExtent (vtkPixelExtent &destExt) |
| Set/get the destination extent. More...
|
|
vtkPixelExtent & | GetDestinationWholeExtent () |
|
const vtkPixelExtent & | GetDestinationWholeExtent () const |
|
void | SetDestinationExtent (vtkPixelExtent &destExt) |
| Set/get the destination extent. More...
|
|
vtkPixelExtent & | GetDestinationExtent () |
|
const vtkPixelExtent & | GetDestinationExtent () const |
|
void | SetTransactionId (int id) |
| Set/get the transaction id. More...
|
|
int | GetTransactionId () const |
|
void | SetUseBlockingSend (int val) |
| Enable/diasable non-blocking communication. More...
|
|
int | GetUseBlockingSend () const |
|
void | SetUseBlockingRecv (int val) |
|
int | GetUseBlockingRecv () const |
|
template<typename SOURCE_TYPE , typename DEST_TYPE > |
int | Execute (MPI_Comm comm, int rank, int nComps, SOURCE_TYPE *srcData, DEST_TYPE *destData, std::vector< MPI_Request > &reqs, std::deque< MPI_Datatype > &types, int tag) |
| Transfer data from source to destination. More...
|
|
int | Execute (MPI_Comm comm, int rank, int nComps, int srcType, void *srcData, int destType, void *destData, std::vector< MPI_Request > &reqs, std::deque< MPI_Datatype > &types, int tag) |
| Transfer data from source to destination. More...
|
|
int | Blit (int nComps, int srcType, void *srcData, int destType, void *destData) |
| Block transfer for local memory to memory transfers, without using mpi. More...
|
|
| vtkPixelTransfer ()=default |
|
|
static int | Blit (const vtkPixelExtent &ext, int nComps, int srcType, void *srcData, int destType, void *destData) |
| for memory to memory transfers. More...
|
|
static int | Blit (const vtkPixelExtent &srcWhole, const vtkPixelExtent &srcSubset, const vtkPixelExtent &destWhole, const vtkPixelExtent &destSubset, int nSrcComps, int srcType, void *srcData, int nDestComps, int destType, void *destData) |
| for memory to memory transfers. More...
|
|
template<typename SOURCE_TYPE , typename DEST_TYPE > |
static int | Blit (const vtkPixelExtent &srcWhole, const vtkPixelExtent &srcSubset, const vtkPixelExtent &destWhole, const vtkPixelExtent &destSubset, int nSrcComps, SOURCE_TYPE *srcData, int nDestComps, DEST_TYPE *destData) |
| for local memory to memory transfers More...
|
|
class to handle inter-process communication of pixel data from non-contiguous regions of a shared index space.
For example copying a subset of one image to a subset of another. The class can be used for purely local(no MPI) non-contigious data transfers by setting the source and destination ranks to the same id. In that case memcpy is used.
- See also
- vtkPixelExtent
Definition at line 47 of file vtkPPixelTransfer.h.