aboutsummaryrefslogtreecommitdiff
path: root/src/pugh_Comm.h
blob: 419d39a766848d1aa0e73f0333e842b3669232bd (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
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
 /*@@
   @header    pugh_Comm.h
   @date      Thu Feb  4 11:42:50 1999
   @author    Tom Goodale
   @desc 
   
   @enddesc 
   @version $Header$
 @@*/

#ifndef _PUGH_COMM_H_
#define _PUGH_COMM_H_ 1

#ifdef __cplusplus
extern "C" 
{
#endif

  /* Overloaded functions. */
int PUGH_SyncGroup(cGH *GH, const char *group);
int PUGH_EnableGroupStorage(cGH *GH, const char *group);
int PUGH_DisableGroupStorage(cGH *GH, const char *group);

int PUGH_EnableGroupComm(cGH *GH, const char *group);
int PUGH_DisableGroupComm(cGH *GH, const char *group);

int PUGH_Barrier(cGH *GH);
int PUGH_Reduce(cGH *GH,                
                const char *operation,
                int n_infields,
                int n_outfields,
                int out_type,
                void **outarray,
                ...);

int PUGH_Interp(cGH *GH,
                const char *operation,
                int n_coords,
                int n_infields,
                int n_outfields,
                int n_points,
                int type,
                ...);

int PUGH_ParallelInit(cGH *GH);
int PUGH_Exit(cGH *GH, int retval);
int PUGH_Abort(cGH *GH, int retval);

int PUGH_MyProc(cGH *GH);
int PUGH_nProcs(cGH *GH);

const int *PUGH_ArrayGroupSize(cGH *GH, int dir, int index, const char *groupname);
int PUGH_QueryGroupStorage(cGH *GH, int group, const char *groupname);

int PUGH_GroupDynamicData(cGH *GH, int group, cGroupDynamicData *data);

#ifdef __cplusplus
}
#endif

#endif