Actual source code: zzoomf.c
1: #include <petsc/private/fortranimpl.h>
2: #include <petscdraw.h>
4: #if defined(PETSC_HAVE_FORTRAN_CAPS)
5: #define petscdrawzoom_ PETSCDRAWZOOM
6: #elif !defined(PETSC_HAVE_FORTRAN_UNDERSCORE)
7: #define petscdrawzoom_ petscdrawzoom
8: #endif
10: typedef void (*FCN)(PetscDraw *, void *, PetscErrorCode *); /* force argument to next function to not be extern C*/
12: static PetscErrorCode ourdrawzoom(PetscDraw draw, void *ctx)
13: {
14: PetscErrorCode ierr = PETSC_SUCCESS;
16: (*(void (*)(PetscDraw *, void *, PetscErrorCode *))(((PetscObject)draw)->fortran_func_pointers[0]))(&draw, ctx, &ierr);
17: return ierr;
18: }
20: PETSC_EXTERN void petscdrawzoom_(PetscDraw *draw, FCN f, void *ctx, PetscErrorCode *ierr)
21: {
22: PetscObjectAllocateFortranPointers(*draw, 1);
23: ((PetscObject)*draw)->fortran_func_pointers[0] = (PetscVoidFn *)f;
25: *ierr = PetscDrawZoom(*draw, ourdrawzoom, ctx);
26: }