1b45d2f2cSJed Brown #include <petsc-private/fortranimpl.h> 2c6db04a5SJed Brown #include <petscdm.h> 3665c2dedSJed Brown #include <petscviewer.h> 49a42bb27SBarry Smith 59a42bb27SBarry Smith #if defined(PETSC_HAVE_FORTRAN_CAPS) 624e7ded0SBarry Smith #define dmview_ DMVIEW 75b400853SJed Brown #define dmsetoptionsprefix_ DMSETOPTIONSPREFIX 8*b412c318SBarry Smith #define dmsetmattype_ DMSETMATTYPE 9*b412c318SBarry Smith #define dmsetvectype_ DMSETVECTYPE 109a42bb27SBarry Smith #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE) 1124e7ded0SBarry Smith #define dmview_ dmview 125b400853SJed Brown #define dmsetoptionsprefix_ dmsetoptionsprefix 13*b412c318SBarry Smith #define dmsetmattype_ dmsetmattype 14*b412c318SBarry Smith #define dmsetvectype_ dmsetvectype 159a42bb27SBarry Smith #endif 169a42bb27SBarry Smith 178cc058d9SJed Brown PETSC_EXTERN void PETSC_STDCALL dmview_(DM *da,PetscViewer *vin,PetscErrorCode *ierr) 189a42bb27SBarry Smith { 199a42bb27SBarry Smith PetscViewer v; 209a42bb27SBarry Smith PetscPatchDefaultViewers_Fortran(vin,v); 219a42bb27SBarry Smith *ierr = DMView(*da,v); 229a42bb27SBarry Smith } 23950540a4SJed Brown 248cc058d9SJed Brown PETSC_EXTERN void PETSC_STDCALL dmsetoptionsprefix_(DM *dm,CHAR prefix PETSC_MIXED_LEN(len), PetscErrorCode *ierr PETSC_END_LEN(len)) 255b400853SJed Brown { 265b400853SJed Brown char *t; 275b400853SJed Brown 285b400853SJed Brown FIXCHAR(prefix,len,t); 295b400853SJed Brown *ierr = DMSetOptionsPrefix(*dm,t); 305b400853SJed Brown FREECHAR(prefix,t); 315b400853SJed Brown } 32*b412c318SBarry Smith 33*b412c318SBarry Smith PETSC_EXTERN void PETSC_STDCALL dmsetmattype_(DM *dm,CHAR prefix PETSC_MIXED_LEN(len), PetscErrorCode *ierr PETSC_END_LEN(len)) 34*b412c318SBarry Smith { 35*b412c318SBarry Smith char *t; 36*b412c318SBarry Smith 37*b412c318SBarry Smith FIXCHAR(prefix,len,t); 38*b412c318SBarry Smith *ierr = DMSetMatType(*dm,t); 39*b412c318SBarry Smith FREECHAR(prefix,t); 40*b412c318SBarry Smith } 41*b412c318SBarry Smith 42*b412c318SBarry Smith 43*b412c318SBarry Smith PETSC_EXTERN void PETSC_STDCALL dmsetvectype_(DM *dm,CHAR prefix PETSC_MIXED_LEN(len), PetscErrorCode *ierr PETSC_END_LEN(len)) 44*b412c318SBarry Smith { 45*b412c318SBarry Smith char *t; 46*b412c318SBarry Smith 47*b412c318SBarry Smith FIXCHAR(prefix,len,t); 48*b412c318SBarry Smith *ierr = DMSetVecType(*dm,t); 49*b412c318SBarry Smith FREECHAR(prefix,t); 50*b412c318SBarry Smith } 51