00001 00037 #ifndef _VMP_H_ 00038 #define _VMP_H_ 00039 00040 #include <maloc/maloc_base.h> 00041 00042 #include <maloc/vsys.h> 00043 #include <maloc/vmpi.h> 00044 #include <maloc/vcom.h> 00045 00046 /* 00047 * *************************************************************************** 00048 * Class Vmp: Parameters and datatypes 00049 * *************************************************************************** 00050 */ 00051 00058 struct sVmp { 00059 int mpi_rank; 00060 int mpi_size; 00061 }; 00062 00068 typedef struct sVmp Vmp; 00069 00070 /* 00071 * *************************************************************************** 00072 * Class Vmp: Inlineable methods (vmp.c) 00073 * *************************************************************************** 00074 */ 00075 00076 #if !defined(VINLINE_MALOC) 00077 #else /* if defined(VINLINE_MALOC) */ 00078 #endif /* if !defined(VINLINE_MALOC) */ 00079 00080 00090 int Vmp_init(int *argc, char ***argv); 00091 00099 int Vmp_finalize(void); 00100 00108 Vmp* Vmp_ctor(void); 00109 00118 void Vmp_dtor(Vmp **thee); 00119 00128 int Vmp_rank(Vmp *thee); 00129 00138 int Vmp_size(Vmp *thee); 00139 00148 int Vmp_barr(Vmp *thee); 00149 00161 int Vmp_send(Vmp *thee, int des, char *buf, int bufsize); 00162 00174 int Vmp_recv(Vmp *thee, int src, char *buf, int bufsize); 00175 00176 #endif /* _VMP_H_ */ 00177 00178