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


The \hyperlink{structProcess}{Process} Lifecycle Management (P\+L\+M) subsystem serves as the central switchyard for all process management activities, including resource allocation, process mapping, process launch, and process monitoring.  


{\ttfamily \#include \char`\"{}orte\+\_\+config.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/mca/mca.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/dss/dss\+\_\+types.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/class/opal\+\_\+pointer\+\_\+array.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}orte/runtime/orte\+\_\+globals.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}plm\+\_\+types.\+h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structorte__plm__base__module__1__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em plm module version 1.\+0.\+0 \end{DoxyCompactList}\item 
struct \hyperlink{structorte__plm__base__component__2__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em plm component \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{plm_8h_a2825fb42b0e37ecad75e1e4a339b50b4}{O\+R\+T\+E\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}
\begin{DoxyCompactList}\small\item\em Macro for use in modules that are of type plm. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{plm_8h_a35ca34b88b0b2314395aacc93abf7ef0}{typedef int($\ast$ {\bfseries orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+spawn\+\_\+fn\+\_\+t} )(\hyperlink{structorte__job__t}{orte\+\_\+job\+\_\+t} $\ast$jdata)}\label{plm_8h_a35ca34b88b0b2314395aacc93abf7ef0}

\item 
\hypertarget{plm_8h_aa85751dd8525b0979158aabed7342113}{typedef int($\ast$ {\bfseries orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+remote\+\_\+spawn\+\_\+fn\+\_\+t} )(\hyperlink{structopal__buffer__t}{opal\+\_\+buffer\+\_\+t} $\ast$launch)}\label{plm_8h_aa85751dd8525b0979158aabed7342113}

\item 
\hypertarget{plm_8h_a01cd9923cbb9ca81a9cbc02cbd70fe3a}{typedef int($\ast$ {\bfseries orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+set\+\_\+hnp\+\_\+name\+\_\+fn\+\_\+t} )(void)}\label{plm_8h_a01cd9923cbb9ca81a9cbc02cbd70fe3a}

\item 
\hypertarget{plm_8h_aa1f47dea7d5b9e271f70203c40d30892}{typedef int($\ast$ \hyperlink{plm_8h_aa1f47dea7d5b9e271f70203c40d30892}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t} )(void)}\label{plm_8h_aa1f47dea7d5b9e271f70203c40d30892}

\begin{DoxyCompactList}\small\item\em Cleanup resources held by module. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_a35ab952de272cb8f00cdbd1dc3a4c9d3}{typedef int($\ast$ \hyperlink{plm_8h_a35ab952de272cb8f00cdbd1dc3a4c9d3}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+terminate\+\_\+job\+\_\+fn\+\_\+t} )(\hyperlink{orte_2include_2orte_2types_8h_addefe647f31eee13c7f756f0d959a99b}{orte\+\_\+jobid\+\_\+t})}\label{plm_8h_a35ab952de272cb8f00cdbd1dc3a4c9d3}

\begin{DoxyCompactList}\small\item\em Terminate any processes launched for the respective jobid by this component. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_a1d5ba80d130c569d8d714cdc34799cff}{typedef int($\ast$ \hyperlink{plm_8h_a1d5ba80d130c569d8d714cdc34799cff}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+terminate\+\_\+orteds\+\_\+fn\+\_\+t} )(void)}\label{plm_8h_a1d5ba80d130c569d8d714cdc34799cff}

\begin{DoxyCompactList}\small\item\em Terminate the daemons. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_a5dc856d7a0b84a6f642a681049214521}{typedef int($\ast$ \hyperlink{plm_8h_a5dc856d7a0b84a6f642a681049214521}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+terminate\+\_\+procs\+\_\+fn\+\_\+t} )(\hyperlink{structopal__pointer__array__t}{opal\+\_\+pointer\+\_\+array\+\_\+t} $\ast$procs)}\label{plm_8h_a5dc856d7a0b84a6f642a681049214521}

\begin{DoxyCompactList}\small\item\em Terminate an array of specific procs. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_a354261ecce7f8b131b0e37cdced16e38}{typedef int($\ast$ \hyperlink{plm_8h_a354261ecce7f8b131b0e37cdced16e38}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+signal\+\_\+job\+\_\+fn\+\_\+t} )(\hyperlink{orte_2include_2orte_2types_8h_addefe647f31eee13c7f756f0d959a99b}{orte\+\_\+jobid\+\_\+t}, int32\+\_\+t)}\label{plm_8h_a354261ecce7f8b131b0e37cdced16e38}

\begin{DoxyCompactList}\small\item\em Signal any processes launched for the respective jobid by this component. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_aee9525825fe179c7df02ece140e8572c}{typedef struct \\*
\hyperlink{structorte__plm__base__module__1__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t} \hyperlink{plm_8h_aee9525825fe179c7df02ece140e8572c}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t}}\label{plm_8h_aee9525825fe179c7df02ece140e8572c}

\begin{DoxyCompactList}\small\item\em shorten \hyperlink{structorte__plm__base__module__1__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t} declaration \end{DoxyCompactList}\item 
\hypertarget{plm_8h_ad598c6b317620c8ae5f433b64d301371}{typedef struct \\*
\hyperlink{structorte__plm__base__module__1__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t} \hyperlink{plm_8h_ad598c6b317620c8ae5f433b64d301371}{orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+t}}\label{plm_8h_ad598c6b317620c8ae5f433b64d301371}

\begin{DoxyCompactList}\small\item\em shorten orte\+\_\+plm\+\_\+base\+\_\+module\+\_\+t declaration \end{DoxyCompactList}\item 
\hypertarget{plm_8h_afaf8c2c88147b0839d236a62cf9c6735}{typedef struct \\*
\hyperlink{structorte__plm__base__component__2__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} \hyperlink{plm_8h_afaf8c2c88147b0839d236a62cf9c6735}{orte\+\_\+plm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}}\label{plm_8h_afaf8c2c88147b0839d236a62cf9c6735}

\begin{DoxyCompactList}\small\item\em Convenience typedef. \end{DoxyCompactList}\item 
\hypertarget{plm_8h_afa0cc8aeeebde1e06784524f766c9b8a}{typedef \\*
\hyperlink{structorte__plm__base__component__2__0__0__t}{orte\+\_\+plm\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} \hyperlink{plm_8h_afa0cc8aeeebde1e06784524f766c9b8a}{orte\+\_\+plm\+\_\+base\+\_\+component\+\_\+t}}\label{plm_8h_afa0cc8aeeebde1e06784524f766c9b8a}

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

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

\end{DoxyCompactItemize}


\subsection{Detailed Description}
The \hyperlink{structProcess}{Process} Lifecycle Management (P\+L\+M) subsystem serves as the central switchyard for all process management activities, including resource allocation, process mapping, process launch, and process monitoring. 



\subsection{Macro Definition Documentation}
\hypertarget{plm_8h_a2825fb42b0e37ecad75e1e4a339b50b4}{\index{plm.\+h@{plm.\+h}!O\+R\+T\+E\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0@{O\+R\+T\+E\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}}
\index{O\+R\+T\+E\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0@{O\+R\+T\+E\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}!plm.\+h@{plm.\+h}}
\subsubsection[{O\+R\+T\+E\+\_\+\+P\+L\+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\+\_\+\+P\+L\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}}\label{plm_8h_a2825fb42b0e37ecad75e1e4a339b50b4}
{\bfseries Value\+:}
\begin{DoxyCode}
MCA\_BASE\_VERSION\_2\_0\_0, \(\backslash\)
\textcolor{stringliteral}{"plm"}, 2, 0, 0
\end{DoxyCode}


Macro for use in modules that are of type plm. 

