aboutsummaryrefslogtreecommitdiff
path: root/src/Panda/c_interface.h
blob: 1b0786cafecb78f4e396bce9ccf946b250258085 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
#ifndef _included_C_Interface_h
#define _included_C_Interface_h

#include "CactusExternal/FlexIO/src/IEEEIO.h" 


typedef enum { NONE,
               BLOCK,
               GENERAL,
               CYCLIC
               } Distribution;
typedef struct ArrayInfo {
  char*		name_; 		/* array name */		
  int           rank_;          /* rank */
  int*          size_;          /* glbal size of the array */
  int           esize_;        /* size of each element */
  int           mem_rank_;      /* compute processor topology - rank */
  int*          mem_layout_;    /* compute processor topology - mesh */
  Distribution* mem_dist_;      /* compute processor topology - dist */
  int           disk_rank_;     /* io processor topology - rank */
  int*          disk_layout_;   /* io processor topology - mesh */
  Distribution* disk_dist_;     /* io processor topology - dist */
  char*         data_;          /* data pointer belonging to me */
  int           stencil_width_; /* stencil width */
  struct ArrayInfo *next_;      /* next element */
} ArrayInfo;

#endif