MALOC  0.1
vcom.h
Go to the documentation of this file.
1 
38 #ifndef _VCOM_H_
39 #define _VCOM_H_
40 
41 #include <maloc/maloc_base.h>
42 
43 #include <maloc/vsys.h>
44 
46 #define VCOM_MPI_TAG 111
47 
48 /*
49  * ***************************************************************************
50  * Class Vcom: Parameters and datatypes
51  * ***************************************************************************
52  */
53 
60 struct sVcom {
61 
63  int mpi_rank;
65  int mpi_size;
66 
71  int type;
73  int error;
75  void *core;
76 
77 };
78 
85 typedef struct sVcom Vcom;
86 
87 /*
88  * ***************************************************************************
89  * Class Vcom: Inlineable methods (vcom.c)
90  * ***************************************************************************
91  */
92 
93 #if !defined(VINLINE_MALOC)
94 #else /* if defined(VINLINE_MALOC) */
95 #endif /* if !defined(VINLINE_MALOC) */
96 
97 
107 int Vcom_init(int *argc, char ***argv);
108 
116 int Vcom_finalize(void);
117 
127 Vcom* Vcom_ctor(int commtype);
128 
140 int Vcom_ctor2(Vcom* thee, int commtype);
141 
150 void Vcom_dtor(Vcom **thee);
151 
161 void Vcom_dtor2(Vcom *thee);
162 
177 int Vcom_send(Vcom *thee, int des, void *buf, int len, int type,
178  int block);
179 
197 int Vcom_recv(Vcom *thee, int src, void *buf, int len, int type,
198  int block);
199 
214 int Vcom_getCount(Vcom *thee, int src, int *length, int type);
215 
237 int Vcom_reduce(Vcom *thee, void *sendbuf, void *recvbuf, int length,
238  int type, int op);
239 
248 int Vcom_size(Vcom *thee);
249 
261 int Vcom_resize(Vcom *thee, int newsize);
262 
271 int Vcom_rank(Vcom *thee);
272 
281 int Vcom_barr(Vcom *thee);
282 
283 #endif /* _VCOM_H_ */
284 
285