Actual source code: f90impl.h

  4: #include "petsc.h"

  7: #if defined PETSC_HAVE_F90_H
  8: #include PETSC_HAVE_F90_H

 10: /* Check if PETSC_HAVE_F90_C is also specified */
 11: #if !defined(PETSC_HAVE_F90_C)
 12: #error "Both PETSC_HAVE_F90_H and PETSC_HAVE_F90_C flags have to be speficied"
 13: #endif

 15: EXTERN PetscErrorCode  F90Array1dCreate(void*,PetscDataType,int,int,F90Array1d*);
 16: EXTERN PetscErrorCode  F90Array1dAccess(F90Array1d*,void**);
 17: EXTERN PetscErrorCode  F90Array1dDestroy(F90Array1d*);
 18: EXTERN PetscErrorCode  F90Array1dGetNextRecord(F90Array1d*,void**);

 20: EXTERN PetscErrorCode  F90Array2dCreate(void*,PetscDataType,int,int,int,int,F90Array2d*);
 21: EXTERN PetscErrorCode  F90Array2dAccess(F90Array2d*,void**);
 22: EXTERN PetscErrorCode  F90Array2dDestroy(F90Array2d*);
 23: EXTERN PetscErrorCode  F90Array2dGetNextRecord(F90Array2d*,void**);

 25: EXTERN PetscErrorCode  F90Array3dCreate(void*,PetscDataType,int,int,int,int,int,int,F90Array3d*);
 26: EXTERN PetscErrorCode  F90Array3dAccess(F90Array3d*,void**);
 27: EXTERN PetscErrorCode  F90Array3dDestroy(F90Array3d*);
 28: EXTERN PetscErrorCode  F90Array3dGetNextRecord(F90Array3d*,void**);

 30: EXTERN PetscErrorCode  F90Array4dCreate(void*,PetscDataType,int,int,int,int,int,int,int,int,F90Array4d*);
 31: EXTERN PetscErrorCode  F90Array4dAccess(F90Array4d*,void**);
 32: EXTERN PetscErrorCode  F90Array4dDestroy(F90Array4d*);
 33: EXTERN PetscErrorCode  F90Array4dGetNextRecord(F90Array4d*,void**);

 35: /* 
 36: EXTERN PetscErrorCode  F90Array1dGetInfo(F90Array1d*,PetscDataType*,int*,int*);
 37: EXTERN PetscErrorCode  F90Array2dGetInfo(F90Array2d*,PetscDataType*,int*,int*,int*,int*);
 38: */

 40: /*
 41:   F90Array1dCreate - Given a C pointer to a one dimensional
 42:   array and its length; this fills in the appropriate Fortran 90
 43:   pointer data structure.

 45:   Input Parameters:
 46: +   array - regular C pointer (address)
 47: .   type  - DataType of the array
 48: .   start - starting index of the array
 49: -   len   - length of array (in items)

 51:   Output Parameters:
 52: .   ptr - Fortran 90 pointer
 53: */

 55: #endif
 57: #endif