Actual source code: f90_t3e.h

      2: #if !defined (__F90_T3E_H)

      5: #define F90_INT_ID     33570816
      6: #define F90_DOUBLE_ID  50348032
      7: #define F90_COMPLEX_ID 67141632
      8: #define F90_COOKIE     -1744830464

     10: #if !defined (PETSC_COMPLEX)
     11: #define F90_SCALAR_ID F90_DOUBLE_ID
     12: #else
     13: #define F90_SCALAR_ID F90_COMPLEX_ID
     14: #endif

     16: typedef struct {
     17:   long lower;   /* starting index of the fortran array */
     18:   long extent;  /* length of the array */
     19:   long mult;    /* no of datatype units */
     20: } tripple;
     21:
     22: #define f90_header() \
     23: void* addr;        /* Pointer to the data/array */  \
     24: long  sd;          /* sizeof(DataType) */          \
     25: short cookie;      /* cookie*/                     \
     26: short ndim;        /* No of dimentions */          \
     27: int   id;          /* Integer? double? */          \
     28: int   a,b;

     31: typedef struct {
     32:   f90_header()
     33:   tripple dim[1];
     34: }F90Array1d;

     36: typedef struct {
     37:   f90_header()
     38:   tripple dim[2];
     39: }F90Array2d;

     41: typedef struct {
     42:   f90_header()
     43:   tripple dim[3];
     44: }F90Array3d;

     46: typedef struct {
     47:   f90_header()
     48:   tripple dim[4];
     49: }F90Array4d;

     51: #endif