\hypertarget{orte_2mca_2grpcomm_2base_2base_8h}{\section{orte/mca/grpcomm/base/base.h File Reference}
\label{orte_2mca_2grpcomm_2base_2base_8h}\index{orte/mca/grpcomm/base/base.\+h@{orte/mca/grpcomm/base/base.\+h}}
}
{\ttfamily \#include \char`\"{}orte\+\_\+config.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/class/opal\+\_\+list.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/mca.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/threads/mutex.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/threads/condition.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/hwloc/hwloc.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/odls/odls\+\_\+types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/grpcomm/grpcomm.\+h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structorte__grpcomm__base__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+t}
\item 
struct \hyperlink{structorte__grpcomm__collective__t}{orte\+\_\+grpcomm\+\_\+collective\+\_\+t}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a78a3601df2d30bff82a6cd646bc7285b}{typedef void($\ast$ {\bfseries orte\+\_\+grpcomm\+\_\+daemon\+\_\+collective\+\_\+fn\+\_\+t} )(\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$sender, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$data)}\label{orte_2mca_2grpcomm_2base_2base_8h_a78a3601df2d30bff82a6cd646bc7285b}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a775d0eefd4d5b6a5bad7cc2e550d80c1}{B\+E\+G\+I\+N\+\_\+\+C\+\_\+\+D\+E\+C\+L\+S O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int \hyperlink{orte_2mca_2grpcomm_2base_2base_8h_a775d0eefd4d5b6a5bad7cc2e550d80c1}{orte\+\_\+grpcomm\+\_\+base\+\_\+open} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_a775d0eefd4d5b6a5bad7cc2e550d80c1}

\begin{DoxyCompactList}\small\item\em \hyperlink{structFunction}{Function} for finding and opening either all M\+C\+A components, or the one that was specifically requested via a M\+C\+A parameter. \end{DoxyCompactList}\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a6431c1469af3dfc66fccd21ab6958442}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int \hyperlink{orte_2mca_2grpcomm_2base_2base_8h_a6431c1469af3dfc66fccd21ab6958442}{orte\+\_\+grpcomm\+\_\+base\+\_\+select} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_a6431c1469af3dfc66fccd21ab6958442}

\begin{DoxyCompactList}\small\item\em \hyperlink{structFunction}{Function} for selecting one component from all those that are available. \end{DoxyCompactList}\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a7e49f71d31317b66a7b60c41a22ba9fb}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+close} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_a7e49f71d31317b66a7b60c41a22ba9fb}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a274f20258bc8d86e2fe31cadb95b6898}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C {\bfseries O\+B\+J\+\_\+\+C\+L\+A\+S\+S\+\_\+\+D\+E\+C\+L\+A\+R\+A\+T\+I\+O\+N} (\hyperlink{structorte__grpcomm__collective__t}{orte\+\_\+grpcomm\+\_\+collective\+\_\+t})}\label{orte_2mca_2grpcomm_2base_2base_8h_a274f20258bc8d86e2fe31cadb95b6898}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a55f807f88e63589ca57319e30fc594da}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+allgather\+\_\+list} (\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{orte_2mca_2grpcomm_2base_2base_8h_a55f807f88e63589ca57319e30fc594da}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a794b281b839fbe6617a4b45cd8686143}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+set\+\_\+proc\+\_\+attr} (const char $\ast$attr\+\_\+name, const void $\ast$data, size\+\_\+t size)}\label{orte_2mca_2grpcomm_2base_2base_8h_a794b281b839fbe6617a4b45cd8686143}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a54e655c27daad1b9e34c0f55c7187a0d}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+get\+\_\+proc\+\_\+attr} (const \hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} proc, const char $\ast$attribute\+\_\+name, void $\ast$$\ast$val, size\+\_\+t $\ast$size)}\label{orte_2mca_2grpcomm_2base_2base_8h_a54e655c27daad1b9e34c0f55c7187a0d}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a373ce408a9b95c093c4b3f6d5cd94dfa}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+modex\+\_\+unpack} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$rbuf)}\label{orte_2mca_2grpcomm_2base_2base_8h_a373ce408a9b95c093c4b3f6d5cd94dfa}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_aa852542d31e3766c2db275fbe421b2b2}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+full\+\_\+modex} (\hyperlink{structopal__list__t}{opal\+\_\+list\+\_\+t} $\ast$procs)}\label{orte_2mca_2grpcomm_2base_2base_8h_aa852542d31e3766c2db275fbe421b2b2}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_afc5d88ea7447c5ae7f6dd73c05350d21}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+purge\+\_\+proc\+\_\+attrs} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_afc5d88ea7447c5ae7f6dd73c05350d21}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a7b835fd7de72872b72966783a18aef3e}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+modex\+\_\+init} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_a7b835fd7de72872b72966783a18aef3e}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a13081c5b494bb0d906e3864173266318}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C void {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+modex\+\_\+finalize} (void)}\label{orte_2mca_2grpcomm_2base_2base_8h_a13081c5b494bb0d906e3864173266318}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a41f4928c09e645ad65f9cb9a4ac31e63}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+pack\+\_\+modex\+\_\+entries} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buf)}\label{orte_2mca_2grpcomm_2base_2base_8h_a41f4928c09e645ad65f9cb9a4ac31e63}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_acad7ba4cc62efbb1521c99f4820836db}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+update\+\_\+modex\+\_\+entries} (\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$proc\+\_\+name, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$rbuf)}\label{orte_2mca_2grpcomm_2base_2base_8h_acad7ba4cc62efbb1521c99f4820836db}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a77073b2f3509bc8fa0aa6ca5d7225305}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+load\+\_\+modex\+\_\+data} (\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$proc, char $\ast$attribute\+\_\+name, void $\ast$data, int num\+\_\+bytes)}\label{orte_2mca_2grpcomm_2base_2base_8h_a77073b2f3509bc8fa0aa6ca5d7225305}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_aa49962b36003b0dd707c15e65297a4b4}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+app\+\_\+barrier} (\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$recipient, \hyperlink{structorte__grpcomm__collective__t}{orte\+\_\+grpcomm\+\_\+collective\+\_\+t} $\ast$coll)}\label{orte_2mca_2grpcomm_2base_2base_8h_aa49962b36003b0dd707c15e65297a4b4}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a83e4e5d29aaa1582ed387243c1d09ccd}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+app\+\_\+allgather} (\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$recipient, \hyperlink{structorte__grpcomm__collective__t}{orte\+\_\+grpcomm\+\_\+collective\+\_\+t} $\ast$coll, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$sbuf, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$rbuf)}\label{orte_2mca_2grpcomm_2base_2base_8h_a83e4e5d29aaa1582ed387243c1d09ccd}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a673e120534d939b8286ddcc223ca2038}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+app\+\_\+pack\+\_\+xcast} (orte\+\_\+daemon\+\_\+cmd\+\_\+flag\+\_\+t cmd, \hyperlink{orte_2include_2orte_2types_8h_addefe647f31eee13c7f756f0d959a99b}{orte\+\_\+jobid\+\_\+t} job, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$message, \hyperlink{rml__types_8h_ab0683f653b0908cf6520469d91559917}{orte\+\_\+rml\+\_\+tag\+\_\+t} tag)}\label{orte_2mca_2grpcomm_2base_2base_8h_a673e120534d939b8286ddcc223ca2038}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_ae3aeca37a6d062278e4bc27b884c35c7}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C void {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+coll\+\_\+recv} (int status, \hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$sender, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer, \hyperlink{rml__types_8h_ab0683f653b0908cf6520469d91559917}{orte\+\_\+rml\+\_\+tag\+\_\+t} tag, void $\ast$cbdata)}\label{orte_2mca_2grpcomm_2base_2base_8h_ae3aeca37a6d062278e4bc27b884c35c7}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a921b53d5f072b680e339aa7adecf7b50}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C int {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+allgather} (\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$sendbuf, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$recvbuf, int32\+\_\+t num\+\_\+entries, \hyperlink{orte_2include_2orte_2types_8h_addefe647f31eee13c7f756f0d959a99b}{orte\+\_\+jobid\+\_\+t} jobid, orte\+\_\+vpid\+\_\+t np, orte\+\_\+vpid\+\_\+t $\ast$vpids)}\label{orte_2mca_2grpcomm_2base_2base_8h_a921b53d5f072b680e339aa7adecf7b50}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_ab36201640d7b99177cfd90948e218d61}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C void {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+daemon\+\_\+coll\+\_\+recv} (int status, \hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$sender, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$buffer, \hyperlink{rml__types_8h_ab0683f653b0908cf6520469d91559917}{orte\+\_\+rml\+\_\+tag\+\_\+t} tag, void $\ast$cbdata)}\label{orte_2mca_2grpcomm_2base_2base_8h_ab36201640d7b99177cfd90948e218d61}

\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a09a7470f8860857cddb2cd468cf729b9}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C void {\bfseries orte\+\_\+grpcomm\+\_\+base\+\_\+daemon\+\_\+collective} (\hyperlink{structorte__process__name__t}{orte\+\_\+process\+\_\+name\+\_\+t} $\ast$sender, \hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$data)}\label{orte_2mca_2grpcomm_2base_2base_8h_a09a7470f8860857cddb2cd468cf729b9}

\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{orte_2mca_2grpcomm_2base_2base_8h_a0e61ad27d3f74a88e43b473b27b1ecd1}{O\+R\+T\+E\+\_\+\+D\+E\+C\+L\+S\+P\+E\+C \hyperlink{structorte__grpcomm__base__t}{orte\+\_\+grpcomm\+\_\+base\+\_\+t} {\bfseries orte\+\_\+grpcomm\+\_\+base}}\label{orte_2mca_2grpcomm_2base_2base_8h_a0e61ad27d3f74a88e43b473b27b1ecd1}

\end{DoxyCompactItemize}
