\hypertarget{group__Eio__Eet}{}\doxysection{Eio asynchronous API for Eet file.}
\label{group__Eio__Eet}\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}


This set of functions help in the asynchronous use of Eet.  


\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga978f16f9340f532bff2c187feea36258}{eio\+\_\+eet\+\_\+open}} (const char $\ast$filename, \mbox{\hyperlink{group__Eet__File__Group_gaaffe4b3f04b9306abf105c89c8934331}{Eet\+\_\+\+File\+\_\+\+Mode}} mode, Eio\+\_\+\+Eet\+\_\+\+Open\+\_\+\+Cb eet\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Open an eet file on disk, and returns a handle to it asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga89215542fa93884a0e6af9df2d3a8636}{eio\+\_\+eet\+\_\+close}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, Eio\+\_\+\+Done\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Eet\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Close an eet file handle and flush pending writes asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga75a9149d65c12e9027a146e71ab21918}{eio\+\_\+eet\+\_\+sync}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, Eio\+\_\+\+Done\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Eet\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Sync content of an eet file handle, flushing pending writes asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga208452fcaff674e5cc81a77e30383d71}{eio\+\_\+eet\+\_\+data\+\_\+write\+\_\+cipher}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, \mbox{\hyperlink{group__Eet__Data__Group_ga4baec0e840012480a0958c5c3bca276d}{Eet\+\_\+\+Data\+\_\+\+Descriptor}} $\ast$edd, const char $\ast$name, const char $\ast$cipher\+\_\+key, void $\ast$write\+\_\+data, int compress, Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$user\+\_\+data)
\begin{DoxyCompactList}\small\item\em Write a data structure from memory and store in an eet file using a cipher asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_gaaccf2ebc6ef5de64c78b476f11f60d2f}{eio\+\_\+eet\+\_\+data\+\_\+read\+\_\+cipher}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, \mbox{\hyperlink{group__Eet__Data__Group_ga4baec0e840012480a0958c5c3bca276d}{Eet\+\_\+\+Data\+\_\+\+Descriptor}} $\ast$edd, const char $\ast$name, const char $\ast$cipher\+\_\+key, Eio\+\_\+\+Done\+\_\+\+ERead\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Read a data structure from an eet file and decodes it using a cipher asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_gac01fe1f7a60452248bd85577278f21cb}{eio\+\_\+eet\+\_\+data\+\_\+image\+\_\+write\+\_\+cipher}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, const char $\ast$name, const char $\ast$cipher\+\_\+key, void $\ast$write\+\_\+data, unsigned int w, unsigned int h, int alpha, int compress, int quality, int lossy, Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$user\+\_\+data)
\begin{DoxyCompactList}\small\item\em Write image data to the named key in an eet file asynchronously. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_gaa26926a681ff1d7498642e322072d50f}{eio\+\_\+eet\+\_\+read\+\_\+direct}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, const char $\ast$name, Eio\+\_\+\+Done\+\_\+\+Data\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Read a specified entry from an eet file and return data. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga93168cf0428ddfe0b662eeb82dd4d250}{eio\+\_\+eet\+\_\+read\+\_\+cipher}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, const char $\ast$name, const char $\ast$cipher\+\_\+key, Eio\+\_\+\+Done\+\_\+\+Read\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$data)
\begin{DoxyCompactList}\small\item\em Read a specified entry from an eet file and return data. \end{DoxyCompactList}\item 
EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ \mbox{\hyperlink{group__Eio__Eet_ga0856cfea1a800769cb7e71e19851230c}{eio\+\_\+eet\+\_\+write\+\_\+cipher}} (\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$ef, const char $\ast$name, void $\ast$write\+\_\+data, int size, int compress, const char $\ast$cipher\+\_\+key, Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb done\+\_\+cb, Eio\+\_\+\+Error\+\_\+\+Cb error\+\_\+cb, const void $\ast$user\+\_\+data)
\begin{DoxyCompactList}\small\item\em Write a specified entry to an eet file handle using a cipher. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}
This set of functions help in the asynchronous use of Eet. 



\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Eio__Eet_ga978f16f9340f532bff2c187feea36258}\label{group__Eio__Eet_ga978f16f9340f532bff2c187feea36258}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_open@{eio\_eet\_open}}
\index{eio\_eet\_open@{eio\_eet\_open}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_open()}{eio\_eet\_open()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+open (\begin{DoxyParamCaption}\item[{const char $\ast$}]{filename,  }\item[{\mbox{\hyperlink{group__Eet__File__Group_gaaffe4b3f04b9306abf105c89c8934331}{Eet\+\_\+\+File\+\_\+\+Mode}}}]{mode,  }\item[{Eio\+\_\+\+Eet\+\_\+\+Open\+\_\+\+Cb}]{eet\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Open an eet file on disk, and returns a handle to it asynchronously. 


\begin{DoxyParams}{Parameters}
{\em filename} & The file path to the eet file. eg\+: {\ttfamily \char`\"{}/tmp/file.\+eet\char`\"{}}. \\
\hline
{\em mode} & The mode for opening. Either EET\+\_\+\+FILE\+\_\+\+MODE\+\_\+\+READ, EET\+\_\+\+FILE\+\_\+\+MODE\+\_\+\+WRITE or EET\+\_\+\+FILE\+\_\+\+MODE\+\_\+\+READ\+\_\+\+WRITE. \\
\hline
{\em eet\+\_\+cb} & The callback to call when the file has been successfully opened. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be opened. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure.
\end{DoxyReturn}
This function calls \mbox{\hyperlink{group__Eet__File__Group_ga675160a758832ee812edf7f64ed30ee6}{eet\+\_\+open()}} from another thread using Ecore\+\_\+\+Thread. 

References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_ga89215542fa93884a0e6af9df2d3a8636}\label{group__Eio__Eet_ga89215542fa93884a0e6af9df2d3a8636}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_close@{eio\_eet\_close}}
\index{eio\_eet\_close@{eio\_eet\_close}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_close()}{eio\_eet\_close()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+close (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{Eio\+\_\+\+Done\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Eet\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Close an eet file handle and flush pending writes asynchronously. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the file has been closed. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be closed. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure.
\end{DoxyReturn}
This function will call \mbox{\hyperlink{group__Eet__File__Group_ga1675fef1f6012c1e02ae313d13dc3e03}{eet\+\_\+close()}} from another thread by using Ecore\+\_\+\+Thread. You should assume that the Eet\+\_\+\+File is dead after this function is called. 

References \mbox{\hyperlink{group__Eet__Group_ggaa9142d865094701672375485d4a6284da2e3af24c66d0decf7c97fe4e5a7f75d4}{EET\+\_\+\+ERROR\+\_\+\+NONE}}, and \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}.

\mbox{\Hypertarget{group__Eio__Eet_ga75a9149d65c12e9027a146e71ab21918}\label{group__Eio__Eet_ga75a9149d65c12e9027a146e71ab21918}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_sync@{eio\_eet\_sync}}
\index{eio\_eet\_sync@{eio\_eet\_sync}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_sync()}{eio\_eet\_sync()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+sync (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{Eio\+\_\+\+Done\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Eet\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Sync content of an eet file handle, flushing pending writes asynchronously. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the file has been synced. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be synced. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure.
\end{DoxyReturn}
This function will call \mbox{\hyperlink{group__Eet__File__Group_gaf343f344180955ed898aa86b90ebefda}{eet\+\_\+sync()}} from another thread. As long as the done\+\_\+cb or error\+\_\+cb haven\textquotesingle{}t be called, you must keep {\ttfamily ef} open. \mbox{\Hypertarget{group__Eio__Eet_ga208452fcaff674e5cc81a77e30383d71}\label{group__Eio__Eet_ga208452fcaff674e5cc81a77e30383d71}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_data\_write\_cipher@{eio\_eet\_data\_write\_cipher}}
\index{eio\_eet\_data\_write\_cipher@{eio\_eet\_data\_write\_cipher}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_data\_write\_cipher()}{eio\_eet\_data\_write\_cipher()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+data\+\_\+write\+\_\+cipher (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{\mbox{\hyperlink{group__Eet__Data__Group_ga4baec0e840012480a0958c5c3bca276d}{Eet\+\_\+\+Data\+\_\+\+Descriptor}} $\ast$}]{edd,  }\item[{const char $\ast$}]{name,  }\item[{const char $\ast$}]{cipher\+\_\+key,  }\item[{void $\ast$}]{write\+\_\+data,  }\item[{int}]{compress,  }\item[{Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{user\+\_\+data }\end{DoxyParamCaption})}



Write a data structure from memory and store in an eet file using a cipher asynchronously. 


\begin{DoxyParams}{Parameters}
{\em ef} & The eet file handle to write to. \\
\hline
{\em edd} & The data descriptor to use when encoding. \\
\hline
{\em name} & The key to store the data under in the eet file. \\
\hline
{\em cipher\+\_\+key} & The key to use as cipher. \\
\hline
{\em write\+\_\+data} & A pointer to the data structure to save and encode. \\
\hline
{\em compress} & Compression flags for storage. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been put in the Eet\+\_\+\+File. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be written. \\
\hline
{\em user\+\_\+data} & Private data given to each callback. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_gaaccf2ebc6ef5de64c78b476f11f60d2f}\label{group__Eio__Eet_gaaccf2ebc6ef5de64c78b476f11f60d2f}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_data\_read\_cipher@{eio\_eet\_data\_read\_cipher}}
\index{eio\_eet\_data\_read\_cipher@{eio\_eet\_data\_read\_cipher}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_data\_read\_cipher()}{eio\_eet\_data\_read\_cipher()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+data\+\_\+read\+\_\+cipher (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{\mbox{\hyperlink{group__Eet__Data__Group_ga4baec0e840012480a0958c5c3bca276d}{Eet\+\_\+\+Data\+\_\+\+Descriptor}} $\ast$}]{edd,  }\item[{const char $\ast$}]{name,  }\item[{const char $\ast$}]{cipher\+\_\+key,  }\item[{Eio\+\_\+\+Done\+\_\+\+ERead\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Read a data structure from an eet file and decodes it using a cipher asynchronously. 


\begin{DoxyParams}{Parameters}
{\em ef} & The eet file handle to read from. \\
\hline
{\em edd} & The data descriptor handle to use when decoding. \\
\hline
{\em name} & The key the data is stored under in the eet file. \\
\hline
{\em cipher\+\_\+key} & The key to use as cipher. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been read and decoded. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the data can\textquotesingle{}t be read. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_gac01fe1f7a60452248bd85577278f21cb}\label{group__Eio__Eet_gac01fe1f7a60452248bd85577278f21cb}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_data\_image\_write\_cipher@{eio\_eet\_data\_image\_write\_cipher}}
\index{eio\_eet\_data\_image\_write\_cipher@{eio\_eet\_data\_image\_write\_cipher}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_data\_image\_write\_cipher()}{eio\_eet\_data\_image\_write\_cipher()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+data\+\_\+image\+\_\+write\+\_\+cipher (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{const char $\ast$}]{name,  }\item[{const char $\ast$}]{cipher\+\_\+key,  }\item[{void $\ast$}]{write\+\_\+data,  }\item[{unsigned int}]{w,  }\item[{unsigned int}]{h,  }\item[{int}]{alpha,  }\item[{int}]{compress,  }\item[{int}]{quality,  }\item[{int}]{lossy,  }\item[{Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{user\+\_\+data }\end{DoxyParamCaption})}



Write image data to the named key in an eet file asynchronously. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle opened for writing. \\
\hline
{\em name} & Name of the entry. eg\+: \char`\"{}/base/file\+\_\+i\+\_\+want\char`\"{}. \\
\hline
{\em cipher\+\_\+key} & The key to use as cipher. \\
\hline
{\em write\+\_\+data} & A pointer to the image pixel data. \\
\hline
{\em w} & The width of the image in pixels. \\
\hline
{\em h} & The height of the image in pixels. \\
\hline
{\em alpha} & The alpha channel flag. \\
\hline
{\em compress} & The compression amount. \\
\hline
{\em quality} & The quality encoding amount. \\
\hline
{\em lossy} & The lossiness flag. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been put in the Eet\+\_\+\+File. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be written. \\
\hline
{\em user\+\_\+data} & Private data given to each callback. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_gaa26926a681ff1d7498642e322072d50f}\label{group__Eio__Eet_gaa26926a681ff1d7498642e322072d50f}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_read\_direct@{eio\_eet\_read\_direct}}
\index{eio\_eet\_read\_direct@{eio\_eet\_read\_direct}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_read\_direct()}{eio\_eet\_read\_direct()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+read\+\_\+direct (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{const char $\ast$}]{name,  }\item[{Eio\+\_\+\+Done\+\_\+\+Data\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Read a specified entry from an eet file and return data. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle opened for reading. \\
\hline
{\em name} & Name of the entry. eg\+: \char`\"{}/base/file\+\_\+i\+\_\+want\char`\"{}. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been read. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the data can\textquotesingle{}t be read. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_ga93168cf0428ddfe0b662eeb82dd4d250}\label{group__Eio__Eet_ga93168cf0428ddfe0b662eeb82dd4d250}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_read\_cipher@{eio\_eet\_read\_cipher}}
\index{eio\_eet\_read\_cipher@{eio\_eet\_read\_cipher}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_read\_cipher()}{eio\_eet\_read\_cipher()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+read\+\_\+cipher (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{const char $\ast$}]{name,  }\item[{const char $\ast$}]{cipher\+\_\+key,  }\item[{Eio\+\_\+\+Done\+\_\+\+Read\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{data }\end{DoxyParamCaption})}



Read a specified entry from an eet file and return data. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle opened for reading. \\
\hline
{\em name} & Name of the entry. eg\+: \char`\"{}/base/file\+\_\+i\+\_\+want\char`\"{}. \\
\hline
{\em cipher\+\_\+key} & The key to use as cipher. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been read. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the data can\textquotesingle{}t be read. \\
\hline
{\em data} & Unmodified user data passed to callbacks \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

\mbox{\Hypertarget{group__Eio__Eet_ga0856cfea1a800769cb7e71e19851230c}\label{group__Eio__Eet_ga0856cfea1a800769cb7e71e19851230c}} 
\index{Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}!eio\_eet\_write\_cipher@{eio\_eet\_write\_cipher}}
\index{eio\_eet\_write\_cipher@{eio\_eet\_write\_cipher}!Eio asynchronous API for Eet file.@{Eio asynchronous API for Eet file.}}
\doxysubsubsection{\texorpdfstring{eio\_eet\_write\_cipher()}{eio\_eet\_write\_cipher()}}
{\footnotesize\ttfamily EIO\+\_\+\+API \mbox{\hyperlink{group__Eio_ga1145f009745ecb4d9f6a01a9bc5a9ac0}{Eio\+\_\+\+File}} $\ast$ eio\+\_\+eet\+\_\+write\+\_\+cipher (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Eet__File__Group_ga8d9779184a9870c1a225f1f40c76e8a7}{Eet\+\_\+\+File}} $\ast$}]{ef,  }\item[{const char $\ast$}]{name,  }\item[{void $\ast$}]{write\+\_\+data,  }\item[{int}]{size,  }\item[{int}]{compress,  }\item[{const char $\ast$}]{cipher\+\_\+key,  }\item[{Eio\+\_\+\+Done\+\_\+\+Int\+\_\+\+Cb}]{done\+\_\+cb,  }\item[{Eio\+\_\+\+Error\+\_\+\+Cb}]{error\+\_\+cb,  }\item[{const void $\ast$}]{user\+\_\+data }\end{DoxyParamCaption})}



Write a specified entry to an eet file handle using a cipher. 


\begin{DoxyParams}{Parameters}
{\em ef} & A valid eet file handle opened for writing. \\
\hline
{\em name} & Name of the entry. eg\+: \char`\"{}/base/file\+\_\+i\+\_\+want\char`\"{}. \\
\hline
{\em write\+\_\+data} & Pointer to the data to be stored. \\
\hline
{\em size} & Length in bytes in the data to be stored. \\
\hline
{\em compress} & Compression flags (1 == compress, 0 = don\textquotesingle{}t compress). \\
\hline
{\em cipher\+\_\+key} & The key to use as cipher. \\
\hline
{\em done\+\_\+cb} & Callback called from the main loop when the data has been put in the Eet\+\_\+\+File. \\
\hline
{\em error\+\_\+cb} & Callback called in the main loop when the file can\textquotesingle{}t be written. \\
\hline
{\em user\+\_\+data} & Private data given to each callback. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
NULL in case of a failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Safety__Checks__Group_gab2b07061fc6500dedd9cd41c8d16f95d}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+RETURN\+\_\+\+VAL}}, and \mbox{\hyperlink{group__Eina__Stringshare__Group_ga4e3ce40744291c1fb8574e26883c0bf2}{eina\+\_\+stringshare\+\_\+add()}}.

