16dd63270SBarry Smith#if defined(PETSC_HAVE_FORTRAN_TYPE_STAR) 26dd63270SBarry Smith Interface 36dd63270SBarry Smith subroutine PetscSFBcastBegin(sf,unit,rarray,larray,op,ierr) 4*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 56dd63270SBarry Smith import tPetscSF 66dd63270SBarry Smith PetscSF :: sf 76dd63270SBarry Smith PetscMPIInt :: unit,op 86dd63270SBarry Smith type(*) :: rarray(:) 96dd63270SBarry Smith type(*) :: larray(:) 106dd63270SBarry Smith PetscErrorCode :: ierr 116dd63270SBarry Smith end Subroutine PetscSFBcastBegin 126dd63270SBarry Smith 136dd63270SBarry Smith subroutine PetscSFBcastEnd(sf,unit,rarray,larray,op,ierr) 14*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 156dd63270SBarry Smith import tPetscSF 166dd63270SBarry Smith PetscSF :: sf 176dd63270SBarry Smith PetscMPIInt :: unit,op 186dd63270SBarry Smith type(*) :: rarray(:) 196dd63270SBarry Smith type(*) :: larray(:) 206dd63270SBarry Smith PetscErrorCode :: ierr 216dd63270SBarry Smith end Subroutine PetscSFBcastEnd 226dd63270SBarry Smith 236dd63270SBarry Smith subroutine PetscSFReduceBegin(sf,unit,larray,rarray,op,ierr) 24*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 256dd63270SBarry Smith import tPetscSF 266dd63270SBarry Smith PetscSF :: sf 276dd63270SBarry Smith PetscMPIInt :: unit,op 286dd63270SBarry Smith type(*) :: larray(:) 296dd63270SBarry Smith type(*) :: rarray(:) 306dd63270SBarry Smith PetscErrorCode :: ierr 316dd63270SBarry Smith end Subroutine PetscSFReduceBegin 326dd63270SBarry Smith 336dd63270SBarry Smith subroutine PetscSFReduceEnd(sf,unit,larray,rarray,op,ierr) 34*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 356dd63270SBarry Smith import tPetscSF 366dd63270SBarry Smith PetscSF :: sf 376dd63270SBarry Smith PetscMPIInt :: unit,op 386dd63270SBarry Smith type(*) :: larray(:) 396dd63270SBarry Smith type(*) :: rarray(:) 406dd63270SBarry Smith PetscErrorCode :: ierr 416dd63270SBarry Smith end Subroutine PetscSFReduceEnd 426dd63270SBarry Smith end Interface 436dd63270SBarry Smith#endif 446dd63270SBarry Smith 456dd63270SBarry Smith interface 466dd63270SBarry Smith subroutine VecRestoreOwnershipRanges(v, ptr, ierr) 47*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 486dd63270SBarry Smith import tVec 4911105114SMartin Diehl Vec :: v 506dd63270SBarry Smith PetscInt, pointer :: ptr(:) 5111105114SMartin Diehl PetscErrorCode, intent(out) :: ierr 526dd63270SBarry Smith end subroutine VecRestoreOwnershipRanges 536dd63270SBarry Smith 546dd63270SBarry Smith subroutine PetscSFRestoreGraph(sf,nroots,nleaves,ilocal,iremote,ierr) 55*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 566dd63270SBarry Smith import tPetscSF,sPetscSFNode 576dd63270SBarry Smith PetscSF :: sf 586dd63270SBarry Smith PetscInt :: nroots,nleaves 596dd63270SBarry Smith PetscInt, pointer :: ilocal(:) 606dd63270SBarry Smith type(sPetscSFNode), pointer :: iremote(:) 616dd63270SBarry Smith PetscErrorCode :: ierr 626dd63270SBarry Smith end Subroutine PetscSFRestoreGraph 636dd63270SBarry Smith 646dd63270SBarry Smith Subroutine VecRestoreValuesSection(v,s,p,va,ierr) 65*fe66ebccSMartin Diehl use, intrinsic :: ISO_C_binding 666dd63270SBarry Smith import tVec,tPetscSection 676dd63270SBarry Smith PetscScalar, pointer :: va(:) 686dd63270SBarry Smith PetscErrorCode ierr 696dd63270SBarry Smith Vec v 706dd63270SBarry Smith PetscSection s 716dd63270SBarry Smith PetscInt p 726dd63270SBarry Smith End Subroutine 736dd63270SBarry Smith End Interface 74