\doxysubsection{Service}
\hypertarget{group__Eldbus__Service}{}\label{group__Eldbus__Service}\index{Service@{Service}}
\doxysubsubsubsection*{Data Structures}
\begin{DoxyCompactItemize}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Arg__Info}{\+\_\+\+Eldbus\+\_\+\+Arg\+\_\+\+Info}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Method}{\+\_\+\+Eldbus\+\_\+\+Method}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Method2}{\+\_\+\+Eldbus\+\_\+\+Method2}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Signal}{\+\_\+\+Eldbus\+\_\+\+Signal}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Property}{\+\_\+\+Eldbus\+\_\+\+Property}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}}
\item 
struct \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}}
\end{DoxyCompactItemize}
\doxysubsubsubsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{group__Eldbus__Service_ga7fb31cc88516a6ef95f77ca06c151aeb}\label{group__Eldbus__Service_ga7fb31cc88516a6ef95f77ca06c151aeb} 
\#define {\bfseries ELDBUS\+\_\+\+METHOD\+\_\+\+FLAG\+\_\+\+DEPRECATED}~1
\item 
\Hypertarget{group__Eldbus__Service_gaf6e9633bddb86309737b802f06f034b3}\label{group__Eldbus__Service_gaf6e9633bddb86309737b802f06f034b3} 
\#define {\bfseries ELDBUS\+\_\+\+METHOD\+\_\+\+FLAG\+\_\+\+NOREPLY}~(1 $<$$<$ 1)
\item 
\Hypertarget{group__Eldbus__Service_ga9a379e08d273756a6e8fd630d45dda21}\label{group__Eldbus__Service_ga9a379e08d273756a6e8fd630d45dda21} 
\#define {\bfseries ELDBUS\+\_\+\+METHOD\+\_\+\+FLAG\+\_\+\+HAS\+\_\+\+DATA}~(1 $<$$<$ 2)
\item 
\Hypertarget{group__Eldbus__Service_gad3127e2f4db6df6a4b781ad084fde047}\label{group__Eldbus__Service_gad3127e2f4db6df6a4b781ad084fde047} 
\#define {\bfseries ELDBUS\+\_\+\+SIGNAL\+\_\+\+FLAG\+\_\+\+DEPRECATED}~1
\item 
\Hypertarget{group__Eldbus__Service_gaf1e3d19356960cf56dd90d62452edaad}\label{group__Eldbus__Service_gaf1e3d19356960cf56dd90d62452edaad} 
\#define {\bfseries ELDBUS\+\_\+\+PROPERTY\+\_\+\+FLAG\+\_\+\+DEPRECATED}~1
\item 
\Hypertarget{group__Eldbus__Service_ga297ae237729e1f2a48291997ca369a43}\label{group__Eldbus__Service_ga297ae237729e1f2a48291997ca369a43} 
\#define {\bfseries ELDBUS\+\_\+\+INTERFACE\+\_\+\+DESCRIPTOR\+\_\+\+VERSION}~2
\item 
\#define \mbox{\hyperlink{group__Eldbus__Service_gab77338df786b5ad2a9f86693432f23a4}{ELDBUS\+\_\+\+ARGS}}(args...)~(const \mbox{\hyperlink{struct__Eldbus__Arg__Info}{Eldbus\+\_\+\+Arg\+\_\+\+Info}}\mbox{[}$\,$\mbox{]})\{ args, \{ NULL, NULL \} \}
\begin{DoxyCompactList}\small\item\em Used to insert complete types to signature of methods or signals. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsubsubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\Hypertarget{group__Eldbus__Service_ga4fb068d89e64cae46a4d01249d59e995}\label{group__Eldbus__Service_ga4fb068d89e64cae46a4d01249d59e995} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Arg__Info}{\+\_\+\+Eldbus\+\_\+\+Arg\+\_\+\+Info}} {\bfseries Eldbus\+\_\+\+Arg\+\_\+\+Info}
\item 
\Hypertarget{group__Eldbus__Service_ga10a9decd266f3d36611ace4ed54520e2}\label{group__Eldbus__Service_ga10a9decd266f3d36611ace4ed54520e2} 
typedef struct \+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface {\bfseries Eldbus\+\_\+\+Service\+\_\+\+Interface}
\item 
\Hypertarget{group__Eldbus__Service_gae9f4984eb3c96428bd49dec69b4a14a3}\label{group__Eldbus__Service_gae9f4984eb3c96428bd49dec69b4a14a3} 
typedef \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}(\texorpdfstring{$\ast$}{*} {\bfseries Eldbus\+\_\+\+Method\+\_\+\+Cb}) (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}message)
\item 
\Hypertarget{group__Eldbus__Service_ga270cf7c800053b482b743749d4e83804}\label{group__Eldbus__Service_ga270cf7c800053b482b743749d4e83804} 
typedef \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}(\texorpdfstring{$\ast$}{*} {\bfseries Eldbus\+\_\+\+Method\+\_\+\+Data\+\_\+\+Cb}) (void \texorpdfstring{$\ast$}{*}data, const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}message)
\item 
typedef \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}(\texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_gaffcf67683ad5f22402fa4a33a2137eca}{Eldbus\+\_\+\+Property\+\_\+\+Get\+\_\+\+Cb}}) (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}propname, \mbox{\hyperlink{group__Eldbus__Core_ga08a70c6651064414e56d75fba2232925}{Eldbus\+\_\+\+Message\+\_\+\+Iter}} \texorpdfstring{$\ast$}{*}iter, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}request\+\_\+msg, \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}error)
\begin{DoxyCompactList}\small\item\em Callback function to append property value to message. \end{DoxyCompactList}\item 
typedef \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}(\texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_ga41d229c65aebeb1a50a9c9a1cabfbda8}{Eldbus\+\_\+\+Property\+\_\+\+Set\+\_\+\+Cb}}) (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}propname, \mbox{\hyperlink{group__Eldbus__Core_ga08a70c6651064414e56d75fba2232925}{Eldbus\+\_\+\+Message\+\_\+\+Iter}} \texorpdfstring{$\ast$}{*}iter, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}input\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Callback function to set property value from message. \end{DoxyCompactList}\item 
\Hypertarget{group__Eldbus__Service_gad7ff94a80df2eecd01a29d40ce0da975}\label{group__Eldbus__Service_gad7ff94a80df2eecd01a29d40ce0da975} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Method}{\+\_\+\+Eldbus\+\_\+\+Method}} {\bfseries Eldbus\+\_\+\+Method}
\item 
\Hypertarget{group__Eldbus__Service_ga5183d00b9be6ce631a82d815f435c0a2}\label{group__Eldbus__Service_ga5183d00b9be6ce631a82d815f435c0a2} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Method2}{\+\_\+\+Eldbus\+\_\+\+Method2}} {\bfseries Eldbus\+\_\+\+Method2}
\item 
\Hypertarget{group__Eldbus__Service_ga9c22e965904e10b2be44516e392440ad}\label{group__Eldbus__Service_ga9c22e965904e10b2be44516e392440ad} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Signal}{\+\_\+\+Eldbus\+\_\+\+Signal}} {\bfseries Eldbus\+\_\+\+Signal}
\item 
\Hypertarget{group__Eldbus__Service_gab2e6909c97445a6a219de5bf3e965032}\label{group__Eldbus__Service_gab2e6909c97445a6a219de5bf3e965032} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Property}{\+\_\+\+Eldbus\+\_\+\+Property}} {\bfseries Eldbus\+\_\+\+Property}
\item 
\Hypertarget{group__Eldbus__Service_gab4ab7e3ec22bdea3e5b03b9aa9c0f36c}\label{group__Eldbus__Service_gab4ab7e3ec22bdea3e5b03b9aa9c0f36c} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}} {\bfseries Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}
\item 
\Hypertarget{group__Eldbus__Service_ga5bbef95d4bdc1d5fdfaa19af9a249c93}\label{group__Eldbus__Service_ga5bbef95d4bdc1d5fdfaa19af9a249c93} 
typedef struct \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}} {\bfseries Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}
\end{DoxyCompactItemize}
\doxysubsubsubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_ga61f2b60d902185277b644d7bf8931e4d}{eldbus\+\_\+service\+\_\+interface\+\_\+register}} (\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}conn, const char \texorpdfstring{$\ast$}{*}path, const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}} \texorpdfstring{$\ast$}{*}desc)
\begin{DoxyCompactList}\small\item\em Register an interface in the given path and connection. \end{DoxyCompactList}\item 
Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_gaa75f5e8e6367e2fd2ee0a7f6d9742c87}{eldbus\+\_\+service\+\_\+interface\+\_\+fallback\+\_\+register}} (\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}conn, const char \texorpdfstring{$\ast$}{*}path, const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}} \texorpdfstring{$\ast$}{*}desc)
\begin{DoxyCompactList}\small\item\em Register a fallback interface handler for a given subsection of the object hierarchy. \end{DoxyCompactList}\item 
Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_gaaebaedb08cb4ce723a5972643e29b93b}{eldbus\+\_\+service\+\_\+interface\+\_\+register2}} (\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}conn, const char \texorpdfstring{$\ast$}{*}path, const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}} \texorpdfstring{$\ast$}{*}desc)
\begin{DoxyCompactList}\small\item\em Register an interface in the given path and connection. \end{DoxyCompactList}\item 
Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_gaf2d04d3e14aa1b1d4853e7229097a289}{eldbus\+\_\+service\+\_\+interface\+\_\+fallback\+\_\+register2}} (\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}conn, const char \texorpdfstring{$\ast$}{*}path, const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}} \texorpdfstring{$\ast$}{*}desc)
\begin{DoxyCompactList}\small\item\em Register a fallback interface handler for a given subsection of the object hierarchy. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\begin{DoxyCompactList}\small\item\em Unregister a interface. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eldbus__Service_gad93bc27e856d7747d76873edff991a3a}{eldbus\+\_\+service\+\_\+object\+\_\+unregister}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\begin{DoxyCompactList}\small\item\em Unregister all interfaces of the object path that this interface belongs and the object path. \end{DoxyCompactList}\item 
\Hypertarget{group__Eldbus__Service_gac644ce36991fafd5a9da6568b2c5de82}\label{group__Eldbus__Service_gac644ce36991fafd5a9da6568b2c5de82} 
\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*} {\bfseries eldbus\+\_\+service\+\_\+connection\+\_\+get} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\item 
\Hypertarget{group__Eldbus__Service_ga0673f75dbfbb775e37101a6e5fe7a6bb}\label{group__Eldbus__Service_ga0673f75dbfbb775e37101a6e5fe7a6bb} 
const char \texorpdfstring{$\ast$}{*} {\bfseries eldbus\+\_\+service\+\_\+object\+\_\+path\+\_\+get} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eldbus__Service_ga710a0428a3bb8d0f436a030272c9f82b}{eldbus\+\_\+service\+\_\+signal\+\_\+emit}} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, unsigned int signal\+\_\+id,...)
\begin{DoxyCompactList}\small\item\em Emit a signal handler of the interface with non-\/complex types. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_ga7b736920a3d57d8dcedb9a348b970596}{eldbus\+\_\+service\+\_\+signal\+\_\+new}} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, unsigned int signal\+\_\+id)
\begin{DoxyCompactList}\small\item\em Create signal message. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eldbus__Service_gabcd4af078093c616f025bc05a95c04a7}{eldbus\+\_\+service\+\_\+signal\+\_\+send}} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}signal\+\_\+msg)
\begin{DoxyCompactList}\small\item\em Send a signal message. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{group__Eldbus__Service_ga6f4024c9749ecba16c7f7d6c09b96b49}{eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+set}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}key, const void \texorpdfstring{$\ast$}{*}data)
\begin{DoxyCompactList}\small\item\em Store data at object path, this data can be obtained from all interfaces of the same object. \end{DoxyCompactList}\item 
void \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_gaa965e41fd84ce860ef7d01ae53cf92a2}{eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+get}} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}key)
\begin{DoxyCompactList}\small\item\em Get data stored in object path. \end{DoxyCompactList}\item 
void \texorpdfstring{$\ast$}{*} \mbox{\hyperlink{group__Eldbus__Service_ga070ffb98c4e4f0cfc1dcd177eaa5429f}{eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+del}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}key)
\begin{DoxyCompactList}\small\item\em Del data stored in object path. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eldbus__Service_ga51cfeabdb75e0f0413bb398f12769f67}{eldbus\+\_\+service\+\_\+property\+\_\+changed}} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}name)
\begin{DoxyCompactList}\small\item\em Add property to list of changed properties A DBus.\+Properties\+Changed signal will be sent in an idler with all properties that have changed. \end{DoxyCompactList}\item 
\Hypertarget{group__Eldbus__Service_ga7b22ea92cdc94d4927d2be757a3f0718}\label{group__Eldbus__Service_ga7b22ea92cdc94d4927d2be757a3f0718} 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} {\bfseries eldbus\+\_\+service\+\_\+property\+\_\+invalidate\+\_\+set} (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}name, \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} is\+\_\+invalidate)
\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eldbus__Service_ga9ebf1302c3be4a23011477b6a2f1ae65}{eldbus\+\_\+service\+\_\+object\+\_\+manager\+\_\+attach}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\begin{DoxyCompactList}\small\item\em Attach Object\+Manager interface. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Eldbus__Service_gafb7c735cafee5049992283526168a108}{eldbus\+\_\+service\+\_\+object\+\_\+manager\+\_\+detach}} (Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface)
\begin{DoxyCompactList}\small\item\em Detach Object\+Manager interface. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsubsection{Detailed Description}




\doxysubsubsection{Macro Definition Documentation}
\Hypertarget{group__Eldbus__Service_gab77338df786b5ad2a9f86693432f23a4}\label{group__Eldbus__Service_gab77338df786b5ad2a9f86693432f23a4} 
\index{Service@{Service}!ELDBUS\_ARGS@{ELDBUS\_ARGS}}
\index{ELDBUS\_ARGS@{ELDBUS\_ARGS}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{ELDBUS\_ARGS}{ELDBUS\_ARGS}}
{\footnotesize\ttfamily \#define ELDBUS\+\_\+\+ARGS(\begin{DoxyParamCaption}\item[{}]{args... }\end{DoxyParamCaption})~(const \mbox{\hyperlink{struct__Eldbus__Arg__Info}{Eldbus\+\_\+\+Arg\+\_\+\+Info}}\mbox{[}$\,$\mbox{]})\{ args, \{ NULL, NULL \} \}}



Used to insert complete types to signature of methods or signals. 

Example\+: ELDBUS\+\_\+\+ARGS(\{"{}s"{}, "{}interface"{}\}, \{"{}s"{}, "{}property"{}\}) The signature will be "{}ss"{} and each string will have a tag name on introspect XML with the respective name. \begin{Desc}
\item[Examples]\par
\mbox{\hyperlink{complex-types-server_8c-example}{complex-\/types-\/server.\+c}}, \mbox{\hyperlink{server_8c-example}{server.\+c}}, and \mbox{\hyperlink{simple-signal-emit_8c-example}{simple-\/signal-\/emit.\+c}}.\end{Desc}


\doxysubsubsection{Typedef Documentation}
\Hypertarget{group__Eldbus__Service_gaffcf67683ad5f22402fa4a33a2137eca}\label{group__Eldbus__Service_gaffcf67683ad5f22402fa4a33a2137eca} 
\index{Service@{Service}!Eldbus\_Property\_Get\_Cb@{Eldbus\_Property\_Get\_Cb}}
\index{Eldbus\_Property\_Get\_Cb@{Eldbus\_Property\_Get\_Cb}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{Eldbus\_Property\_Get\_Cb}{Eldbus\_Property\_Get\_Cb}}
{\footnotesize\ttfamily typedef \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}(\texorpdfstring{$\ast$}{*} Eldbus\+\_\+\+Property\+\_\+\+Get\+\_\+\+Cb) (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}propname, \mbox{\hyperlink{group__Eldbus__Core_ga08a70c6651064414e56d75fba2232925}{Eldbus\+\_\+\+Message\+\_\+\+Iter}} \texorpdfstring{$\ast$}{*}iter, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}request\+\_\+msg, \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}\texorpdfstring{$\ast$}{*}error)}



Callback function to append property value to message. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface of property \\
\hline
{\em propname} & name of property \\
\hline
{\em iter} & variant iterator in which value must be appended \\
\hline
{\em request\+\_\+msg} & message that request property \\
\hline
{\em error} & if a error happen you must set a message error to be send caller\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success
\end{DoxyReturn}
\begin{DoxyNote}{Note}
request\+\_\+msg and error arguments are only different from NULL when a client request a property with Properties.\+Get or Properties.\+Get\+All. Upon calls to \doxylink{group__Eldbus__Service_ga51cfeabdb75e0f0413bb398f12769f67}{eldbus\+\_\+service\+\_\+property\+\_\+changed()}, this callback will also be called. It\textquotesingle{}s a mistake to return an error in this case because if a property changed, it must have a new value set and it should be able to be read. 
\end{DoxyNote}
\Hypertarget{group__Eldbus__Service_ga41d229c65aebeb1a50a9c9a1cabfbda8}\label{group__Eldbus__Service_ga41d229c65aebeb1a50a9c9a1cabfbda8} 
\index{Service@{Service}!Eldbus\_Property\_Set\_Cb@{Eldbus\_Property\_Set\_Cb}}
\index{Eldbus\_Property\_Set\_Cb@{Eldbus\_Property\_Set\_Cb}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{Eldbus\_Property\_Set\_Cb}{Eldbus\_Property\_Set\_Cb}}
{\footnotesize\ttfamily typedef \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}(\texorpdfstring{$\ast$}{*} Eldbus\+\_\+\+Property\+\_\+\+Set\+\_\+\+Cb) (const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}iface, const char \texorpdfstring{$\ast$}{*}propname, \mbox{\hyperlink{group__Eldbus__Core_ga08a70c6651064414e56d75fba2232925}{Eldbus\+\_\+\+Message\+\_\+\+Iter}} \texorpdfstring{$\ast$}{*}iter, const \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}input\+\_\+msg)}



Callback function to set property value from message. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface of property \\
\hline
{\em propname} & name of property \\
\hline
{\em input\+\_\+msg} & message call where you have to get value\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Message of response, could be a simple method\+\_\+return, error or NULL to send response later. 
\end{DoxyReturn}


\doxysubsubsection{Function Documentation}
\Hypertarget{group__Eldbus__Service_ga61f2b60d902185277b644d7bf8931e4d}\label{group__Eldbus__Service_ga61f2b60d902185277b644d7bf8931e4d} 
\index{Service@{Service}!eldbus\_service\_interface\_register@{eldbus\_service\_interface\_register}}
\index{eldbus\_service\_interface\_register@{eldbus\_service\_interface\_register}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_interface\_register()}{eldbus\_service\_interface\_register()}}
{\footnotesize\ttfamily Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+interface\+\_\+register (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}}]{conn,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{path,  }\item[{const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}} \texorpdfstring{$\ast$}{*}}]{desc }\end{DoxyParamCaption})}



Register an interface in the given path and connection. 


\begin{DoxyParams}{Parameters}
{\em conn} & where the interface should listen \\
\hline
{\em path} & object path \\
\hline
{\em desc} & description of interface\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Interface 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}.



Referenced by \mbox{\hyperlink{group__Elm__Color__Class__Group_gaf9e0a25a2cd3e57d3ff211b62d763ba8}{elm\+\_\+color\+\_\+class\+\_\+editor\+\_\+add()}}.

\Hypertarget{group__Eldbus__Service_gaa75f5e8e6367e2fd2ee0a7f6d9742c87}\label{group__Eldbus__Service_gaa75f5e8e6367e2fd2ee0a7f6d9742c87} 
\index{Service@{Service}!eldbus\_service\_interface\_fallback\_register@{eldbus\_service\_interface\_fallback\_register}}
\index{eldbus\_service\_interface\_fallback\_register@{eldbus\_service\_interface\_fallback\_register}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_interface\_fallback\_register()}{eldbus\_service\_interface\_fallback\_register()}}
{\footnotesize\ttfamily Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+interface\+\_\+fallback\+\_\+register (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}}]{conn,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{path,  }\item[{const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc}} \texorpdfstring{$\ast$}{*}}]{desc }\end{DoxyParamCaption})}



Register a fallback interface handler for a given subsection of the object hierarchy. 

Note\+: Use \doxylink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister()} to unregister a interface. 
\begin{DoxyParams}{Parameters}
{\em conn} & where the interface should listen \\
\hline
{\em path} & a \textquotesingle{}/\textquotesingle{} delimited string of path elements \\
\hline
{\em desc} & description of interface \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+9
\end{DoxySince}
\begin{DoxyReturn}{Returns}
Interface 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\Hypertarget{group__Eldbus__Service_gaaebaedb08cb4ce723a5972643e29b93b}\label{group__Eldbus__Service_gaaebaedb08cb4ce723a5972643e29b93b} 
\index{Service@{Service}!eldbus\_service\_interface\_register2@{eldbus\_service\_interface\_register2}}
\index{eldbus\_service\_interface\_register2@{eldbus\_service\_interface\_register2}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_interface\_register2()}{eldbus\_service\_interface\_register2()}}
{\footnotesize\ttfamily Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+interface\+\_\+register2 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}}]{conn,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{path,  }\item[{const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}} \texorpdfstring{$\ast$}{*}}]{desc }\end{DoxyParamCaption})}



Register an interface in the given path and connection. 

This extended register function allows the registration of stateful methods, with void\texorpdfstring{$\ast$}{*} data.

Note\+: Use \doxylink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister()} to unregister a interface.


\begin{DoxyParams}{Parameters}
{\em conn} & where the interface should listen \\
\hline
{\em path} & object path \\
\hline
{\em desc} & description of interface\\
\hline
\end{DoxyParams}
\begin{DoxySince}{Since}
1.\+11
\end{DoxySince}
\begin{DoxyReturn}{Returns}
Interface 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2_aa8847bc6838ca829feb36f02ca2b352b}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2\+::version}}.

\Hypertarget{group__Eldbus__Service_gaf2d04d3e14aa1b1d4853e7229097a289}\label{group__Eldbus__Service_gaf2d04d3e14aa1b1d4853e7229097a289} 
\index{Service@{Service}!eldbus\_service\_interface\_fallback\_register2@{eldbus\_service\_interface\_fallback\_register2}}
\index{eldbus\_service\_interface\_fallback\_register2@{eldbus\_service\_interface\_fallback\_register2}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_interface\_fallback\_register2()}{eldbus\_service\_interface\_fallback\_register2()}}
{\footnotesize\ttfamily Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+interface\+\_\+fallback\+\_\+register2 (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eldbus_ga1de8233c3e9240291bb952776810c831}{Eldbus\+\_\+\+Connection}} \texorpdfstring{$\ast$}{*}}]{conn,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{path,  }\item[{const \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2}{Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2}} \texorpdfstring{$\ast$}{*}}]{desc }\end{DoxyParamCaption})}



Register a fallback interface handler for a given subsection of the object hierarchy. 

This extended register function allows the registration of stateful methods, with void\texorpdfstring{$\ast$}{*} data.

Note\+: Use \doxylink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister()} to unregister a interface.


\begin{DoxyParams}{Parameters}
{\em conn} & where the interface should listen \\
\hline
{\em path} & a \textquotesingle{}/\textquotesingle{} delimited string of path elements \\
\hline
{\em desc} & description of interface \\
\hline
\end{DoxyParams}
\begin{DoxySeeAlso}{See also}
\doxylink{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}{eldbus\+\_\+service\+\_\+interface\+\_\+unregister()}
\end{DoxySeeAlso}
\begin{DoxySince}{Since}
1.\+11
\end{DoxySince}
\begin{DoxyReturn}{Returns}
Interface 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}, and \mbox{\hyperlink{struct__Eldbus__Service__Interface__Desc2_aa8847bc6838ca829feb36f02ca2b352b}{\+\_\+\+Eldbus\+\_\+\+Service\+\_\+\+Interface\+\_\+\+Desc2\+::version}}.

\Hypertarget{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c}\label{group__Eldbus__Service_ga16f7215afc4c9432c2bf639e437f193c} 
\index{Service@{Service}!eldbus\_service\_interface\_unregister@{eldbus\_service\_interface\_unregister}}
\index{eldbus\_service\_interface\_unregister@{eldbus\_service\_interface\_unregister}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_interface\_unregister()}{eldbus\_service\_interface\_unregister()}}
{\footnotesize\ttfamily void eldbus\+\_\+service\+\_\+interface\+\_\+unregister (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface }\end{DoxyParamCaption})}



Unregister a interface. 

Note\+: This doesn\textquotesingle{}t unregister the object path if interface count reaches 0. Use \doxylink{group__Eldbus__Service_gad93bc27e856d7747d76873edff991a3a}{eldbus\+\_\+service\+\_\+object\+\_\+unregister()} to unregister the object.


\begin{DoxyParams}{Parameters}
{\em iface} & interface to unregister \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Eina__Hash__Group_ga315f85c5deae8e099e5a5a17d3557456}{eina\+\_\+hash\+\_\+del()}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\Hypertarget{group__Eldbus__Service_gad93bc27e856d7747d76873edff991a3a}\label{group__Eldbus__Service_gad93bc27e856d7747d76873edff991a3a} 
\index{Service@{Service}!eldbus\_service\_object\_unregister@{eldbus\_service\_object\_unregister}}
\index{eldbus\_service\_object\_unregister@{eldbus\_service\_object\_unregister}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_unregister()}{eldbus\_service\_object\_unregister()}}
{\footnotesize\ttfamily void eldbus\+\_\+service\+\_\+object\+\_\+unregister (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface }\end{DoxyParamCaption})}



Unregister all interfaces of the object path that this interface belongs and the object path. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface to unregister \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Eldbus__Connection_ga58345e6a16fe319d0e4c2a7dd6698c75}{eldbus\+\_\+connection\+\_\+free\+\_\+cb\+\_\+del()}}.

\Hypertarget{group__Eldbus__Service_ga710a0428a3bb8d0f436a030272c9f82b}\label{group__Eldbus__Service_ga710a0428a3bb8d0f436a030272c9f82b} 
\index{Service@{Service}!eldbus\_service\_signal\_emit@{eldbus\_service\_signal\_emit}}
\index{eldbus\_service\_signal\_emit@{eldbus\_service\_signal\_emit}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_signal\_emit()}{eldbus\_service\_signal\_emit()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eldbus\+\_\+service\+\_\+signal\+\_\+emit (\begin{DoxyParamCaption}\item[{const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{unsigned int}]{signal\+\_\+id,  }\item[{}]{... }\end{DoxyParamCaption})}



Emit a signal handler of the interface with non-\/complex types. 

Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on.


\begin{DoxyParams}{Parameters}
{\em iface} & interface of the signal \\
\hline
{\em signal\+\_\+id} & id of signal \\
\hline
{\em ...} & values that will be send on signal\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Array__Group_gafcc60b430bbc132114ef041e589d3ecf}{eina\+\_\+array\+\_\+count()}}, \mbox{\hyperlink{group__Eina__Array__Group_gae4a12746bff6643605953de2c47f2d02}{eina\+\_\+array\+\_\+data\+\_\+get()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gae7cf7b1d66fa9022242e09fd53c06bb2}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+FALSE\+\_\+\+RETURN\+\_\+\+VAL}}, \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}, \mbox{\hyperlink{group__Eldbus__Message_ga1d588f88c90d3e759172a86a0be7370b}{eldbus\+\_\+message\+\_\+arguments\+\_\+vappend()}}, \mbox{\hyperlink{group__Eldbus__Message_ga25e968b4f10dc8ee3ab31cbb66a0b8af}{eldbus\+\_\+message\+\_\+unref()}}, \mbox{\hyperlink{group__Eldbus__Service_ga7b736920a3d57d8dcedb9a348b970596}{eldbus\+\_\+service\+\_\+signal\+\_\+new()}}, and \mbox{\hyperlink{group__Eldbus__Service_gabcd4af078093c616f025bc05a95c04a7}{eldbus\+\_\+service\+\_\+signal\+\_\+send()}}.

\Hypertarget{group__Eldbus__Service_ga7b736920a3d57d8dcedb9a348b970596}\label{group__Eldbus__Service_ga7b736920a3d57d8dcedb9a348b970596} 
\index{Service@{Service}!eldbus\_service\_signal\_new@{eldbus\_service\_signal\_new}}
\index{eldbus\_service\_signal\_new@{eldbus\_service\_signal\_new}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_signal\_new()}{eldbus\_service\_signal\_new()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+signal\+\_\+new (\begin{DoxyParamCaption}\item[{const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{unsigned int}]{signal\+\_\+id }\end{DoxyParamCaption})}



Create signal message. 

Each signal handler have a internal id, the first signal handler of interface is = 0 the second = 1 and go on. This function is used when the signal has complex types.


\begin{DoxyParams}{Parameters}
{\em iface} & interface of the signal \\
\hline
{\em signal\+\_\+id} & id of signal\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Array__Group_gafcc60b430bbc132114ef041e589d3ecf}{eina\+\_\+array\+\_\+count()}}, \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gae7cf7b1d66fa9022242e09fd53c06bb2}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+FALSE\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eldbus__Message_gaaa780a6947c0523794ec06275a8abfa8}{eldbus\+\_\+message\+\_\+signal\+\_\+new()}}.



Referenced by \mbox{\hyperlink{group__Eldbus__Service_ga710a0428a3bb8d0f436a030272c9f82b}{eldbus\+\_\+service\+\_\+signal\+\_\+emit()}}.

\Hypertarget{group__Eldbus__Service_gabcd4af078093c616f025bc05a95c04a7}\label{group__Eldbus__Service_gabcd4af078093c616f025bc05a95c04a7} 
\index{Service@{Service}!eldbus\_service\_signal\_send@{eldbus\_service\_signal\_send}}
\index{eldbus\_service\_signal\_send@{eldbus\_service\_signal\_send}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_signal\_send()}{eldbus\_service\_signal\_send()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eldbus\+\_\+service\+\_\+signal\+\_\+send (\begin{DoxyParamCaption}\item[{const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{\mbox{\hyperlink{group__Eldbus__Core_ga14e8c4d4b96af5fb8bb5c66dc315593a}{Eldbus\+\_\+\+Message}} \texorpdfstring{$\ast$}{*}}]{signal\+\_\+msg }\end{DoxyParamCaption})}



Send a signal message. 

On success this will call \doxylink{group__Eldbus__Message_ga25e968b4f10dc8ee3ab31cbb66a0b8af}{eldbus\+\_\+message\+\_\+unref()} on the {\ttfamily signal\+\_\+msg}, which is the intended behavior in 99\% of the cases. Remember to increment the refcount if you want to keep it alive.


\begin{DoxyParams}{Parameters}
{\em iface} & interface of the signal \\
\hline
{\em signal\+\_\+msg} & message of signal\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Eldbus__Service_ga710a0428a3bb8d0f436a030272c9f82b}{eldbus\+\_\+service\+\_\+signal\+\_\+emit()}}.

\Hypertarget{group__Eldbus__Service_ga6f4024c9749ecba16c7f7d6c09b96b49}\label{group__Eldbus__Service_ga6f4024c9749ecba16c7f7d6c09b96b49} 
\index{Service@{Service}!eldbus\_service\_object\_data\_set@{eldbus\_service\_object\_data\_set}}
\index{eldbus\_service\_object\_data\_set@{eldbus\_service\_object\_data\_set}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_data\_set()}{eldbus\_service\_object\_data\_set()}}
{\footnotesize\ttfamily void eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+set (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{key,  }\item[{const void \texorpdfstring{$\ast$}{*}}]{data }\end{DoxyParamCaption})}



Store data at object path, this data can be obtained from all interfaces of the same object. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface that belong to the object path where data will be stored \\
\hline
{\em key} & to identify data \\
\hline
{\em data} & \\
\hline
\end{DoxyParams}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_ga1ccf8538d0015b3801ff642e6156843a}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN}}.

\Hypertarget{group__Eldbus__Service_gaa965e41fd84ce860ef7d01ae53cf92a2}\label{group__Eldbus__Service_gaa965e41fd84ce860ef7d01ae53cf92a2} 
\index{Service@{Service}!eldbus\_service\_object\_data\_get@{eldbus\_service\_object\_data\_get}}
\index{eldbus\_service\_object\_data\_get@{eldbus\_service\_object\_data\_get}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_data\_get()}{eldbus\_service\_object\_data\_get()}}
{\footnotesize\ttfamily void \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+get (\begin{DoxyParamCaption}\item[{const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{key }\end{DoxyParamCaption})}



Get data stored in object path. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface that belongs to the object path where data are stored \\
\hline
{\em key} & that identify data\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
pointer to data if found otherwise NULL 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}.

\Hypertarget{group__Eldbus__Service_ga070ffb98c4e4f0cfc1dcd177eaa5429f}\label{group__Eldbus__Service_ga070ffb98c4e4f0cfc1dcd177eaa5429f} 
\index{Service@{Service}!eldbus\_service\_object\_data\_del@{eldbus\_service\_object\_data\_del}}
\index{eldbus\_service\_object\_data\_del@{eldbus\_service\_object\_data\_del}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_data\_del()}{eldbus\_service\_object\_data\_del()}}
{\footnotesize\ttfamily void \texorpdfstring{$\ast$}{*} eldbus\+\_\+service\+\_\+object\+\_\+data\+\_\+del (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{key }\end{DoxyParamCaption})}



Del data stored in object path. 


\begin{DoxyParams}{Parameters}
{\em iface} & interface that belongs to the object path where data are stored \\
\hline
{\em key} & that identify data\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
pointer to data if found otherwise NULL 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}.

\Hypertarget{group__Eldbus__Service_ga51cfeabdb75e0f0413bb398f12769f67}\label{group__Eldbus__Service_ga51cfeabdb75e0f0413bb398f12769f67} 
\index{Service@{Service}!eldbus\_service\_property\_changed@{eldbus\_service\_property\_changed}}
\index{eldbus\_service\_property\_changed@{eldbus\_service\_property\_changed}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_property\_changed()}{eldbus\_service\_property\_changed()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eldbus\+\_\+service\+\_\+property\+\_\+changed (\begin{DoxyParamCaption}\item[{const Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface,  }\item[{const char \texorpdfstring{$\ast$}{*}}]{name }\end{DoxyParamCaption})}



Add property to list of changed properties A DBus.\+Properties\+Changed signal will be sent in an idler with all properties that have changed. 


\begin{DoxyParams}{Parameters}
{\em iface} & Interface containing the changed property \\
\hline
{\em name} & Property name\\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Ecore__Idle__Group_ga2120fcb2f5a5a3ead1e2c11f5424e4b8}{ecore\+\_\+idle\+\_\+enterer\+\_\+add()}}, \mbox{\hyperlink{group__Eina__Array__Group_gaf4b5844225b5359a617744210a5ed6ff}{eina\+\_\+array\+\_\+new()}}, \mbox{\hyperlink{group__Eina__Array__Group_ga97ac1fe353f4cd7a9762af4d4db7b9c4}{eina\+\_\+array\+\_\+push()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Hash__Group_ga6e9dc02a249e1fcdb64e38e7dc47afb3}{eina\+\_\+hash\+\_\+find()}}, and \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}.

\Hypertarget{group__Eldbus__Service_ga9ebf1302c3be4a23011477b6a2f1ae65}\label{group__Eldbus__Service_ga9ebf1302c3be4a23011477b6a2f1ae65} 
\index{Service@{Service}!eldbus\_service\_object\_manager\_attach@{eldbus\_service\_object\_manager\_attach}}
\index{eldbus\_service\_object\_manager\_attach@{eldbus\_service\_object\_manager\_attach}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_manager\_attach()}{eldbus\_service\_object\_manager\_attach()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eldbus\+\_\+service\+\_\+object\+\_\+manager\+\_\+attach (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface }\end{DoxyParamCaption})}



Attach Object\+Manager interface. 


\begin{DoxyParams}{Parameters}
{\em iface} & Object\+Manager will be attach in object path of this interface. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Ecore__Idle__Group_gabdce29c943a3f6092e6de3d57eec47bc}{ecore\+\_\+idle\+\_\+enterer\+\_\+del()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Hash__Group_ga5e72d0c5397936512407ce8cd66e98d6}{eina\+\_\+hash\+\_\+add()}}, \mbox{\hyperlink{group__Eina__Hash__Group_ga6e9dc02a249e1fcdb64e38e7dc47afb3}{eina\+\_\+hash\+\_\+find()}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\Hypertarget{group__Eldbus__Service_gafb7c735cafee5049992283526168a108}\label{group__Eldbus__Service_gafb7c735cafee5049992283526168a108} 
\index{Service@{Service}!eldbus\_service\_object\_manager\_detach@{eldbus\_service\_object\_manager\_detach}}
\index{eldbus\_service\_object\_manager\_detach@{eldbus\_service\_object\_manager\_detach}!Service@{Service}}
\doxysubsubsubsection{\texorpdfstring{eldbus\_service\_object\_manager\_detach()}{eldbus\_service\_object\_manager\_detach()}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} eldbus\+\_\+service\+\_\+object\+\_\+manager\+\_\+detach (\begin{DoxyParamCaption}\item[{Eldbus\+\_\+\+Service\+\_\+\+Interface \texorpdfstring{$\ast$}{*}}]{iface }\end{DoxyParamCaption})}



Detach Object\+Manager interface. 


\begin{DoxyParams}{Parameters}
{\em iface} & Object\+Manager of object path of this interface will be detach. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
EINA\+\_\+\+TRUE if success 
\end{DoxyReturn}
Flush the iface\+\_\+add/removed of all children objects that this object is the Object\+Manager

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Hash__Group_ga315f85c5deae8e099e5a5a17d3557456}{eina\+\_\+hash\+\_\+del()}}, \mbox{\hyperlink{group__Eina__Inline__List__Group_ga65e496b9b16d527d23c1d735652b4e62}{EINA\+\_\+\+INLIST\+\_\+\+FOREACH}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

