\hypertarget{group__Eo__Class__Base}{}\section{Eo\textquotesingle{}s Base class.}
\label{group__Eo__Class__Base}\index{Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}}
\subsection*{Modules}
\begin{DoxyCompactItemize}
\item 
\hyperlink{group__Eo__Events}{Eo\textquotesingle{}s Event Handling}
\end{DoxyCompactItemize}
\subsection*{Macros}
\begin{DoxyCompactItemize}
\item 
\#define \hyperlink{group__Eo__Class__Base_ga23282521d3cb703afb2b67c7b204d403}{eo\+\_\+weak\+\_\+ref}(wref)
\begin{DoxyCompactList}\small\item\em Reference a pointer to an Eo object. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}{eo\+\_\+weak\+\_\+unref}(wref)
\begin{DoxyCompactList}\small\item\em Unreference a pointer to an Eo object. \end{DoxyCompactList}\item 
\#define \hyperlink{group__Eo__Class__Base_ga874cfa5979e41d7babdf141fee168348}{eo\+\_\+wref\+\_\+del\+\_\+safe}(wref)~\hyperlink{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}{eo\+\_\+weak\+\_\+unref}(wref)
\begin{DoxyCompactList}\small\item\em Delete the weak reference passed. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Eo__Class__Base_ga5035eec8b38b903eb485335bc6841651}\label{group__Eo__Class__Base_ga5035eec8b38b903eb485335bc6841651}} 
\#define {\bfseries E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+A\+DD}~\+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+A\+DD()
\item 
\mbox{\Hypertarget{group__Eo__Class__Base_gaa27717736564b5ea53dc93bbb15ae767}\label{group__Eo__Class__Base_gaa27717736564b5ea53dc93bbb15ae767}} 
\#define {\bfseries E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+D\+EL}~\+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+D\+EL()
\item 
\mbox{\Hypertarget{group__Eo__Class__Base_gab43b13a5e7158d33b57154cbd08c6f6b}\label{group__Eo__Class__Base_gab43b13a5e7158d33b57154cbd08c6f6b}} 
\#define {\bfseries E\+O\+\_\+\+E\+V\+\_\+\+D\+EL}~\+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+D\+EL()
\end{DoxyCompactItemize}
\subsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
typedef void($\ast$ \hyperlink{group__Eo__Class__Base_ga407ed32e8bb8c68e30967e033db49159}{eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func}) (void $\ast$)
\begin{DoxyCompactList}\small\item\em Data free func prototype. \end{DoxyCompactList}\end{DoxyCompactItemize}
\subsection*{Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Eo__Class__Base_ga258756826007446812f59ce56919c01f}\label{group__Eo__Class__Base_ga258756826007446812f59ce56919c01f}} 
static \hyperlink{group__Eina__Types__Group_gad5b2116495471db12a34bab9a34edfaa}{E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED} const \hyperlink{group__Eo_ga4e70e342d95de3379f9ec062310727aa}{Eo\+\_\+\+Event\+\_\+\+Description} $\ast$ {\bfseries \+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+A\+DD} (void)
\item 
\mbox{\Hypertarget{group__Eo__Class__Base_ga528cc82fc749e86c1cb5f5b112740573}\label{group__Eo__Class__Base_ga528cc82fc749e86c1cb5f5b112740573}} 
static \hyperlink{group__Eina__Types__Group_gad5b2116495471db12a34bab9a34edfaa}{E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED} const \hyperlink{group__Eo_ga4e70e342d95de3379f9ec062310727aa}{Eo\+\_\+\+Event\+\_\+\+Description} $\ast$ {\bfseries \+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+C\+A\+L\+L\+B\+A\+C\+K\+\_\+\+D\+EL} (void)
\item 
\mbox{\Hypertarget{group__Eo__Class__Base_gabfae717d83d6fd222daaf00ea53c081a}\label{group__Eo__Class__Base_gabfae717d83d6fd222daaf00ea53c081a}} 
static \hyperlink{group__Eina__Types__Group_gad5b2116495471db12a34bab9a34edfaa}{E\+I\+N\+A\+\_\+\+D\+E\+P\+R\+E\+C\+A\+T\+ED} const \hyperlink{group__Eo_ga4e70e342d95de3379f9ec062310727aa}{Eo\+\_\+\+Event\+\_\+\+Description} $\ast$ {\bfseries \+\_\+\+E\+O\+\_\+\+E\+V\+\_\+\+D\+EL} (void)
\end{DoxyCompactItemize}


\subsection{Detailed Description}


\subsection{Macro Definition Documentation}
\mbox{\Hypertarget{group__Eo__Class__Base_ga23282521d3cb703afb2b67c7b204d403}\label{group__Eo__Class__Base_ga23282521d3cb703afb2b67c7b204d403}} 
\index{Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}!eo\+\_\+weak\+\_\+ref@{eo\+\_\+weak\+\_\+ref}}
\index{eo\+\_\+weak\+\_\+ref@{eo\+\_\+weak\+\_\+ref}!Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}}
\subsubsection{\texorpdfstring{eo\+\_\+weak\+\_\+ref}{eo\_weak\_ref}}
{\footnotesize\ttfamily \#define eo\+\_\+weak\+\_\+ref(\begin{DoxyParamCaption}\item[{}]{wref }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                               \(\backslash\)
    if (*wref) eo\_do(*wref, eo\_wref\_add(wref));  \(\backslash\)
  \} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Reference a pointer to an Eo object. 


\begin{DoxyParams}{Parameters}
{\em wref} & the pointer to use for the weak ref\\
\hline
\end{DoxyParams}
Same as eo\+\_\+wref\+\_\+add() with the difference that it call eo\+\_\+do() itself. Checking for $\ast$wref N\+U\+LL and making sure that you pass the right pointer to both side of eo\+\_\+do().

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}{eo\+\_\+weak\+\_\+unref} 

eo\+\_\+wref\+\_\+add 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}\label{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}} 
\index{Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}!eo\+\_\+weak\+\_\+unref@{eo\+\_\+weak\+\_\+unref}}
\index{eo\+\_\+weak\+\_\+unref@{eo\+\_\+weak\+\_\+unref}!Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}}
\subsubsection{\texorpdfstring{eo\+\_\+weak\+\_\+unref}{eo\_weak\_unref}}
{\footnotesize\ttfamily \#define eo\+\_\+weak\+\_\+unref(\begin{DoxyParamCaption}\item[{}]{wref }\end{DoxyParamCaption})}

{\bfseries Value\+:}
\begin{DoxyCode}
\textcolor{keywordflow}{do} \{                                               \(\backslash\)
    if (*wref) eo\_do(*wref, eo\_wref\_del(wref));  \(\backslash\)
  \} \textcolor{keywordflow}{while} (0)
\end{DoxyCode}


Unreference a pointer to an Eo object. 


\begin{DoxyParams}{Parameters}
{\em wref} & the pointer to use for the weak unref\\
\hline
\end{DoxyParams}
Same as eo\+\_\+wref\+\_\+del() with the difference that it call eo\+\_\+do() itself. Checking for $\ast$wref N\+U\+LL and making sure that you pass the right pointer to both side of eo\+\_\+do().

\begin{DoxySeeAlso}{See also}
\hyperlink{group__Eo__Class__Base_ga23282521d3cb703afb2b67c7b204d403}{eo\+\_\+weak\+\_\+ref} 

eo\+\_\+wref\+\_\+del 

\hyperlink{group__Eo__Class__Base_ga874cfa5979e41d7babdf141fee168348}{eo\+\_\+wref\+\_\+del\+\_\+safe} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{group__Eo__Class__Base_ga874cfa5979e41d7babdf141fee168348}\label{group__Eo__Class__Base_ga874cfa5979e41d7babdf141fee168348}} 
\index{Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}!eo\+\_\+wref\+\_\+del\+\_\+safe@{eo\+\_\+wref\+\_\+del\+\_\+safe}}
\index{eo\+\_\+wref\+\_\+del\+\_\+safe@{eo\+\_\+wref\+\_\+del\+\_\+safe}!Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}}
\subsubsection{\texorpdfstring{eo\+\_\+wref\+\_\+del\+\_\+safe}{eo\_wref\_del\_safe}}
{\footnotesize\ttfamily \#define eo\+\_\+wref\+\_\+del\+\_\+safe(\begin{DoxyParamCaption}\item[{}]{wref }\end{DoxyParamCaption})~\hyperlink{group__Eo__Class__Base_ga444106393c7e90b072c65f6dacb0d121}{eo\+\_\+weak\+\_\+unref}(wref)}



Delete the weak reference passed. 


\begin{DoxyParams}{Parameters}
{\em wref} & the weak reference to free.\\
\hline
\end{DoxyParams}
Same as eo\+\_\+wref\+\_\+del(), with the different that it\textquotesingle{}s not called from eo\+\_\+do() so you don\textquotesingle{}t need to check if $\ast$wref is not N\+U\+LL.

\begin{DoxySeeAlso}{See also}
\#eo\+\_\+wref\+\_\+del 
\end{DoxySeeAlso}


\subsection{Typedef Documentation}
\mbox{\Hypertarget{group__Eo__Class__Base_ga407ed32e8bb8c68e30967e033db49159}\label{group__Eo__Class__Base_ga407ed32e8bb8c68e30967e033db49159}} 
\index{Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}!eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func@{eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func}}
\index{eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func@{eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func}!Eo\textquotesingle{}s Base class.@{Eo\textquotesingle{}s Base class.}}
\subsubsection{\texorpdfstring{eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func}{eo\_key\_data\_free\_func}}
{\footnotesize\ttfamily eo\+\_\+key\+\_\+data\+\_\+free\+\_\+func}



Data free func prototype. 

X\+XX\+: DO N\+OT U\+SE, only here for legacy. 