\hypertarget{group__Eldbus__Conneciton}{}\section{Connection}
\label{group__Eldbus__Conneciton}\index{Connection@{Connection}}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eldbus__Conneciton_gade3e628de8a66ad92d0791d993d9e0d3}\label{group__Eldbus__Conneciton_gade3e628de8a66ad92d0791d993d9e0d3}} 
\#define \hyperlink{group__Eldbus__Conneciton_gade3e628de8a66ad92d0791d993d9e0d3}{E\+L\+D\+B\+U\+S\+\_\+\+T\+I\+M\+E\+O\+U\+T\+\_\+\+I\+N\+F\+I\+N\+I\+TE}~((int) 0x7fffffff)
\begin{DoxyCompactList}\small\item\em Infinite timeout definition. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eldbus__Conneciton_gaf672d9f7df6047a4bd3520e6afb023d6}\label{group__Eldbus__Conneciton_gaf672d9f7df6047a4bd3520e6afb023d6}} 
typedef void($\ast$ \hyperlink{group__Eldbus__Conneciton_gaf672d9f7df6047a4bd3520e6afb023d6}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Cb}) (void $\ast$data, \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, void $\ast$event\+\_\+info)
\begin{DoxyCompactList}\small\item\em Callback called when we receive an event. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type} \{ \newline
\hyperlink{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14ba3ef6f1bb011dcce46485dcea4029871c}{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN} = 0, 
\newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+E\+S\+S\+I\+ON}, 
\newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+Y\+S\+T\+EM}, 
\newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+A\+R\+T\+ER}, 
\newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+A\+D\+D\+R\+E\+SS}, 
\newline
\hyperlink{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14baa29913f72c3c5e7b789e64cdb44c2e3f}{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST}
 \}\begin{DoxyCompactList}\small\item\em Enum of several Eldbus connection types. \end{DoxyCompactList}
\item 
enum \hyperlink{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type} \{ \newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+D\+EL}, 
\newline
{\bfseries E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+D\+I\+S\+C\+O\+N\+N\+E\+C\+T\+ED}, 
\newline
\hyperlink{group__Eldbus__Conneciton_gga30dc901a63a70ea39c293e1070b7baaea7c976018cfff8e3fe5d1366b76e4f3da}{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST}
 \}\begin{DoxyCompactList}\small\item\em Enum of several Eldbus connection events. \end{DoxyCompactList}
\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$ \hyperlink{group__Eldbus__Conneciton_ga203ec794fc0c7e1bddce4eb18b628c04}{eldbus\+\_\+connection\+\_\+get} (\hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type} type)
\begin{DoxyCompactList}\small\item\em Establish a connection to bus and integrate it with the ecore main loop. \end{DoxyCompactList}\item 
\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$ \hyperlink{group__Eldbus__Conneciton_ga182ef2e5fc99983b0122b1da0ea842b0}{eldbus\+\_\+private\+\_\+connection\+\_\+get} (\hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type} type)
\begin{DoxyCompactList}\small\item\em Always create and establish a new connection to bus and integrate it with the ecore main loop. \end{DoxyCompactList}\item 
\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$ \hyperlink{group__Eldbus__Conneciton_ga7e244d68506ffe635774e55c6d03ab69}{eldbus\+\_\+address\+\_\+connection\+\_\+get} (const char $\ast$address)
\begin{DoxyCompactList}\small\item\em Establish a connection to bus and integrate it with the ecore main loop. \end{DoxyCompactList}\item 
\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$ \hyperlink{group__Eldbus__Conneciton_gabc61af0bc3dd0964cd0ca1d9cc3d62f4}{eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get} (const char $\ast$address)
\begin{DoxyCompactList}\small\item\em Always create and establish a new connection to bus and integrate it with the ecore main loop. \end{DoxyCompactList}\item 
\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$ \hyperlink{group__Eldbus__Conneciton_gaef5a01de909c35d4ba3311ed4440c19a}{eldbus\+\_\+connection\+\_\+ref} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn)
\begin{DoxyCompactList}\small\item\em Increment connection reference count. \end{DoxyCompactList}\item 
void \hyperlink{group__Eldbus__Conneciton_ga1c035aac8b601b416bba11d0d68f80ae}{eldbus\+\_\+connection\+\_\+unref} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn)
\begin{DoxyCompactList}\small\item\em Decrement connection reference count. \end{DoxyCompactList}\item 
void \hyperlink{group__Eldbus__Conneciton_ga874b0b096f5d260ba1560120f80ee31e}{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, \hyperlink{group__Eldbus__Core_ga5877d06a497dd7ba16c343c0beff2629}{Eldbus\+\_\+\+Free\+\_\+\+Cb} cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Add a callback function to be called when connection is freed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga58345e6a16fe319d0e4c2a7dd6698c75}\label{group__Eldbus__Conneciton_ga58345e6a16fe319d0e4c2a7dd6698c75}} 
void \hyperlink{group__Eldbus__Conneciton_ga58345e6a16fe319d0e4c2a7dd6698c75}{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+del} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, \hyperlink{group__Eldbus__Core_ga5877d06a497dd7ba16c343c0beff2629}{Eldbus\+\_\+\+Free\+\_\+\+Cb} cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Remove callback registered in \hyperlink{group__Eldbus__Conneciton_ga874b0b096f5d260ba1560120f80ee31e}{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add()}. \end{DoxyCompactList}\item 
void \hyperlink{group__Eldbus__Conneciton_gab6f681544b210e5ab730968722cdd2f9}{eldbus\+\_\+connection\+\_\+data\+\_\+set} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, const char $\ast$key, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Set an attached data pointer to an object with a given string key. \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{group__Eldbus__Conneciton_gae105d74f20e5502ce7e30f0f54652ff3}{eldbus\+\_\+connection\+\_\+data\+\_\+get} (const \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, const char $\ast$key)
\begin{DoxyCompactList}\small\item\em Get data stored in connection. \end{DoxyCompactList}\item 
void $\ast$ \hyperlink{group__Eldbus__Conneciton_ga99fc191ceee65794bc63fc6cf1bb1522}{eldbus\+\_\+connection\+\_\+data\+\_\+del} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, const char $\ast$key)
\begin{DoxyCompactList}\small\item\em Del data stored in connection. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga1ddabae0241a4eb37ac6281ae831b19e}\label{group__Eldbus__Conneciton_ga1ddabae0241a4eb37ac6281ae831b19e}} 
void \hyperlink{group__Eldbus__Conneciton_ga1ddabae0241a4eb37ac6281ae831b19e}{eldbus\+\_\+connection\+\_\+event\+\_\+callback\+\_\+add} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, \hyperlink{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type} type, \hyperlink{group__Eldbus__Conneciton_gaf672d9f7df6047a4bd3520e6afb023d6}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Cb} cb, const void $\ast$cb\+\_\+data)
\begin{DoxyCompactList}\small\item\em Add a callback function to be called when an event occurs of the type passed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga118e1c20600b6bdbc9d6471a2089b267}\label{group__Eldbus__Conneciton_ga118e1c20600b6bdbc9d6471a2089b267}} 
void \hyperlink{group__Eldbus__Conneciton_ga118e1c20600b6bdbc9d6471a2089b267}{eldbus\+\_\+connection\+\_\+event\+\_\+callback\+\_\+del} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, \hyperlink{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type} type, \hyperlink{group__Eldbus__Conneciton_gaf672d9f7df6047a4bd3520e6afb023d6}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Cb} cb, const void $\ast$cb\+\_\+data)
\begin{DoxyCompactList}\small\item\em Remove callback registered in \hyperlink{group__Eldbus__Conneciton_ga1ddabae0241a4eb37ac6281ae831b19e}{eldbus\+\_\+connection\+\_\+event\+\_\+callback\+\_\+add()}. \end{DoxyCompactList}\item 
\hyperlink{group__Eldbus__Core_ga7a5d4dc070bd925034de6e52c4260be7}{Eldbus\+\_\+\+Pending} $\ast$ \hyperlink{group__Eldbus__Conneciton_ga6f68ce1504eece1d7e54fa08804d7b85}{eldbus\+\_\+connection\+\_\+send} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn, \hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message} $\ast$msg, \hyperlink{group__Eldbus__Core_gaa340fffa7a61fab2d8f2a595b464abbc}{Eldbus\+\_\+\+Message\+\_\+\+Cb} cb, const void $\ast$cb\+\_\+data, double timeout)
\begin{DoxyCompactList}\small\item\em Send a message. \end{DoxyCompactList}\item 
const char $\ast$ \hyperlink{group__Eldbus__Conneciton_ga584e6faee9938ebe494ed4f88d056b2b}{eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get} (\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$conn)
\begin{DoxyCompactList}\small\item\em Gets unique name assigned by the message bus. \end{DoxyCompactList}\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}\label{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}} 
\index{Connection@{Connection}!Eldbus\+\_\+\+Connection\+\_\+\+Type@{Eldbus\+\_\+\+Connection\+\_\+\+Type}}
\index{Eldbus\+\_\+\+Connection\+\_\+\+Type@{Eldbus\+\_\+\+Connection\+\_\+\+Type}!Connection@{Connection}}
\subsubsection{\texorpdfstring{Eldbus\+\_\+\+Connection\+\_\+\+Type}{Eldbus\_Connection\_Type}}
{\footnotesize\ttfamily enum \hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type}}



Enum of several Eldbus connection types. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN}!Connection@{Connection}}\index{Connection@{Connection}!E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN}}}\mbox{\Hypertarget{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14ba3ef6f1bb011dcce46485dcea4029871c}\label{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14ba3ef6f1bb011dcce46485dcea4029871c}} 
E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+U\+N\+K\+N\+O\+WN&sentinel, not a real type \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST}!Connection@{Connection}}\index{Connection@{Connection}!E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST}}}\mbox{\Hypertarget{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14baa29913f72c3c5e7b789e64cdb44c2e3f}\label{group__Eldbus__Conneciton_gga96d3b961928850a93a8ab18ba3b2a14baa29913f72c3c5e7b789e64cdb44c2e3f}} 
E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+L\+A\+ST&sentinel, not a real type \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}\label{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}} 
\index{Connection@{Connection}!Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type@{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type}}
\index{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type@{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type}!Connection@{Connection}}
\subsubsection{\texorpdfstring{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type}{Eldbus\_Connection\_Event\_Type}}
{\footnotesize\ttfamily enum \hyperlink{group__Eldbus__Conneciton_ga30dc901a63a70ea39c293e1070b7baae}{Eldbus\+\_\+\+Connection\+\_\+\+Event\+\_\+\+Type}}



Enum of several Eldbus connection events. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST}!Connection@{Connection}}\index{Connection@{Connection}!E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST@{E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST}}}\mbox{\Hypertarget{group__Eldbus__Conneciton_gga30dc901a63a70ea39c293e1070b7baaea7c976018cfff8e3fe5d1366b76e4f3da}\label{group__Eldbus__Conneciton_gga30dc901a63a70ea39c293e1070b7baaea7c976018cfff8e3fe5d1366b76e4f3da}} 
E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+E\+V\+E\+N\+T\+\_\+\+L\+A\+ST&sentinel, not a real event type \\
\hline

\end{DoxyEnumFields}


\subsection{Function Documentation}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga203ec794fc0c7e1bddce4eb18b628c04}\label{group__Eldbus__Conneciton_ga203ec794fc0c7e1bddce4eb18b628c04}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+get@{eldbus\+\_\+connection\+\_\+get}}
\index{eldbus\+\_\+connection\+\_\+get@{eldbus\+\_\+connection\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+get()}{eldbus\_connection\_get()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection}$\ast$ eldbus\+\_\+connection\+\_\+get (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type}}]{type }\end{DoxyParamCaption})}



Establish a connection to bus and integrate it with the ecore main loop. 

If a connection of given type was already created before, its reference counter is incremented and the connection is returned.


\begin{DoxyParams}{Parameters}
{\em type} & type of connection e.\+g E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+E\+S\+S\+I\+ON, E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+Y\+S\+T\+EM or E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+A\+R\+T\+ER\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
connection with bus 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{banshee_8c-example}{banshee.\+c}, \hyperlink{client_8c-example}{client.\+c}, \hyperlink{complex-types-client-eina-value_8c-example}{complex-\/types-\/client-\/eina-\/value.\+c}, \hyperlink{complex-types-server_8c-example}{complex-\/types-\/server.\+c}, \hyperlink{complex-types_8c-example}{complex-\/types.\+c}, \hyperlink{connman-list-services_8c-example}{connman-\/list-\/services.\+c}, \hyperlink{ofono-dial_8c-example}{ofono-\/dial.\+c}, \hyperlink{server_8c-example}{server.\+c}, and \hyperlink{simple-signal-emit_8c-example}{simple-\/signal-\/emit.\+c}.\end{Desc}


References D\+BG.



Referenced by elocation\+\_\+init().

\mbox{\Hypertarget{group__Eldbus__Conneciton_ga182ef2e5fc99983b0122b1da0ea842b0}\label{group__Eldbus__Conneciton_ga182ef2e5fc99983b0122b1da0ea842b0}} 
\index{Connection@{Connection}!eldbus\+\_\+private\+\_\+connection\+\_\+get@{eldbus\+\_\+private\+\_\+connection\+\_\+get}}
\index{eldbus\+\_\+private\+\_\+connection\+\_\+get@{eldbus\+\_\+private\+\_\+connection\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+private\+\_\+connection\+\_\+get()}{eldbus\_private\_connection\_get()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection}$\ast$ eldbus\+\_\+private\+\_\+connection\+\_\+get (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Conneciton_ga96d3b961928850a93a8ab18ba3b2a14b}{Eldbus\+\_\+\+Connection\+\_\+\+Type}}]{type }\end{DoxyParamCaption})}



Always create and establish a new connection to bus and integrate it with the ecore main loop. 

Differently from \hyperlink{group__Eldbus__Conneciton_ga203ec794fc0c7e1bddce4eb18b628c04}{eldbus\+\_\+connection\+\_\+get()}, this function guarantees to create a new connection to the D-\/\+Bus daemon and the connection is not shared by any means.


\begin{DoxyParams}{Parameters}
{\em type} & type of connection e.\+g E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+E\+S\+S\+I\+ON, E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+Y\+S\+T\+EM or E\+L\+D\+B\+U\+S\+\_\+\+C\+O\+N\+N\+E\+C\+T\+I\+O\+N\+\_\+\+T\+Y\+P\+E\+\_\+\+S\+T\+A\+R\+T\+ER\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
connection with bus 
\end{DoxyReturn}


References D\+BG, and E\+I\+N\+A\+\_\+\+F\+A\+L\+SE.

\mbox{\Hypertarget{group__Eldbus__Conneciton_ga7e244d68506ffe635774e55c6d03ab69}\label{group__Eldbus__Conneciton_ga7e244d68506ffe635774e55c6d03ab69}} 
\index{Connection@{Connection}!eldbus\+\_\+address\+\_\+connection\+\_\+get@{eldbus\+\_\+address\+\_\+connection\+\_\+get}}
\index{eldbus\+\_\+address\+\_\+connection\+\_\+get@{eldbus\+\_\+address\+\_\+connection\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+address\+\_\+connection\+\_\+get()}{eldbus\_address\_connection\_get()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection}$\ast$ eldbus\+\_\+address\+\_\+connection\+\_\+get (\begin{DoxyParamCaption}\item[{const char $\ast$}]{address }\end{DoxyParamCaption})}



Establish a connection to bus and integrate it with the ecore main loop. 

If a connection of given type was already created before, its reference counter is incremented and the connection is returned.


\begin{DoxyParams}{Parameters}
{\em address} & the address which will be passed to dbus\+\_\+connection\+\_\+open()\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
connection with bus 
\end{DoxyReturn}


References D\+BG, and eina\+\_\+hash\+\_\+string\+\_\+small\+\_\+new().

\mbox{\Hypertarget{group__Eldbus__Conneciton_gabc61af0bc3dd0964cd0ca1d9cc3d62f4}\label{group__Eldbus__Conneciton_gabc61af0bc3dd0964cd0ca1d9cc3d62f4}} 
\index{Connection@{Connection}!eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get@{eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get}}
\index{eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get@{eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get()}{eldbus\_private\_address\_connection\_get()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection}$\ast$ eldbus\+\_\+private\+\_\+address\+\_\+connection\+\_\+get (\begin{DoxyParamCaption}\item[{const char $\ast$}]{address }\end{DoxyParamCaption})}



Always create and establish a new connection to bus and integrate it with the ecore main loop. 

Differently from \hyperlink{group__Eldbus__Conneciton_ga203ec794fc0c7e1bddce4eb18b628c04}{eldbus\+\_\+connection\+\_\+get()}, this function guarantees to create a new connection to the D-\/\+Bus daemon and the connection is not shared by any means.


\begin{DoxyParams}{Parameters}
{\em address} & the address which will be passed to dbus\+\_\+connection\+\_\+open\+\_\+private()\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
connection with bus 
\end{DoxyReturn}


References D\+BG.

\mbox{\Hypertarget{group__Eldbus__Conneciton_gaef5a01de909c35d4ba3311ed4440c19a}\label{group__Eldbus__Conneciton_gaef5a01de909c35d4ba3311ed4440c19a}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+ref@{eldbus\+\_\+connection\+\_\+ref}}
\index{eldbus\+\_\+connection\+\_\+ref@{eldbus\+\_\+connection\+\_\+ref}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+ref()}{eldbus\_connection\_ref()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection}$\ast$ eldbus\+\_\+connection\+\_\+ref (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn }\end{DoxyParamCaption})}



Increment connection reference count. 


\begin{DoxyParams}{Parameters}
{\em conn} & The given Eldbus\+\_\+\+Connection object to reference. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The Eldbus\+\_\+\+Connection object given as parameter. 
\end{DoxyReturn}


References D\+BG.

\mbox{\Hypertarget{group__Eldbus__Conneciton_ga1c035aac8b601b416bba11d0d68f80ae}\label{group__Eldbus__Conneciton_ga1c035aac8b601b416bba11d0d68f80ae}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+unref@{eldbus\+\_\+connection\+\_\+unref}}
\index{eldbus\+\_\+connection\+\_\+unref@{eldbus\+\_\+connection\+\_\+unref}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+unref()}{eldbus\_connection\_unref()}}
{\footnotesize\ttfamily void eldbus\+\_\+connection\+\_\+unref (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn }\end{DoxyParamCaption})}



Decrement connection reference count. 

If reference count reaches 0, the connection to bus will be dropped and all its children will be invalidated.


\begin{DoxyParams}{Parameters}
{\em conn} & The given Eldbus\+\_\+\+Connection object to unreference. \\
\hline
\end{DoxyParams}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{banshee_8c-example}{banshee.\+c}, \hyperlink{client_8c-example}{client.\+c}, \hyperlink{complex-types-client-eina-value_8c-example}{complex-\/types-\/client-\/eina-\/value.\+c}, \hyperlink{complex-types-server_8c-example}{complex-\/types-\/server.\+c}, \hyperlink{complex-types_8c-example}{complex-\/types.\+c}, \hyperlink{connman-list-services_8c-example}{connman-\/list-\/services.\+c}, \hyperlink{ofono-dial_8c-example}{ofono-\/dial.\+c}, \hyperlink{server_8c-example}{server.\+c}, and \hyperlink{simple-signal-emit_8c-example}{simple-\/signal-\/emit.\+c}.\end{Desc}


References D\+BG.



Referenced by elocation\+\_\+shutdown().

\mbox{\Hypertarget{group__Eldbus__Conneciton_ga874b0b096f5d260ba1560120f80ee31e}\label{group__Eldbus__Conneciton_ga874b0b096f5d260ba1560120f80ee31e}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add@{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add}}
\index{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add@{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add()}{eldbus\_connection\_free\_cb\_add()}}
{\footnotesize\ttfamily void eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+add (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn,  }\item[{\hyperlink{group__Eldbus__Core_ga5877d06a497dd7ba16c343c0beff2629}{Eldbus\+\_\+\+Free\+\_\+\+Cb}}]{cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Add a callback function to be called when connection is freed. 


\begin{DoxyParams}{Parameters}
{\em conn} & The connection object to add the callback to. \\
\hline
{\em cb} & callback to be called \\
\hline
{\em data} & data passed to callback \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Eldbus__Conneciton_gab6f681544b210e5ab730968722cdd2f9}\label{group__Eldbus__Conneciton_gab6f681544b210e5ab730968722cdd2f9}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+data\+\_\+set@{eldbus\+\_\+connection\+\_\+data\+\_\+set}}
\index{eldbus\+\_\+connection\+\_\+data\+\_\+set@{eldbus\+\_\+connection\+\_\+data\+\_\+set}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+data\+\_\+set()}{eldbus\_connection\_data\_set()}}
{\footnotesize\ttfamily void eldbus\+\_\+connection\+\_\+data\+\_\+set (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn,  }\item[{const char $\ast$}]{key,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Set an attached data pointer to an object with a given string key. 


\begin{DoxyParams}{Parameters}
{\em conn} & The connection object to store data to \\
\hline
{\em key} & to identify data \\
\hline
{\em data} & data that will be stored \\
\hline
\end{DoxyParams}
\mbox{\Hypertarget{group__Eldbus__Conneciton_gae105d74f20e5502ce7e30f0f54652ff3}\label{group__Eldbus__Conneciton_gae105d74f20e5502ce7e30f0f54652ff3}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+data\+\_\+get@{eldbus\+\_\+connection\+\_\+data\+\_\+get}}
\index{eldbus\+\_\+connection\+\_\+data\+\_\+get@{eldbus\+\_\+connection\+\_\+data\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+data\+\_\+get()}{eldbus\_connection\_data\_get()}}
{\footnotesize\ttfamily void$\ast$ eldbus\+\_\+connection\+\_\+data\+\_\+get (\begin{DoxyParamCaption}\item[{const \hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn,  }\item[{const char $\ast$}]{key }\end{DoxyParamCaption})}



Get data stored in connection. 


\begin{DoxyParams}{Parameters}
{\em conn} & connection where data is stored \\
\hline
{\em key} & key that identifies data\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
pointer to data if found otherwise N\+U\+LL 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga99fc191ceee65794bc63fc6cf1bb1522}\label{group__Eldbus__Conneciton_ga99fc191ceee65794bc63fc6cf1bb1522}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+data\+\_\+del@{eldbus\+\_\+connection\+\_\+data\+\_\+del}}
\index{eldbus\+\_\+connection\+\_\+data\+\_\+del@{eldbus\+\_\+connection\+\_\+data\+\_\+del}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+data\+\_\+del()}{eldbus\_connection\_data\_del()}}
{\footnotesize\ttfamily void$\ast$ eldbus\+\_\+connection\+\_\+data\+\_\+del (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn,  }\item[{const char $\ast$}]{key }\end{DoxyParamCaption})}



Del data stored in connection. 


\begin{DoxyParams}{Parameters}
{\em conn} & connection where data is stored \\
\hline
{\em key} & that identifies data\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
pointer to data if found otherwise N\+U\+LL 
\end{DoxyReturn}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga6f68ce1504eece1d7e54fa08804d7b85}\label{group__Eldbus__Conneciton_ga6f68ce1504eece1d7e54fa08804d7b85}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+send@{eldbus\+\_\+connection\+\_\+send}}
\index{eldbus\+\_\+connection\+\_\+send@{eldbus\+\_\+connection\+\_\+send}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+send()}{eldbus\_connection\_send()}}
{\footnotesize\ttfamily \hyperlink{group__Eldbus__Core_ga7a5d4dc070bd925034de6e52c4260be7}{Eldbus\+\_\+\+Pending}$\ast$ eldbus\+\_\+connection\+\_\+send (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn,  }\item[{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message} $\ast$}]{msg,  }\item[{\hyperlink{group__Eldbus__Core_gaa340fffa7a61fab2d8f2a595b464abbc}{Eldbus\+\_\+\+Message\+\_\+\+Cb}}]{cb,  }\item[{const void $\ast$}]{cb\+\_\+data,  }\item[{double}]{timeout }\end{DoxyParamCaption})}



Send a message. 


\begin{DoxyParams}{Parameters}
{\em conn} & the connection where the message will be sent \\
\hline
{\em msg} & message that will be sent \\
\hline
{\em cb} & if msg is a method call a callback should be passed to be executed when a response arrives \\
\hline
{\em cb\+\_\+data} & data passed to callback \\
\hline
{\em timeout} & timeout in milliseconds, -\/1 to use default internal value or E\+L\+D\+B\+U\+S\+\_\+\+T\+I\+M\+E\+O\+U\+T\+\_\+\+I\+N\+F\+I\+N\+I\+TE for no timeout \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A Eldbus\+\_\+\+Pending struct. 
\end{DoxyReturn}
\begin{Desc}
\item[Examples\+: ]\par
\hyperlink{server_8c-example}{server.\+c}.\end{Desc}
\mbox{\Hypertarget{group__Eldbus__Conneciton_ga584e6faee9938ebe494ed4f88d056b2b}\label{group__Eldbus__Conneciton_ga584e6faee9938ebe494ed4f88d056b2b}} 
\index{Connection@{Connection}!eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get@{eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get}}
\index{eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get@{eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get}!Connection@{Connection}}
\subsubsection{\texorpdfstring{eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get()}{eldbus\_connection\_unique\_name\_get()}}
{\footnotesize\ttfamily const char$\ast$ eldbus\+\_\+connection\+\_\+unique\+\_\+name\+\_\+get (\begin{DoxyParamCaption}\item[{\hyperlink{group__Eldbus__Core_ga5f0557a7e65ed263fcc1678874b8f7e7}{Eldbus\+\_\+\+Connection} $\ast$}]{conn }\end{DoxyParamCaption})}



Gets unique name assigned by the message bus. 


\begin{DoxyParams}{Parameters}
{\em conn} & connection object to get unique name from.\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
pointer to unique name string or N\+U\+LL or error. Returned value remains valid until connection is free. 
\end{DoxyReturn}
