\hypertarget{rml__base__receive_8c}{\section{orte/mca/rml/base/rml\+\_\+base\+\_\+receive.c File Reference}
\label{rml__base__receive_8c}\index{orte/mca/rml/base/rml\+\_\+base\+\_\+receive.\+c@{orte/mca/rml/base/rml\+\_\+base\+\_\+receive.\+c}}
}
{\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/dss/dss.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/util/output.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/errmgr/errmgr.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/runtime/orte\+\_\+globals.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/runtime/orte\+\_\+wait.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/util/name\+\_\+fns.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/rml/rml.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/rml/base/base.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/mca/rml/base/rml\+\_\+contact.\+h\char`\"{}}\\*
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{rml__base__receive_8c_a1ba9f80ce792507f8984e092795b654b}{static void {\bfseries orte\+\_\+rml\+\_\+base\+\_\+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{rml__base__receive_8c_a1ba9f80ce792507f8984e092795b654b}

\item 
int \hyperlink{rml__base__receive_8c_a5481e740148aff5001350d89b0f0b522}{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start} (void)
\begin{DoxyCompactList}\small\item\em Post receive to get updates regarding contact information. \end{DoxyCompactList}\item 
int \hyperlink{rml__base__receive_8c_a62ab7d46ac35820c2600e15598ae396e}{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop} (void)
\begin{DoxyCompactList}\small\item\em Stop receiving contact information updates. \end{DoxyCompactList}\item 
\hypertarget{rml__base__receive_8c_a4af08160cf829f2ada3462fe4244c4be}{static void {\bfseries process\+\_\+message} (int fd, short \hyperlink{structevent}{event}, void $\ast$data)}\label{rml__base__receive_8c_a4af08160cf829f2ada3462fe4244c4be}

\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\hypertarget{rml__base__receive_8c_af219e9d620674d6bda1d0e0d5116a2f1}{static bool {\bfseries recv\+\_\+issued} =false}\label{rml__base__receive_8c_af219e9d620674d6bda1d0e0d5116a2f1}

\end{DoxyCompactItemize}


\subsection{Function Documentation}
\hypertarget{rml__base__receive_8c_a5481e740148aff5001350d89b0f0b522}{\index{rml\+\_\+base\+\_\+receive.\+c@{rml\+\_\+base\+\_\+receive.\+c}!orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start@{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start}}
\index{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start@{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start}!rml\+\_\+base\+\_\+receive.\+c@{rml\+\_\+base\+\_\+receive.\+c}}
\subsubsection[{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start}]{\setlength{\rightskip}{0pt plus 5cm}int orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{rml__base__receive_8c_a5481e740148aff5001350d89b0f0b522}


Post receive to get updates regarding contact information. 

Post a non-\/blocking receive (likely during \hyperlink{orte__init_8c_ad3d17e11986567be41151008db2c88e1}{orte\+\_\+init()}) to receive updated contact information from the H\+N\+P when it becomes available. This should be called in any process that needs such updates, and the receive will continue to get update callbacks until \hyperlink{orte_2mca_2rml_2base_2base_8h_ac29d24edcbbf221cd96d0d895a4fc200}{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop()} is called.


\begin{DoxyRetVals}{Return values}
{\em O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S} & Receive successfully started \\
\hline
{\em O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R} & An unknown error occurred \\
\hline
\end{DoxyRetVals}


References orte\+\_\+rml, O\+R\+T\+E\+\_\+\+R\+M\+L\+\_\+\+N\+O\+N\+\_\+\+P\+E\+R\+S\+I\+S\+T\+E\+N\+T, and orte\+\_\+rml\+\_\+module\+\_\+t\+::recv\+\_\+buffer\+\_\+nb.

\hypertarget{rml__base__receive_8c_a62ab7d46ac35820c2600e15598ae396e}{\index{rml\+\_\+base\+\_\+receive.\+c@{rml\+\_\+base\+\_\+receive.\+c}!orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop@{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop}}
\index{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop@{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop}!rml\+\_\+base\+\_\+receive.\+c@{rml\+\_\+base\+\_\+receive.\+c}}
\subsubsection[{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop}]{\setlength{\rightskip}{0pt plus 5cm}int orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+stop (
\begin{DoxyParamCaption}
\item[{void}]{}
\end{DoxyParamCaption}
)}}\label{rml__base__receive_8c_a62ab7d46ac35820c2600e15598ae396e}


Stop receiving contact information updates. 

Shut down the receive posted during \hyperlink{orte_2mca_2rml_2base_2base_8h_a53871a8267eeccb8c1f941045d939d6d}{orte\+\_\+rml\+\_\+base\+\_\+comm\+\_\+start()}, likely during \hyperlink{orte__finalize_8c_a4f2674cdd2b2ec0448333dfba50aa890}{orte\+\_\+finalize()}.


\begin{DoxyRetVals}{Return values}
{\em O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S} & Receive succesffully cancelled. \\
\hline
\end{DoxyRetVals}


References orte\+\_\+rml, and orte\+\_\+rml\+\_\+module\+\_\+t\+::recv\+\_\+cancel.

