\doxysection{vmpi.\+h File Reference}
\label{a00011}\index{vmpi.h@{vmpi.h}}


Class Vmpi\+: a Virtual MPI communication layer object.  


{\ttfamily \#include $<$maloc/maloc\+\_\+base.\+h$>$}\newline
{\ttfamily \#include $<$maloc/vsys.\+h$>$}\newline
Include dependency graph for vmpi.\+h\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{a00012}
\end{center}
\end{figure}
This graph shows which files directly or indirectly include this file\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=95pt]{a00013}
\end{center}
\end{figure}
\doxysubsubsection*{Classes}
\begin{DoxyCompactItemize}
\item 
struct \textbf{ s\+Vmpi}
\begin{DoxyCompactList}\small\item\em Class Vmpi\+: Definition. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef struct \textbf{ s\+Vmpi} \textbf{ Vmpi}
\begin{DoxyCompactList}\small\item\em Declaration of the Vmpi class as the Vmpi structure. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
int \textbf{ Vmpi\+\_\+init} (int $\ast$argc, char $\ast$$\ast$$\ast$argv)
\begin{DoxyCompactList}\small\item\em The Vmp initializer. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+finalize} (void)
\begin{DoxyCompactList}\small\item\em The Vmp finalizer. \end{DoxyCompactList}\item 
\textbf{ Vmpi} $\ast$ \textbf{ Vmpi\+\_\+ctor} (void)
\begin{DoxyCompactList}\small\item\em The Vmpi constructor. \end{DoxyCompactList}\item 
void \textbf{ Vmpi\+\_\+dtor} (\textbf{ Vmpi} $\ast$$\ast$thee)
\begin{DoxyCompactList}\small\item\em The Vmpi destructor. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+rank} (\textbf{ Vmpi} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return my processor ID. ~\newline
 \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+size} (\textbf{ Vmpi} $\ast$thee)
\begin{DoxyCompactList}\small\item\em Return the number of processors involved. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+barr} (\textbf{ Vmpi} $\ast$thee)
\begin{DoxyCompactList}\small\item\em An MPI barrier. ~\newline
 \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+send} (\textbf{ Vmpi} $\ast$thee, int des, char $\ast$buf, int bufsize)
\begin{DoxyCompactList}\small\item\em An MPI blocking send. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+recv} (\textbf{ Vmpi} $\ast$thee, int src, char $\ast$buf, int bufsize)
\begin{DoxyCompactList}\small\item\em An MPI blocking receive. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+bcast} (\textbf{ Vmpi} $\ast$thee, char $\ast$buf, int bufsize)
\begin{DoxyCompactList}\small\item\em An MPI broadcast. \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+reduce} (\textbf{ Vmpi} $\ast$thee, char $\ast$sbuf, char $\ast$rbuf, int bufsize)
\begin{DoxyCompactList}\small\item\em An MPI reduce. ~\newline
 \end{DoxyCompactList}\item 
int \textbf{ Vmpi\+\_\+isend} (\textbf{ Vmpi} $\ast$thee, int des, char $\ast$buf, int bufsize)
\begin{DoxyCompactList}\small\item\em An MPI non-\/blocking send. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
Class Vmpi\+: a Virtual MPI communication layer object. 

\begin{DoxyAuthor}{Author}
Michael Holst 
\end{DoxyAuthor}
\begin{DoxyNote}{Note}
None 
\end{DoxyNote}
\begin{DoxyVersion}{Version}

\end{DoxyVersion}
\begin{DoxyParagraph}{Id}
\doxyref{vmpi.\+h}{p.}{a00011},v 1.\+29 2010/08/12 05\+:40\+:23 fetk Exp 
\end{DoxyParagraph}


\begin{DoxyAttention}{Attention}
\begin{DoxyVerb}*
* MALOC = < Minimal Abstraction Layer for Object-oriented C >
* Copyright (C) 1994-- Michael Holst
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
* 
*  \end{DoxyVerb}
 
\end{DoxyAttention}
