\hypertarget{group__Eio__Monitor}{}\section{Eio file and directory monitoring A\+PI}
\label{group__Eio__Monitor}\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}


These function monitor changes in directories and files.  


\subsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eio__Monitor__Error}{\+\_\+\+Eio\+\_\+\+Monitor\+\_\+\+Error}}
\item 
struct \mbox{\hyperlink{struct__Eio__Monitor__Event}{\+\_\+\+Eio\+\_\+\+Monitor\+\_\+\+Event}}
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eio__Monitor_ga88e01b740cbbc59d3b8456fa022456c9}\label{group__Eio__Monitor_ga88e01b740cbbc59d3b8456fa022456c9}} 
typedef struct \+\_\+\+Eio\+\_\+\+Monitor {\bfseries Eio\+\_\+\+Monitor}
\item 
\mbox{\Hypertarget{group__Eio__Monitor_ga4f59b65cd8b04fae9076763648f83312}\label{group__Eio__Monitor_ga4f59b65cd8b04fae9076763648f83312}} 
typedef struct \mbox{\hyperlink{struct__Eio__Monitor__Error}{\+\_\+\+Eio\+\_\+\+Monitor\+\_\+\+Error}} {\bfseries Eio\+\_\+\+Monitor\+\_\+\+Error}
\item 
\mbox{\Hypertarget{group__Eio__Monitor_gac037bf17798ca3573a9b8287bb44f993}\label{group__Eio__Monitor_gac037bf17798ca3573a9b8287bb44f993}} 
typedef struct \mbox{\hyperlink{struct__Eio__Monitor__Event}{\+\_\+\+Eio\+\_\+\+Monitor\+\_\+\+Event}} {\bfseries Eio\+\_\+\+Monitor\+\_\+\+Event}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Eio\+\_\+\+Monitor $\ast$ \mbox{\hyperlink{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}{eio\+\_\+monitor\+\_\+add}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Adds a file/directory to monitor (inotify mechanism) \end{DoxyCompactList}\item 
Eio\+\_\+\+Monitor $\ast$ \mbox{\hyperlink{group__Eio__Monitor_ga20ca8e21e13a119e0359e227d7cb2249}{eio\+\_\+monitor\+\_\+stringshared\+\_\+add}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Adds a file/directory to monitor. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eio__Monitor_gac143993ba6cb830098550961c38dbb81}{eio\+\_\+monitor\+\_\+del}} (Eio\+\_\+\+Monitor $\ast$monitor)
\begin{DoxyCompactList}\small\item\em Deletes a path from the “watched” list. \end{DoxyCompactList}\item 
const char $\ast$ \mbox{\hyperlink{group__Eio__Monitor_ga4d986a80e062e82c685f3b4eac8abb0f}{eio\+\_\+monitor\+\_\+path\+\_\+get}} (Eio\+\_\+\+Monitor $\ast$monitor)
\begin{DoxyCompactList}\small\item\em returns the path being watched by the given Eio\+\_\+\+Monitor. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Variables}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eio__Monitor_ga93ca339388870305d6a1e35aa35f0fc5}\label{group__Eio__Monitor_ga93ca339388870305d6a1e35aa35f0fc5}} 
int \mbox{\hyperlink{group__Eio__Monitor_ga93ca339388870305d6a1e35aa35f0fc5}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+R\+E\+A\+T\+ED}}
\begin{DoxyCompactList}\small\item\em A new file was created in a watched directory. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eio__Monitor_gac41279fb25e0995a99327a2eaac9e672}\label{group__Eio__Monitor_gac41279fb25e0995a99327a2eaac9e672}} 
int \mbox{\hyperlink{group__Eio__Monitor_gac41279fb25e0995a99327a2eaac9e672}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+D\+E\+L\+E\+T\+ED}}
\begin{DoxyCompactList}\small\item\em A watched file was deleted, or a file in a watched directory was deleted. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eio__Monitor_gafdc00b88fb71d255c1244643bf238f78}\label{group__Eio__Monitor_gafdc00b88fb71d255c1244643bf238f78}} 
int \mbox{\hyperlink{group__Eio__Monitor_gafdc00b88fb71d255c1244643bf238f78}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+M\+O\+D\+I\+F\+I\+ED}}
\begin{DoxyCompactList}\small\item\em A file was modified in a watched directory. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eio__Monitor_ga6883e9d26906ab7f8dd7af582c93100d}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED}}
\begin{DoxyCompactList}\small\item\em A file was closed in a watched directory. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eio__Monitor_gab0bec26c342c93f009e66430601cebfa}\label{group__Eio__Monitor_gab0bec26c342c93f009e66430601cebfa}} 
int \mbox{\hyperlink{group__Eio__Monitor_gab0bec26c342c93f009e66430601cebfa}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+R\+E\+A\+T\+ED}}
\begin{DoxyCompactList}\small\item\em A new directory was created in a watched directory. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eio__Monitor_gab63fc52bd5e7c638dd45340cb1f87f27}\label{group__Eio__Monitor_gab63fc52bd5e7c638dd45340cb1f87f27}} 
int \mbox{\hyperlink{group__Eio__Monitor_gab63fc52bd5e7c638dd45340cb1f87f27}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+D\+E\+L\+E\+T\+ED}}
\begin{DoxyCompactList}\small\item\em A directory has been deleted\+: this can be either a watched directory or one of its subdirectories. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eio__Monitor_ga26ed0b188e69ffd38ff00b2c696ffa75}\label{group__Eio__Monitor_ga26ed0b188e69ffd38ff00b2c696ffa75}} 
int \mbox{\hyperlink{group__Eio__Monitor_ga26ed0b188e69ffd38ff00b2c696ffa75}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+M\+O\+D\+I\+F\+I\+ED}}
\begin{DoxyCompactList}\small\item\em A directory has been modified in a watched directory. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eio__Monitor_ga61ffeb02418656b5888563425881c9c3}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED}}
\begin{DoxyCompactList}\small\item\em A directory has been closed in a watched directory. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eio__Monitor_gacfec4e7ed521e04030e198667a1d3d92}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME}}
\begin{DoxyCompactList}\small\item\em The monitored path has been renamed, an error could happen just after if the renamed path doesn\textquotesingle{}t exist. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eio__Monitor_ga2b6c952c0fbd601a59caf7bff350c992}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED}}
\begin{DoxyCompactList}\small\item\em The monitored path has been removed. \end{DoxyCompactList}\item 
int \mbox{\hyperlink{group__Eio__Monitor_gab1fcb7bd226b288352b2482d4e0c655c}{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR}}
\begin{DoxyCompactList}\small\item\em During operation the monitor failed and will no longer work. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
These function monitor changes in directories and files. 

These functions use the best available method to monitor changes on a specified directory or file. They send ecore events when changes occur, and they maintain internal refcounts to reduce resource consumption on duplicate monitor targets. 

\subsection{Function Documentation}
\mbox{\Hypertarget{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}\label{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!eio\+\_\+monitor\+\_\+add@{eio\+\_\+monitor\+\_\+add}}
\index{eio\+\_\+monitor\+\_\+add@{eio\+\_\+monitor\+\_\+add}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{eio\+\_\+monitor\+\_\+add()}{eio\_monitor\_add()}}
{\footnotesize\ttfamily Eio\+\_\+\+Monitor$\ast$ eio\+\_\+monitor\+\_\+add (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path }\end{DoxyParamCaption})}



Adds a file/directory to monitor (inotify mechanism) 


\begin{DoxyParams}{Parameters}
{\em path} & file/directory to monitor \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
N\+U\+LL in case of a failure or a pointer to the monitor in case of success.
\end{DoxyReturn}
This function will add the given path to its internal list of files to monitor. It utilizes the inotify mechanism introduced in kernel 2.\+6.\+13 for passive monitoring. \mbox{\Hypertarget{group__Eio__Monitor_ga20ca8e21e13a119e0359e227d7cb2249}\label{group__Eio__Monitor_ga20ca8e21e13a119e0359e227d7cb2249}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!eio\+\_\+monitor\+\_\+stringshared\+\_\+add@{eio\+\_\+monitor\+\_\+stringshared\+\_\+add}}
\index{eio\+\_\+monitor\+\_\+stringshared\+\_\+add@{eio\+\_\+monitor\+\_\+stringshared\+\_\+add}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{eio\+\_\+monitor\+\_\+stringshared\+\_\+add()}{eio\_monitor\_stringshared\_add()}}
{\footnotesize\ttfamily Eio\+\_\+\+Monitor$\ast$ eio\+\_\+monitor\+\_\+stringshared\+\_\+add (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path }\end{DoxyParamCaption})}



Adds a file/directory to monitor. 


\begin{DoxyParams}{Parameters}
{\em path} & file/directory to monitor \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
N\+U\+LL in case of a failure or a pointer to the monitor in case of success. 
\end{DoxyReturn}
\begin{DoxyWarning}{Warning}
Do N\+OT pass non-\/stringshared strings to this function! If you don\textquotesingle{}t know what this means, use \mbox{\hyperlink{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}{eio\+\_\+monitor\+\_\+add()}}.
\end{DoxyWarning}
This fuction is just like \mbox{\hyperlink{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}{eio\+\_\+monitor\+\_\+add()}}, however the string passed by argument must be created using \mbox{\hyperlink{group__Eina__Stringshare__Group_ga5293082680141132ffcacc28866ef0ef}{eina\+\_\+stringshare\+\_\+add()}}. \mbox{\Hypertarget{group__Eio__Monitor_gac143993ba6cb830098550961c38dbb81}\label{group__Eio__Monitor_gac143993ba6cb830098550961c38dbb81}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!eio\+\_\+monitor\+\_\+del@{eio\+\_\+monitor\+\_\+del}}
\index{eio\+\_\+monitor\+\_\+del@{eio\+\_\+monitor\+\_\+del}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{eio\+\_\+monitor\+\_\+del()}{eio\_monitor\_del()}}
{\footnotesize\ttfamily void eio\+\_\+monitor\+\_\+del (\begin{DoxyParamCaption}\item[{Eio\+\_\+\+Monitor $\ast$}]{monitor }\end{DoxyParamCaption})}



Deletes a path from the “watched” list. 


\begin{DoxyParams}{Parameters}
{\em monitor} & The Eio\+\_\+\+Monitor you want to stop watching. It can only be an Eio\+\_\+\+Monitor returned to you from calling \mbox{\hyperlink{group__Eio__Monitor_ga3acbc014c793f051c39a2216a0481757}{eio\+\_\+monitor\+\_\+add()}} or \mbox{\hyperlink{group__Eio__Monitor_ga20ca8e21e13a119e0359e227d7cb2249}{eio\+\_\+monitor\+\_\+stringshared\+\_\+add()}} \\
\hline
\end{DoxyParams}


References E\+I\+N\+A\+\_\+\+R\+E\+F\+C\+O\+U\+N\+T\+\_\+\+U\+N\+R\+EF.

\mbox{\Hypertarget{group__Eio__Monitor_ga4d986a80e062e82c685f3b4eac8abb0f}\label{group__Eio__Monitor_ga4d986a80e062e82c685f3b4eac8abb0f}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!eio\+\_\+monitor\+\_\+path\+\_\+get@{eio\+\_\+monitor\+\_\+path\+\_\+get}}
\index{eio\+\_\+monitor\+\_\+path\+\_\+get@{eio\+\_\+monitor\+\_\+path\+\_\+get}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{eio\+\_\+monitor\+\_\+path\+\_\+get()}{eio\_monitor\_path\_get()}}
{\footnotesize\ttfamily const char$\ast$ eio\+\_\+monitor\+\_\+path\+\_\+get (\begin{DoxyParamCaption}\item[{Eio\+\_\+\+Monitor $\ast$}]{monitor }\end{DoxyParamCaption})}



returns the path being watched by the given Eio\+\_\+\+Monitor. 


\begin{DoxyParams}{Parameters}
{\em monitor} & Eio\+\_\+\+Monitor to return the path of \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The stringshared path belonging to {\ttfamily monitor} 
\end{DoxyReturn}


\subsection{Variable Documentation}
\mbox{\Hypertarget{group__Eio__Monitor_ga6883e9d26906ab7f8dd7af582c93100d}\label{group__Eio__Monitor_ga6883e9d26906ab7f8dd7af582c93100d}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED}}
\index{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED}{EIO\_MONITOR\_FILE\_CLOSED}}
{\footnotesize\ttfamily int E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+F\+I\+L\+E\+\_\+\+C\+L\+O\+S\+ED}



A file was closed in a watched directory. 

This event is never sent on Windows and O\+SX \mbox{\Hypertarget{group__Eio__Monitor_ga61ffeb02418656b5888563425881c9c3}\label{group__Eio__Monitor_ga61ffeb02418656b5888563425881c9c3}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED}}
\index{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED}{EIO\_MONITOR\_DIRECTORY\_CLOSED}}
{\footnotesize\ttfamily int E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+D\+I\+R\+E\+C\+T\+O\+R\+Y\+\_\+\+C\+L\+O\+S\+ED}



A directory has been closed in a watched directory. 

This event is never sent on Windows and O\+SX \mbox{\Hypertarget{group__Eio__Monitor_gacfec4e7ed521e04030e198667a1d3d92}\label{group__Eio__Monitor_gacfec4e7ed521e04030e198667a1d3d92}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME}}
\index{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME}{EIO\_MONITOR\_SELF\_RENAME}}
{\footnotesize\ttfamily int E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+R\+E\+N\+A\+ME}



The monitored path has been renamed, an error could happen just after if the renamed path doesn\textquotesingle{}t exist. 

This event is never sent on O\+SX \mbox{\Hypertarget{group__Eio__Monitor_ga2b6c952c0fbd601a59caf7bff350c992}\label{group__Eio__Monitor_ga2b6c952c0fbd601a59caf7bff350c992}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED}}
\index{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED}{EIO\_MONITOR\_SELF\_DELETED}}
{\footnotesize\ttfamily int E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+S\+E\+L\+F\+\_\+\+D\+E\+L\+E\+T\+ED}



The monitored path has been removed. 

This event is never sent on O\+SX \mbox{\Hypertarget{group__Eio__Monitor_gab1fcb7bd226b288352b2482d4e0c655c}\label{group__Eio__Monitor_gab1fcb7bd226b288352b2482d4e0c655c}} 
\index{Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}!E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR}}
\index{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR@{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR}!Eio file and directory monitoring A\+PI@{Eio file and directory monitoring A\+PI}}
\subsubsection{\texorpdfstring{E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR}{EIO\_MONITOR\_ERROR}}
{\footnotesize\ttfamily int E\+I\+O\+\_\+\+M\+O\+N\+I\+T\+O\+R\+\_\+\+E\+R\+R\+OR}



During operation the monitor failed and will no longer work. 

eio\+\_\+monitor\+\_\+del must be called on it. 