\hypertarget{grpcomm_8h}{\section{orte/mca/grpcomm/grpcomm.h File Reference}
\label{grpcomm_8h}\index{orte/mca/grpcomm/grpcomm.\+h@{orte/mca/grpcomm/grpcomm.\+h}}
}


The Open\+R\+T\+E \hyperlink{classGroup}{Group} Communications.  


{\ttfamily \#include \char`\"{}orte\+\_\+config.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/constants.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/mca.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/class/opal\+\_\+list.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/dss/dss\+\_\+types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/rml/rml\+\_\+types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/grpcomm/grpcomm\+\_\+types.\+h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structorte__grpcomm__base__module__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+2\+\_\+0\+\_\+0\+\_\+t}
\item 
struct \hyperlink{structorte__grpcomm__base__component__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define {\bfseries O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{grpcomm_8h_a15920f97d6f5090b204a629ff5197fb0}{typedef void($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t} )(void)}\label{grpcomm_8h_a15920f97d6f5090b204a629ff5197fb0}

\item 
\hypertarget{grpcomm_8h_afedce320e0cd85133352fa27d101b3eb}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+xcast\+\_\+fn\+\_\+t} )(\hyperlink{orte_2include_2orte_2types_8h_addefe647f31eee13c7f756f0d959a99b}{orte\+\_\+jobid\+\_\+t} job, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer, \hyperlink{rml__types_8h_ab0683f653b0908cf6520469d91559917}{orte\+\_\+rml\+\_\+tag\+\_\+t} tag)}\label{grpcomm_8h_afedce320e0cd85133352fa27d101b3eb}

\item 
\hypertarget{grpcomm_8h_afeb6a8f5699fe569427dd1e8d662dd65}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+allgather\+\_\+fn\+\_\+t} )(\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$sbuf, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$rbuf)}\label{grpcomm_8h_afeb6a8f5699fe569427dd1e8d662dd65}

\item 
\hypertarget{grpcomm_8h_a27f864e2b08410548e0c545d4d8cfe31}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+allgather\+\_\+list\+\_\+fn\+\_\+t} )(\hyperlink{structopal__list__t}{opal\+\_\+list\+\_\+t} $\ast$names, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$sbuf, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$rbuf)}\label{grpcomm_8h_a27f864e2b08410548e0c545d4d8cfe31}

\item 
\hypertarget{grpcomm_8h_a7ebc9270e6eaf21824ecbcd0b0f2c707}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+barrier\+\_\+fn\+\_\+t} )(void)}\label{grpcomm_8h_a7ebc9270e6eaf21824ecbcd0b0f2c707}

\item 
\hypertarget{grpcomm_8h_a5234c8c97cdbea518b88d83ee5a56092}{typedef int($\ast$ \hyperlink{grpcomm_8h_a5234c8c97cdbea518b88d83ee5a56092}{orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+modex\+\_\+set\+\_\+proc\+\_\+attr\+\_\+fn\+\_\+t} )(const char $\ast$attr\+\_\+name, const void $\ast$buffer, size\+\_\+t size)}\label{grpcomm_8h_a5234c8c97cdbea518b88d83ee5a56092}

\begin{DoxyCompactList}\small\item\em D\+A\+T\+A E\+X\+C\+H\+A\+N\+G\+E F\+U\+N\+C\+T\+I\+O\+N\+S -\/ S\+E\+E \hyperlink{ompi__module__exchange_8h}{ompi/runtime/ompi\+\_\+module\+\_\+exchange.\+h} F\+O\+R A D\+E\+S\+C\+R\+I\+P\+T\+I\+O\+N O\+F H\+O\+W T\+H\+I\+S A\+L\+L W\+O\+R\+K\+S. \end{DoxyCompactList}\item 
\hypertarget{grpcomm_8h_ae5a4c517cf99c901fce74be19dc0d4ef}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+modex\+\_\+get\+\_\+proc\+\_\+attr\+\_\+fn\+\_\+t} )(const \hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} name, const char $\ast$attr\+\_\+name, void $\ast$$\ast$buffer, size\+\_\+t $\ast$size)}\label{grpcomm_8h_ae5a4c517cf99c901fce74be19dc0d4ef}

\item 
\hypertarget{grpcomm_8h_a40d049cf7ae856d7f1a8187c8d163b52}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+modex\+\_\+fn\+\_\+t} )(\hyperlink{structopal__list__t}{opal\+\_\+list\+\_\+t} $\ast$procs)}\label{grpcomm_8h_a40d049cf7ae856d7f1a8187c8d163b52}

\item 
\hypertarget{grpcomm_8h_a5f1cd2badb735b1dba7d7828c2de32e0}{typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+purge\+\_\+proc\+\_\+attrs\+\_\+fn\+\_\+t} )(void)}\label{grpcomm_8h_a5f1cd2badb735b1dba7d7828c2de32e0}

\item 
\hypertarget{grpcomm_8h_a40d1ff1eec29870848808bf0c10e27de}{typedef struct \\*
\hyperlink{structorte__grpcomm__base__module__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+2\+\_\+0\+\_\+0\+\_\+t}}\label{grpcomm_8h_a40d1ff1eec29870848808bf0c10e27de}

\item 
\hypertarget{grpcomm_8h_a49b26802abadde5c100b5004587a8eec}{typedef \\*
\hyperlink{structorte__grpcomm__base__module__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+t}}\label{grpcomm_8h_a49b26802abadde5c100b5004587a8eec}

\item 
\hypertarget{grpcomm_8h_a16745c8055bc3e9fc6646d928199872e}{typedef struct \\*
\hyperlink{structorte__grpcomm__base__component__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}}\label{grpcomm_8h_a16745c8055bc3e9fc6646d928199872e}

\item 
\hypertarget{grpcomm_8h_ab526afa5409419aaa5e09dab81698621}{typedef \\*
\hyperlink{structorte__grpcomm__base__component__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+component\+\_\+t}}\label{grpcomm_8h_ab526afa5409419aaa5e09dab81698621}

\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{grpcomm_8h_ae8466fa2165b3b83d7086a3ee8ba571d}{B\+E\+G\+I\+N\+\_\+\+C\+\_\+\+D\+E\+C\+L\+S typedef int($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t} )(void)}\label{grpcomm_8h_ae8466fa2165b3b83d7086a3ee8ba571d}

\item 
\hypertarget{grpcomm_8h_afbaf687eabc40d4b3016f45b16e77605}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C \\*
\hyperlink{structorte__grpcomm__base__module__2__0__0__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+module\+\_\+t} {\bfseries orte\+\_\+grpcomm}}\label{grpcomm_8h_afbaf687eabc40d4b3016f45b16e77605}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
The Open\+R\+T\+E \hyperlink{classGroup}{Group} Communications. 

The Open\+R\+T\+E \hyperlink{classGroup}{Group} \hyperlink{classComm}{Comm} framework provides communication services that span entire jobs or collections of processes. It is not intended to be used for point-\/to-\/point communications (the R\+M\+L does that), nor should it be viewed as a high-\/performance communication channel for large-\/scale data transfers. 

\subsection{Macro Definition Documentation}
\hypertarget{grpcomm_8h_a312eb6cf763ed0badc9697413db7206f}{\index{grpcomm.\+h@{grpcomm.\+h}!O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0@{O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}}
\index{O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0@{O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}!grpcomm.\+h@{grpcomm.\+h}}
\subsubsection[{O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}]{\setlength{\rightskip}{0pt plus 5cm}\#define O\+R\+T\+E\+\_\+\+G\+R\+P\+C\+O\+M\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}}\label{grpcomm_8h_a312eb6cf763ed0badc9697413db7206f}
{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{comment}{/* grpcomm v2.0 is chained to MCA v2.0 */} \(\backslash\)
  MCA\_BASE\_VERSION\_2\_0\_0, \(\backslash\)
  \textcolor{comment}{/* grpcomm v2.0 */} \(\backslash\)
  \textcolor{stringliteral}{"grpcomm"}, 2, 0, 0
\end{DoxyCode}
