Actual source code: petscf90.h

  1: /* $Id: petscf90.h,v 1.3 2000/09/22 18:54:06 balay Exp $ */


 6:  #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 int F90Array1dCreate(void*,PetscDataType,int,int,F90Array1d*);
 16: EXTERN int F90Array1dAccess(F90Array1d*,void**);
 17: EXTERN int F90Array1dDestroy(F90Array1d*);
 18: EXTERN int F90Array1dGetNextRecord(F90Array1d*,void**);

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

 25: /* 
 26: EXTERN int F90Array1dGetInfo(F90Array1d*,PetscDataType*,int*,int*);
 27: EXTERN int F90Array2dGetInfo(F90Array2d*,PetscDataType*,int*,int*,int*,int*);
 28: */
 29: #endif
 30: #endif


 33: /*
 34:   F90Array1dCreate - Given a C pointer to a one dimensional
 35:   array and its length; this fills in the appropriate Fortran 90
 36:   pointer data structure.

 38:   Input Parameters:
 39: +   array - regular C pointer (address)
 40: .   type  - DataType of the array
 41: .   start - starting index of the array
 42: -   len   - length of array (in items)

 44:   Output Parameters:
 45: .   ptr - Fortran 90 pointer
 46: */