Actual source code: zdmgetf.c

  1: #include <petsc/private/fortranimpl.h>
  2: #include <petscdm.h>

  4: #if defined(PETSC_HAVE_FORTRAN_CAPS)
  5:   #define dmgetnamedglobalvector_     DMGETNAMEDGLOBALVECTOR
  6:   #define dmrestorenamedglobalvector_ DMRESTORENAMEDGLOBALVECTOR
  7: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
  8:   #define dmgetnamedglobalvector_     dmgetnamedglobalvector
  9:   #define dmrestorenamedglobalvector_ dmrestorenamedglobalvector
 10: #endif

 12: PETSC_EXTERN void dmgetnamedglobalvector_(DM *dm, char *name, Vec *X, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len)
 13: {
 14:   char *t;

 16:   FIXCHAR(name, len, t);
 17:   *ierr = DMGetNamedGlobalVector(*dm, t, X);
 18:   if (*ierr) return;
 19:   FREECHAR(name, t);
 20: }

 22: PETSC_EXTERN void dmrestorenamedglobalvector_(DM *dm, char *name, Vec *X, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len)
 23: {
 24:   char *t;

 26:   FIXCHAR(name, len, t);
 27:   *ierr = DMRestoreNamedGlobalVector(*dm, t, X);
 28:   if (*ierr) return;
 29:   FREECHAR(name, t);
 30: }