\hypertarget{group__Ecore__IPC__Server__Group}{\section{I\+P\+C Server Functions}
\label{group__Ecore__IPC__Server__Group}\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}}
}


Functions the deal with I\+P\+C server objects.  


\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$ \hyperlink{group__Ecore__IPC__Server__Group_gaeba705e14ef79c1f824fcc1c184ddadb}{ecore\+\_\+ipc\+\_\+server\+\_\+add} (\hyperlink{group__Ecore__IPC__Group_ga6458bde9508dc6eea168fe72b98d8e09}{Ecore\+\_\+\+Ipc\+\_\+\+Type} compl\+\_\+type, const char $\ast$name, int port, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Creates an I\+P\+C server that listens for connections. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$ \hyperlink{group__Ecore__IPC__Server__Group_gafe02c81940d4e5a464cb32e125887f7e}{ecore\+\_\+ipc\+\_\+server\+\_\+connect} (\hyperlink{group__Ecore__IPC__Group_ga6458bde9508dc6eea168fe72b98d8e09}{Ecore\+\_\+\+Ipc\+\_\+\+Type} compl\+\_\+type, char $\ast$name, int port, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Creates an I\+P\+C server object to represent the I\+P\+C server listening on the given port. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void $\ast$ \hyperlink{group__Ecore__IPC__Server__Group_ga04148eb8454432091e29b185c68a3eb2}{ecore\+\_\+ipc\+\_\+server\+\_\+del} (\hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Closes the connection and frees the given I\+P\+C server. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} void $\ast$ \hyperlink{group__Ecore__IPC__Server__Group_gac32fe6a6757a54e6714fb080472f8901}{ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get} (\hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Retrieves the data associated with the given I\+P\+C server. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool} \hyperlink{group__Ecore__IPC__Server__Group_gada787dfd83c0d9db2ee16bd2d849cd7d}{ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get} (\hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Retrieves whether the given I\+P\+C server is currently connected. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} \hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List} $\ast$ \hyperlink{group__Ecore__IPC__Server__Group_gaaca6af31372517b07f184604e3868fdc}{ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get} (\hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$svr)
\begin{DoxyCompactList}\small\item\em Retrieves the list of clients for this server. \end{DoxyCompactList}\item 
\hyperlink{group__Eina__Types__Group_ga3db3556eec8ef18cb8ddb43816974ac8}{E\+A\+P\+I} int \hyperlink{group__Ecore__IPC__Server__Group_ga1fb98acb3bcab778e52bf35f932a5afa}{ecore\+\_\+ipc\+\_\+server\+\_\+send} (\hyperlink{group__Ecore__IPC__Group_ga521ebc02e6c6c94364c64fee18c462fb}{Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$svr, int major, int minor, int ref, int ref\+\_\+to, int response, const void $\ast$data, int size)
\begin{DoxyCompactList}\small\item\em Sends a message to the given I\+P\+C server. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}
Functions the deal with I\+P\+C server objects. 



\subsection{Function Documentation}
\hypertarget{group__Ecore__IPC__Server__Group_gaeba705e14ef79c1f824fcc1c184ddadb}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+add@{ecore\+\_\+ipc\+\_\+server\+\_\+add}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+add@{ecore\+\_\+ipc\+\_\+server\+\_\+add}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+add}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Ecore\+\_\+\+Ipc\+\_\+\+Server}$\ast$ ecore\+\_\+ipc\+\_\+server\+\_\+add (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Type}}]{compl\+\_\+type, }
\item[{const char $\ast$}]{name, }
\item[{int}]{port, }
\item[{const void $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_gaeba705e14ef79c1f824fcc1c184ddadb}


Creates an I\+P\+C server that listens for connections. 

For more details about the {\ttfamily compl\+\_\+type}, {\ttfamily name} and {\ttfamily port} parameters, see the \hyperlink{group__Ecore__Con__Server__Group_gaf450c4039d5e61d4f7a58d7b67efc1e8}{ecore\+\_\+con\+\_\+server\+\_\+add} documentation.


\begin{DoxyParams}{Parameters}
{\em compl\+\_\+type} & The connection type. \\
\hline
{\em name} & Name to associate with the socket used for connection. \\
\hline
{\em port} & Number to identify with socket used for connection. \\
\hline
{\em data} & Data to associate with the I\+P\+C server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
New I\+P\+C server. If there is an error, {\ttfamily N\+U\+L\+L} is returned.
\end{DoxyReturn}


References E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+L\+O\+C\+A\+L\+\_\+\+S\+Y\+S\+T\+E\+M, E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+L\+O\+C\+A\+L\+\_\+\+U\+S\+E\+R, ecore\+\_\+con\+\_\+server\+\_\+add(), and eina\+\_\+list\+\_\+append().

\hypertarget{group__Ecore__IPC__Server__Group_gafe02c81940d4e5a464cb32e125887f7e}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+connect@{ecore\+\_\+ipc\+\_\+server\+\_\+connect}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+connect@{ecore\+\_\+ipc\+\_\+server\+\_\+connect}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+connect}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Ecore\+\_\+\+Ipc\+\_\+\+Server}$\ast$ ecore\+\_\+ipc\+\_\+server\+\_\+connect (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Type}}]{compl\+\_\+type, }
\item[{char $\ast$}]{name, }
\item[{int}]{port, }
\item[{const void $\ast$}]{data}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_gafe02c81940d4e5a464cb32e125887f7e}


Creates an I\+P\+C server object to represent the I\+P\+C server listening on the given port. 

For more details about the {\ttfamily compl\+\_\+type}, {\ttfamily name} and {\ttfamily port} parameters, see the \hyperlink{group__Ecore__Con__Server__Group_gae3d7391f7da5e0f748d7b6804d010b2f}{ecore\+\_\+con\+\_\+server\+\_\+connect} documentation.


\begin{DoxyParams}{Parameters}
{\em compl\+\_\+type} & The I\+P\+C connection type. \\
\hline
{\em name} & Name used to determine which socket to use for the I\+P\+C connection. \\
\hline
{\em port} & Number used to identify the socket to use for the I\+P\+C connection. \\
\hline
{\em data} & Data to associate with the server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A new I\+P\+C server. {\ttfamily N\+U\+L\+L} is returned on error.
\end{DoxyReturn}


References E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+L\+O\+C\+A\+L\+\_\+\+S\+Y\+S\+T\+E\+M, E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+L\+O\+C\+A\+L\+\_\+\+U\+S\+E\+R, E\+C\+O\+R\+E\+\_\+\+C\+O\+N\+\_\+\+N\+O\+\_\+\+P\+R\+O\+X\+Y, ecore\+\_\+con\+\_\+server\+\_\+connect(), and eina\+\_\+list\+\_\+append().

\hypertarget{group__Ecore__IPC__Server__Group_ga04148eb8454432091e29b185c68a3eb2}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+del@{ecore\+\_\+ipc\+\_\+server\+\_\+del}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+del@{ecore\+\_\+ipc\+\_\+server\+\_\+del}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+del}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void$\ast$ ecore\+\_\+ipc\+\_\+server\+\_\+del (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$}]{svr}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_ga04148eb8454432091e29b185c68a3eb2}


Closes the connection and frees the given I\+P\+C server. 


\begin{DoxyParams}{Parameters}
{\em svr} & The given I\+P\+C server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The data associated with the server when it was created. 
\end{DoxyReturn}


References ecore\+\_\+con\+\_\+server\+\_\+del(), ecore\+\_\+ipc\+\_\+client\+\_\+del(), E\+I\+N\+A\+\_\+\+L\+I\+S\+T\+\_\+\+F\+R\+E\+E, and eina\+\_\+list\+\_\+remove().



Referenced by ecore\+\_\+ipc\+\_\+shutdown().

\hypertarget{group__Ecore__IPC__Server__Group_gac32fe6a6757a54e6714fb080472f8901}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} void$\ast$ ecore\+\_\+ipc\+\_\+server\+\_\+data\+\_\+get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$}]{svr}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_gac32fe6a6757a54e6714fb080472f8901}


Retrieves the data associated with the given I\+P\+C server. 


\begin{DoxyParams}{Parameters}
{\em svr} & The given I\+P\+C server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The associated data. 
\end{DoxyReturn}
\hypertarget{group__Ecore__IPC__Server__Group_gada787dfd83c0d9db2ee16bd2d849cd7d}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+Bool} ecore\+\_\+ipc\+\_\+server\+\_\+connected\+\_\+get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$}]{svr}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_gada787dfd83c0d9db2ee16bd2d849cd7d}


Retrieves whether the given I\+P\+C server is currently connected. 


\begin{DoxyParams}{Parameters}
{\em svr} & The given I\+P\+C server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily E\+I\+N\+A\+\_\+\+T\+R\+U\+E} if the server is connected, {\ttfamily E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E} otherwise. 
\end{DoxyReturn}


References ecore\+\_\+con\+\_\+server\+\_\+connected\+\_\+get(), and E\+I\+N\+A\+\_\+\+F\+A\+L\+S\+E.

\hypertarget{group__Ecore__IPC__Server__Group_gaaca6af31372517b07f184604e3868fdc}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get@{ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} {\bf Eina\+\_\+\+List}$\ast$ ecore\+\_\+ipc\+\_\+server\+\_\+clients\+\_\+get (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$}]{svr}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_gaaca6af31372517b07f184604e3868fdc}


Retrieves the list of clients for this server. 


\begin{DoxyParams}{Parameters}
{\em svr} & The given I\+P\+C server. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
An Eina\+\_\+\+List with the clients. 
\end{DoxyReturn}
\hypertarget{group__Ecore__IPC__Server__Group_ga1fb98acb3bcab778e52bf35f932a5afa}{\index{I\+P\+C Server Functions@{I\+P\+C Server Functions}!ecore\+\_\+ipc\+\_\+server\+\_\+send@{ecore\+\_\+ipc\+\_\+server\+\_\+send}}
\index{ecore\+\_\+ipc\+\_\+server\+\_\+send@{ecore\+\_\+ipc\+\_\+server\+\_\+send}!I\+P\+C Server Functions@{I\+P\+C Server Functions}}
\subsubsection[{ecore\+\_\+ipc\+\_\+server\+\_\+send}]{\setlength{\rightskip}{0pt plus 5cm}{\bf E\+A\+P\+I} int ecore\+\_\+ipc\+\_\+server\+\_\+send (
\begin{DoxyParamCaption}
\item[{{\bf Ecore\+\_\+\+Ipc\+\_\+\+Server} $\ast$}]{svr, }
\item[{int}]{major, }
\item[{int}]{minor, }
\item[{int}]{ref, }
\item[{int}]{ref\+\_\+to, }
\item[{int}]{response, }
\item[{const void $\ast$}]{data, }
\item[{int}]{size}
\end{DoxyParamCaption}
)}}\label{group__Ecore__IPC__Server__Group_ga1fb98acb3bcab778e52bf35f932a5afa}


Sends a message to the given I\+P\+C server. 

The content of the parameters, excluding the {\ttfamily svr} paramter, is up to the client.


\begin{DoxyParams}{Parameters}
{\em svr} & The given I\+P\+C server. \\
\hline
{\em major} & Major opcode of the message. \\
\hline
{\em minor} & Minor opcode of the message. \\
\hline
{\em ref} & Message reference number. \\
\hline
{\em ref\+\_\+to} & Reference number of the message this message refers to. \\
\hline
{\em response} & Requires response. \\
\hline
{\em data} & The data to send as part of the message. \\
\hline
{\em size} & Length of the data, in bytes, to send. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Number of bytes sent. {\ttfamily 0} is returned if there is an error.
\end{DoxyReturn}


References ecore\+\_\+con\+\_\+server\+\_\+send().

