\hypertarget{struct__Eina__Mempool__Backend}{}\doxysection{\+\_\+\+Eina\+\_\+\+Mempool\+\_\+\+Backend Struct Reference}
\label{struct__Eina__Mempool__Backend}\index{\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}}
\doxysubsection*{Data Fields}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a03fbd81b9a7ec3896a7d1afe3e0266ca}\label{struct__Eina__Mempool__Backend_a03fbd81b9a7ec3896a7d1afe3e0266ca}} 
const char $\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a03fbd81b9a7ec3896a7d1afe3e0266ca}{name}}
\begin{DoxyCompactList}\small\item\em Name of the mempool backend. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_aab2d9fad9a0dfce926671979c490e809}\label{struct__Eina__Mempool__Backend_aab2d9fad9a0dfce926671979c490e809}} 
void $\ast$($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_aab2d9fad9a0dfce926671979c490e809}{init}} )(const char $\ast$context, const char $\ast$options, va\+\_\+list args)
\begin{DoxyCompactList}\small\item\em Function to initialize the backend. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a7293e0818d2d75a22d7d9f85601331db}\label{struct__Eina__Mempool__Backend_a7293e0818d2d75a22d7d9f85601331db}} 
void($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a7293e0818d2d75a22d7d9f85601331db}{free}} )(void $\ast$data, void $\ast$element)
\begin{DoxyCompactList}\small\item\em Function to free memory back to the mempool. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_ad04a185ce8c6d62d23c9951b3aa3b348}\label{struct__Eina__Mempool__Backend_ad04a185ce8c6d62d23c9951b3aa3b348}} 
void $\ast$($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_ad04a185ce8c6d62d23c9951b3aa3b348}{alloc}} )(void $\ast$data, unsigned int size)
\begin{DoxyCompactList}\small\item\em Function to allocate memory from the mempool. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a7c9ed690674b1c854c1c4d479f676dae}\label{struct__Eina__Mempool__Backend_a7c9ed690674b1c854c1c4d479f676dae}} 
void $\ast$($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a7c9ed690674b1c854c1c4d479f676dae}{realloc}} )(void $\ast$data, void $\ast$element, unsigned int size)
\begin{DoxyCompactList}\small\item\em Function to change the size of a block of memory that is currently allocated. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a1de514a4e756e7224ac9a7483d3953fb}\label{struct__Eina__Mempool__Backend_a1de514a4e756e7224ac9a7483d3953fb}} 
void($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a1de514a4e756e7224ac9a7483d3953fb}{garbage\+\_\+collect}} )(void $\ast$data)
\begin{DoxyCompactList}\small\item\em Function to trigger a garbage collection; can be N\+U\+LL if the feature isn\textquotesingle{}t available in the backend. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a75a447f19e5bb6d481ac9cb1ba95a05a}\label{struct__Eina__Mempool__Backend_a75a447f19e5bb6d481ac9cb1ba95a05a}} 
void($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a75a447f19e5bb6d481ac9cb1ba95a05a}{statistics}} )(void $\ast$data)
\begin{DoxyCompactList}\small\item\em Report statistics on the content of the mempool; can be N\+U\+LL if the feature isn\textquotesingle{}t available in the backend. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_ac4ee6e80ebc532c59faa9f20283fee6e}\label{struct__Eina__Mempool__Backend_ac4ee6e80ebc532c59faa9f20283fee6e}} 
void($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_ac4ee6e80ebc532c59faa9f20283fee6e}{shutdown}} )(void $\ast$data)
\begin{DoxyCompactList}\small\item\em Function to destroy the backend, freeing memory back to the operating system. \end{DoxyCompactList}\item 
void($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_a316fd3f2453d7693d819ca9dd754fa9a}{repack}} )(void $\ast$data, \mbox{\hyperlink{group__Eina__Memory__Pool__Group_ga36987f282791adfc0d82c493af4462dc}{Eina\+\_\+\+Mempool\+\_\+\+Repack\+\_\+\+Cb}} cb, void $\ast$cb\+\_\+data)
\begin{DoxyCompactList}\small\item\em Function to optimize the placement of objects in the mempool (it\textquotesingle{}s different from garbage\+\_\+collect); can be N\+U\+LL if the feature isn\textquotesingle{}t available in the backend. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_aa26b4a30157adb8f0dc09827588a5ed6}{from}} )(void $\ast$data, void $\ast$element)
\begin{DoxyCompactList}\small\item\em Function to check is a valid element from a mempool. \end{DoxyCompactList}\item 
\mbox{\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator}} $\ast$($\ast$ \mbox{\hyperlink{struct__Eina__Mempool__Backend_ae9e29cba22af947ef66a4336c1a51584}{iterator}} )(void $\ast$data)
\begin{DoxyCompactList}\small\item\em Function to get an Eina\+\_\+\+Iterator that will walk every allocated element in the pool. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Field Documentation}
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_a316fd3f2453d7693d819ca9dd754fa9a}\label{struct__Eina__Mempool__Backend_a316fd3f2453d7693d819ca9dd754fa9a}} 
\index{\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}!repack@{repack}}
\index{repack@{repack}!\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}}
\doxysubsubsection{\texorpdfstring{repack}{repack}}
{\footnotesize\ttfamily void($\ast$ \+\_\+\+Eina\+\_\+\+Mempool\+\_\+\+Backend\+::repack) (void $\ast$data, \mbox{\hyperlink{group__Eina__Memory__Pool__Group_ga36987f282791adfc0d82c493af4462dc}{Eina\+\_\+\+Mempool\+\_\+\+Repack\+\_\+\+Cb}} cb, void $\ast$cb\+\_\+data)}



Function to optimize the placement of objects in the mempool (it\textquotesingle{}s different from garbage\+\_\+collect); can be N\+U\+LL if the feature isn\textquotesingle{}t available in the backend. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Memory__Pool__Group_ga36987f282791adfc0d82c493af4462dc}{Eina\+\_\+\+Mempool\+\_\+\+Repack\+\_\+\+Cb}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_aa26b4a30157adb8f0dc09827588a5ed6}\label{struct__Eina__Mempool__Backend_aa26b4a30157adb8f0dc09827588a5ed6}} 
\index{\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}!from@{from}}
\index{from@{from}!\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}}
\doxysubsubsection{\texorpdfstring{from}{from}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}}($\ast$ \+\_\+\+Eina\+\_\+\+Mempool\+\_\+\+Backend\+::from) (void $\ast$data, void $\ast$element)}



Function to check is a valid element from a mempool. 

\begin{DoxySeeAlso}{See also}
\mbox{\hyperlink{group__Eina__Memory__Pool__Group_ga3b619cca8ce4a3cb35ca93907f5be0d3}{eina\+\_\+mempool\+\_\+from}} 
\end{DoxySeeAlso}
\mbox{\Hypertarget{struct__Eina__Mempool__Backend_ae9e29cba22af947ef66a4336c1a51584}\label{struct__Eina__Mempool__Backend_ae9e29cba22af947ef66a4336c1a51584}} 
\index{\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}!iterator@{iterator}}
\index{iterator@{iterator}!\_Eina\_Mempool\_Backend@{\_Eina\_Mempool\_Backend}}
\doxysubsubsection{\texorpdfstring{iterator}{iterator}}
{\footnotesize\ttfamily \mbox{\hyperlink{group__Eina__Iterator__Group_ga15b975bb881d955249ce13d4ebc96948}{Eina\+\_\+\+Iterator}}$\ast$($\ast$ \+\_\+\+Eina\+\_\+\+Mempool\+\_\+\+Backend\+::iterator) (void $\ast$data)}



Function to get an Eina\+\_\+\+Iterator that will walk every allocated element in the pool. 

@use eina\+\_\+mempool\+\_\+iterator\+\_\+new 