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


Remote \hyperlink{classFile}{File} Management (File\+M) Interface.  


{\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/mca/base/base.\+h\char`\"{}}\\*
{\ttfamily \#include \char`\"{}opal/class/opal\+\_\+object.\+h\char`\"{}}\\*
\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \hyperlink{structorte__filem__base__process__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em Define a \hyperlink{structProcess}{Process} Set. \end{DoxyCompactList}\item 
struct \hyperlink{structorte__filem__base__file__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em Define a \hyperlink{classFile}{File} \hyperlink{structPair}{Pair}. \end{DoxyCompactList}\item 
struct \hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+1\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em Definition of a file movement request This will allow\+: \end{DoxyCompactList}\item 
struct \hyperlink{structorte__filem__base__component__2__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em Structure for F\+I\+L\+E\+M components. \end{DoxyCompactList}\item 
struct \hyperlink{structorte__filem__base__module__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t}
\begin{DoxyCompactList}\small\item\em Structure for F\+I\+L\+E\+M modules. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\hypertarget{filem_8h_ae98fc6113e25b1f8900e3d3985c01187}{\#define \hyperlink{filem_8h_ae98fc6113e25b1f8900e3d3985c01187}{O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+T\+Y\+P\+E\+\_\+\+F\+I\+L\+E}~0}\label{filem_8h_ae98fc6113e25b1f8900e3d3985c01187}

\begin{DoxyCompactList}\small\item\em A set of flags that determine the type of the file in question. \end{DoxyCompactList}\item 
\hypertarget{filem_8h_a7a9996ea447b188360358e226963abb6}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+T\+Y\+P\+E\+\_\+\+D\+I\+R}~1}\label{filem_8h_a7a9996ea447b188360358e226963abb6}

\item 
\hypertarget{filem_8h_ae1c46cad4d24d6baa745b634862e9d11}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+W\+N}~2}\label{filem_8h_ae1c46cad4d24d6baa745b634862e9d11}

\item 
\hypertarget{filem_8h_a114c5551df886e93e32db3ee2d5e03fd}{\#define \hyperlink{filem_8h_a114c5551df886e93e32db3ee2d5e03fd}{O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+M\+O\+V\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+P\+U\+T}~0}\label{filem_8h_a114c5551df886e93e32db3ee2d5e03fd}

\begin{DoxyCompactList}\small\item\em Type of moment. \end{DoxyCompactList}\item 
\hypertarget{filem_8h_a107ab3c08a75f60b32f020ea01cbeaa1}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+M\+O\+V\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+G\+E\+T}~1}\label{filem_8h_a107ab3c08a75f60b32f020ea01cbeaa1}

\item 
\hypertarget{filem_8h_aadddeee81fab8fbb7adea66bd5193c19}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+M\+O\+V\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+R\+M}~2}\label{filem_8h_aadddeee81fab8fbb7adea66bd5193c19}

\item 
\hypertarget{filem_8h_a1d9806ad8502c529fc07728d69251c12}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+M\+O\+V\+E\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+W\+N}~3}\label{filem_8h_a1d9806ad8502c529fc07728d69251c12}

\item 
\hypertarget{filem_8h_a3ae0b92d54384883a5705222f34d6485}{\#define \hyperlink{filem_8h_a3ae0b92d54384883a5705222f34d6485}{O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+H\+I\+N\+T\+\_\+\+N\+O\+N\+E}~0}\label{filem_8h_a3ae0b92d54384883a5705222f34d6485}

\begin{DoxyCompactList}\small\item\em Hints that describe the local or remote file target for optimization purposes. \end{DoxyCompactList}\item 
\hypertarget{filem_8h_af9fdabf5f630dbb3f265e479a61dfc8e}{\#define {\bfseries O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+H\+I\+N\+T\+\_\+\+S\+H\+A\+R\+E\+D}~1}\label{filem_8h_af9fdabf5f630dbb3f265e479a61dfc8e}

\item 
\#define \hyperlink{filem_8h_a206597f8f7cf5618bed06b2c86f3d47e}{O\+R\+T\+E\+\_\+\+F\+I\+L\+E\+M\+\_\+\+B\+A\+S\+E\+\_\+\+V\+E\+R\+S\+I\+O\+N\+\_\+2\+\_\+0\+\_\+0}
\begin{DoxyCompactList}\small\item\em Macro for use in components that are of type F\+I\+L\+E\+M. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\hypertarget{filem_8h_aaa91656227ab056d40a084c20e042e56}{typedef struct \\*
\hyperlink{structorte__filem__base__process__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t}}\label{filem_8h_aaa91656227ab056d40a084c20e042e56}

\item 
\hypertarget{filem_8h_a09ce61628093b29e3b4af040248c59c0}{typedef struct \\*
\hyperlink{structorte__filem__base__process__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+t}}\label{filem_8h_a09ce61628093b29e3b4af040248c59c0}

\item 
\hypertarget{filem_8h_a4879ff8900ccccfcefa792e4d0d8e374}{typedef struct \\*
\hyperlink{structorte__filem__base__file__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t}}\label{filem_8h_a4879ff8900ccccfcefa792e4d0d8e374}

\item 
\hypertarget{filem_8h_af7eab4ebf37acbaba22fe1360832ba5b}{typedef struct \\*
\hyperlink{structorte__filem__base__file__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+t}}\label{filem_8h_af7eab4ebf37acbaba22fe1360832ba5b}

\item 
\hypertarget{filem_8h_a385c8ffd92f99361eda4c90988ffd1ea}{typedef struct \\*
\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+1\+\_\+0\+\_\+0\+\_\+t}}\label{filem_8h_a385c8ffd92f99361eda4c90988ffd1ea}

\item 
\hypertarget{filem_8h_a2066afa119afb87b88fe26e134b54441}{typedef struct \\*
\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t}}\label{filem_8h_a2066afa119afb87b88fe26e134b54441}

\item 
typedef int($\ast$ \hyperlink{filem_8h_af6f3b0453cddd7322a292687ec055fa3}{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t} )(void)
\begin{DoxyCompactList}\small\item\em Module initialization function. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a9e4ebcbb84eabe24e1b146138840beb2}{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t} )(void)
\begin{DoxyCompactList}\small\item\em Module finalization function. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_adc4a9cdd3f573d6d9fa7dfa59b28aeb2}{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Put a file or directory on the remote machine. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a03a91aad6d9db7b75826bd8edd1aac95}{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Put a file or directory on the remote machine (Async) \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a30b17071b83d2c0efc8f7c6551550803}{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Get a file from the remote machine. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a2dc406856802f81b226e783461a915e6}{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Get a file from the remote machine (Async) \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a43f7ebc6082dee2ede735f51aea3e0d7}{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Remove a file from the remote machine. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a309d131560836c98645133911d865b74}{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Remove a file from the remote machine (Async) \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_ae201429d8f6cc4e3e6ec2cb3a72c99de}{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t} )(\hyperlink{structorte__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast$\hyperlink{structrequest}{request})
\begin{DoxyCompactList}\small\item\em Wait for a single file movement request to finish. \end{DoxyCompactList}\item 
typedef int($\ast$ \hyperlink{filem_8h_a3af5e002bc9e22e6cc59f3d4b7e12fed}{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t} )(\hyperlink{structopal__list__t}{opal\+\_\+list\+\_\+t} $\ast$request\+\_\+list)
\begin{DoxyCompactList}\small\item\em Wait for a multiple file movement requests to finish. \end{DoxyCompactList}\item 
\hypertarget{filem_8h_ae9ae3c29779d92bebd8eb55b805553f7}{typedef struct \\*
\hyperlink{structorte__filem__base__component__2__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t}}\label{filem_8h_ae9ae3c29779d92bebd8eb55b805553f7}

\item 
\hypertarget{filem_8h_a74e242efc00e66a876ec8cbb0d97e1ef}{typedef struct \\*
\hyperlink{structorte__filem__base__component__2__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+component\+\_\+2\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+component\+\_\+t}}\label{filem_8h_a74e242efc00e66a876ec8cbb0d97e1ef}

\item 
\hypertarget{filem_8h_ad11ad958f43cd74a0a465941588e02b9}{typedef struct \\*
\hyperlink{structorte__filem__base__module__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t}}\label{filem_8h_ad11ad958f43cd74a0a465941588e02b9}

\item 
\hypertarget{filem_8h_adb58f780d2a8688329ce6b9f58a45df8}{typedef struct \\*
\hyperlink{structorte__filem__base__module__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+1\+\_\+0\+\_\+0\+\_\+t} {\bfseries orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+t}}\label{filem_8h_adb58f780d2a8688329ce6b9f58a45df8}

\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{filem_8h_a9de856277ae661906b62b0078941787a}{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__filem__base__process__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+process\+\_\+set\+\_\+t})}\label{filem_8h_a9de856277ae661906b62b0078941787a}

\item 
\hypertarget{filem_8h_a54da8ef89b1195504d3da97a1d86cada}{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__filem__base__file__set__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+file\+\_\+set\+\_\+t})}\label{filem_8h_a54da8ef89b1195504d3da97a1d86cada}

\item 
\hypertarget{filem_8h_a420c202bc47e05abe1da5d24ba61d87c}{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__filem__base__request__1__0__0__t}{orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t})}\label{filem_8h_a420c202bc47e05abe1da5d24ba61d87c}

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

\end{DoxyCompactItemize}


\subsection{Detailed Description}
Remote \hyperlink{classFile}{File} Management (File\+M) Interface. 



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


Macro for use in components that are of type F\+I\+L\+E\+M. 



\subsection{Typedef Documentation}
\hypertarget{filem_8h_a30b17071b83d2c0efc8f7c6551550803}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_a30b17071b83d2c0efc8f7c6551550803}


Get a file from the remote machine. 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the files/directories to receive, the remote files/directories to use, and the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on successful file transer 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on failed file transfer 
\end{DoxyReturn}
\hypertarget{filem_8h_a2dc406856802f81b226e783461a915e6}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+get\+\_\+nb\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_a2dc406856802f81b226e783461a915e6}


Get a file from the remote machine (Async) 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the files/directories to receive, the remote files/directories to use, and the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on successful file transer 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on failed file transfer 
\end{DoxyReturn}
\hypertarget{filem_8h_a9e4ebcbb84eabe24e1b146138840beb2}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+finalize\+\_\+fn\+\_\+t)(void)}}\label{filem_8h_a9e4ebcbb84eabe24e1b146138840beb2}


Module finalization function. 

Returns O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S \hypertarget{filem_8h_af6f3b0453cddd7322a292687ec055fa3}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+module\+\_\+init\+\_\+fn\+\_\+t)(void)}}\label{filem_8h_af6f3b0453cddd7322a292687ec055fa3}


Module initialization function. 

Returns O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S \hypertarget{filem_8h_adc4a9cdd3f573d6d9fa7dfa59b28aeb2}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_adc4a9cdd3f573d6d9fa7dfa59b28aeb2}


Put a file or directory on the remote machine. 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the files/directories to send, the remote files/directories to use, and the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on successful file transer 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on failed file transfer 
\end{DoxyReturn}
\hypertarget{filem_8h_a03a91aad6d9db7b75826bd8edd1aac95}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+put\+\_\+nb\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_a03a91aad6d9db7b75826bd8edd1aac95}


Put a file or directory on the remote machine (Async) 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the files/directories to send, the remote files/directories to use, and the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on successful file transer 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on failed file transfer 
\end{DoxyReturn}
\hypertarget{filem_8h_a43f7ebc6082dee2ede735f51aea3e0d7}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_a43f7ebc6082dee2ede735f51aea3e0d7}


Remove a file from the remote machine. 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the remote files/directories to remove, the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on success 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on fail 
\end{DoxyReturn}
\hypertarget{filem_8h_a309d131560836c98645133911d865b74}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+rm\+\_\+nb\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_a309d131560836c98645133911d865b74}


Remove a file from the remote machine (Async) 

Note\+: By using a relative path for the remote file/directory, the filem component will negotiate the correct absolute path for that file/directory for the remote machine.


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the remote files/directories to remove, the processes to see the change.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on success 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on fail 
\end{DoxyReturn}
\hypertarget{filem_8h_a3af5e002bc9e22e6cc59f3d4b7e12fed}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+all\+\_\+fn\+\_\+t)({\bf opal\+\_\+list\+\_\+t} $\ast$request\+\_\+list)}}\label{filem_8h_a3af5e002bc9e22e6cc59f3d4b7e12fed}


Wait for a multiple file movement requests to finish. 


\begin{DoxyParams}{Parameters}
{\em request\+\_\+list} & \hyperlink{structopal__list__t}{opal\+\_\+list\+\_\+t} of File\+M requests describing the remote files/directories.\\
\hline
\end{DoxyParams}
The request must have been passed through one of the non-\/blocking functions before calling wait or wait\+\_\+all otherwise O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R will be returned.

\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on success 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on fail 
\end{DoxyReturn}
\hypertarget{filem_8h_ae201429d8f6cc4e3e6ec2cb3a72c99de}{\index{filem.\+h@{filem.\+h}!orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t}}
\index{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t@{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t}!filem.\+h@{filem.\+h}}
\subsubsection[{orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t}]{\setlength{\rightskip}{0pt plus 5cm}typedef int($\ast$ orte\+\_\+filem\+\_\+base\+\_\+wait\+\_\+fn\+\_\+t)({\bf orte\+\_\+filem\+\_\+base\+\_\+request\+\_\+t} $\ast${\bf request})}}\label{filem_8h_ae201429d8f6cc4e3e6ec2cb3a72c99de}


Wait for a single file movement request to finish. 


\begin{DoxyParams}{Parameters}
{\em request} & File\+M request describing the remote files/directories.\\
\hline
\end{DoxyParams}
The request must have been passed through one of the non-\/blocking functions before calling wait or wait\+\_\+all otherwise O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R will be returned.

\begin{DoxyReturn}{Returns}
O\+R\+T\+E\+\_\+\+S\+U\+C\+C\+E\+S\+S on success 

O\+R\+T\+E\+\_\+\+E\+R\+R\+O\+R on fail 
\end{DoxyReturn}
