Actual source code: ziguess.c
1: #include <petsc/private/fortranimpl.h>
2: #include <petscksp.h>
3: #include <petscviewer.h>
5: #if defined(PETSC_HAVE_FORTRAN_CAPS)
6: #define kspguessgettype_ KSPGUESSGETTYPE
7: #define kspguesssettype_ KSPGUESSSETTYPE
8: #define kspguessview_ KSPGUESSVIEW
9: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
10: #define kspguessgettype_ kspguessgettype
11: #define kspguesssettype_ kspguesssettype
12: #define kspguessview_ kspguessview
13: #endif
15: PETSC_EXTERN void kspguessgettype_(KSPGuess *kspguess, char *name, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len)
16: {
17: const char *tname;
19: *ierr = KSPGuessGetType(*kspguess, &tname);
20: if (*ierr) return;
21: *ierr = PetscStrncpy(name, tname, len);
22: FIXRETURNCHAR(PETSC_TRUE, name, len);
23: }
25: PETSC_EXTERN void kspguesssettype_(KSPGuess *kspguess, char *type, PetscErrorCode *ierr, PETSC_FORTRAN_CHARLEN_T len)
26: {
27: char *t;
29: FIXCHAR(type, len, t);
30: *ierr = KSPGuessSetType(*kspguess, t);
31: if (*ierr) return;
32: FREECHAR(type, t);
33: }
35: PETSC_EXTERN void kspguessview_(KSPGuess *kspguess, PetscViewer *viewer, PetscErrorCode *ierr)
36: {
37: PetscViewer v;
38: PetscPatchDefaultViewers_Fortran(viewer, v);
39: *ierr = KSPGuessView(*kspguess, v);
40: }