xref: /petsc/src/vec/is/sf/impls/basic/gatherv/sfgatherv.h (revision dd5b3ca66ca4de5e00e985c205d0f80060c552e8)
1*dd5b3ca6SJunchao Zhang #if !defined(_SFGATHERV_H)
2*dd5b3ca6SJunchao Zhang #define _SFGATHERV_H
3*dd5b3ca6SJunchao Zhang 
4*dd5b3ca6SJunchao Zhang #include <../src/vec/is/sf/impls/basic/allgatherv/sfallgatherv.h>
5*dd5b3ca6SJunchao Zhang 
6*dd5b3ca6SJunchao Zhang typedef PetscSFPack_Allgatherv PetscSFPack_Gatherv;
7*dd5b3ca6SJunchao Zhang #define PetscSFPackGet_Gatherv PetscSFPackGet_Allgatherv
8*dd5b3ca6SJunchao Zhang 
9*dd5b3ca6SJunchao Zhang /* Reuse the type. The difference is some fields (displs, recvcounts) are only significant
10*dd5b3ca6SJunchao Zhang    on rank 0 in Gatherv. On other ranks they are harmless NULL.
11*dd5b3ca6SJunchao Zhang  */
12*dd5b3ca6SJunchao Zhang typedef PetscSF_Allgatherv PetscSF_Gatherv;
13*dd5b3ca6SJunchao Zhang 
14*dd5b3ca6SJunchao Zhang PETSC_INTERN PetscErrorCode PetscSFFetchAndOpBegin_Gatherv(PetscSF,MPI_Datatype,void*,const void*,void*,MPI_Op);
15*dd5b3ca6SJunchao Zhang #endif
16