157f21012SBarry Smith 257f21012SBarry Smith static char help[] = "Tests PetscCommGetComm().\n"; 357f21012SBarry Smith 457f21012SBarry Smith #include <petscsys.h> 557f21012SBarry Smith 69371c9d4SSatish Balay int main(int argc, char **argv) { 757f21012SBarry Smith MPI_Comm comms[10], comm; 857f21012SBarry Smith PetscInt i; 957f21012SBarry Smith PetscRandom rand; 1057f21012SBarry Smith 11327415f7SBarry Smith PetscFunctionBeginUser; 129566063dSJacob Faibussowitsch PetscCall(PetscInitialize(&argc, &argv, (char *)0, help)); 139566063dSJacob Faibussowitsch PetscCall(PetscRandomCreate(PETSC_COMM_WORLD, &rand)); 149566063dSJacob Faibussowitsch PetscCall(PetscObjectGetComm((PetscObject)rand, &comm)); 15*48a46eb9SPierre Jolivet for (i = 0; i < 10; i++) PetscCall(PetscCommGetComm(comm, &comms[i])); 16*48a46eb9SPierre Jolivet for (i = 0; i < 5; i++) PetscCall(PetscCommRestoreComm(comm, &comms[i])); 17*48a46eb9SPierre Jolivet for (i = 0; i < 5; i++) PetscCall(PetscCommGetComm(comm, &comms[i])); 18*48a46eb9SPierre Jolivet for (i = 0; i < 10; i++) PetscCall(PetscCommRestoreComm(comm, &comms[i])); 199566063dSJacob Faibussowitsch PetscCall(PetscRandomDestroy(&rand)); 209566063dSJacob Faibussowitsch PetscCall(PetscFinalize()); 21b122ec5aSJacob Faibussowitsch return 0; 2257f21012SBarry Smith } 2357f21012SBarry Smith 2457f21012SBarry Smith /*TEST 2557f21012SBarry Smith 2657f21012SBarry Smith test: 2757f21012SBarry Smith requires: defined(PETSC_USE_LOG) 2857f21012SBarry Smith args: -info 2957f21012SBarry Smith filter: grep Reusing | wc -l 3057f21012SBarry Smith 3157f21012SBarry Smith TEST*/ 32