\hypertarget{group__Ecore__File__Group}{}\doxysection{Ecore\+\_\+\+File -\/ Files and directories convenience functions}
\label{group__Ecore__File__Group}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsection*{Typedefs}
\begin{DoxyCompactItemize}
\item 
\mbox{\Hypertarget{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}\label{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}} 
typedef struct \+\_\+\+Ecore\+\_\+\+File\+\_\+\+Monitor {\bfseries Ecore\+\_\+\+File\+\_\+\+Monitor}
\begin{DoxyCompactList}\small\item\em Abstract type used when monitoring a directory. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}\label{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}} 
typedef struct \+\_\+\+Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job {\bfseries Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}
\begin{DoxyCompactList}\small\item\em Abstract type used when aborting a download. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__File__Group_gafe2f652e4d0574b5bb986f14c0770f08}\label{group__Ecore__File__Group_gafe2f652e4d0574b5bb986f14c0770f08}} 
typedef enum \mbox{\hyperlink{group__Ecore__File__Group_gac8673e397a2f2e7ee03f814d118d03b5}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Event}} {\bfseries Ecore\+\_\+\+File\+\_\+\+Event}
\item 
\mbox{\Hypertarget{group__Ecore__File__Group_ga65d84a5d2abfc494f103ef3fe0de6e34}\label{group__Ecore__File__Group_ga65d84a5d2abfc494f103ef3fe0de6e34}} 
typedef void($\ast$ {\bfseries Ecore\+\_\+\+File\+\_\+\+Monitor\+\_\+\+Cb}) (void $\ast$data, \mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$em, Ecore\+\_\+\+File\+\_\+\+Event event, const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Callback type used when a monitored directory has changes. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}\label{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}} 
typedef void($\ast$ {\bfseries Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Completion\+\_\+\+Cb}) (void $\ast$data, const char $\ast$file, int status)
\begin{DoxyCompactList}\small\item\em Callback type used when a download is finished. \end{DoxyCompactList}\item 
\mbox{\Hypertarget{group__Ecore__File__Group_ga2196e7ddf7f0be6a646ca5c5ea419611}\label{group__Ecore__File__Group_ga2196e7ddf7f0be6a646ca5c5ea419611}} 
typedef enum \mbox{\hyperlink{group__Ecore__File__Group_gaf2261d7075a4ccb5a3e1821290ca97ca}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Progress\+\_\+\+Return}} {\bfseries Ecore\+\_\+\+File\+\_\+\+Progress\+\_\+\+Return}
\item 
\mbox{\Hypertarget{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}\label{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}} 
typedef int($\ast$ {\bfseries Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb}) (void $\ast$data, const char $\ast$file, long int dltotal, long int dlnow, long int ultotal, long int ulnow)
\begin{DoxyCompactList}\small\item\em Callback type used while a download is in progress. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Enumerations}
\begin{DoxyCompactItemize}
\item 
enum \mbox{\hyperlink{group__Ecore__File__Group_gac8673e397a2f2e7ee03f814d118d03b5}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Event}} \{ \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a5b6731602105064764529adac4d1264f}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+NONE}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a2c6fef381c6d027d6dfd9e9cf211fa67}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CREATED\+\_\+\+FILE}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a32961ee791cf962f8f1de26664e2b6fc}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CREATED\+\_\+\+DIRECTORY}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a09a4bf150129aadfca5d84361ee8607b}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+FILE}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a41917336c75e34e825ba34e0cacc3515}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+DIRECTORY}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a728ccffd07a101b7c7377dfd48a71224}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+SELF}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ab284e0b8654545672937914a9c838973}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+MODIFIED}}
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ac82f89c8c4ee15891af196c7c26a5772}{ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CLOSED}}
 \}
\begin{DoxyCompactList}\small\item\em The event type returned when a file or directory is monitored. \end{DoxyCompactList}\item 
enum \mbox{\hyperlink{group__Ecore__File__Group_gaf2261d7075a4ccb5a3e1821290ca97ca}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Progress\+\_\+\+Return}} \{ \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa034acca14263fec55dbcb7162a7cbe1d}{ECORE\+\_\+\+FILE\+\_\+\+PROGRESS\+\_\+\+CONTINUE}} = 0
, \newline
\mbox{\hyperlink{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa255e0cbdd2f78fd1fb6f5bc8dcf1204a}{ECORE\+\_\+\+FILE\+\_\+\+PROGRESS\+\_\+\+ABORT}} = 1
 \}
\begin{DoxyCompactList}\small\item\em What to do with the download as a return from the Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb function, if provided. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Functions}
\begin{DoxyCompactItemize}
\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_ga9497ff8ae37f46464565414711a031d0}{ecore\+\_\+file\+\_\+init}} (void)
\begin{DoxyCompactList}\small\item\em Initializes the Ecore\+\_\+\+File library. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_gafa64f6af8d6f80acef1a29366a31d55d}{ecore\+\_\+file\+\_\+shutdown}} (void)
\begin{DoxyCompactList}\small\item\em Shuts down the Ecore\+\_\+\+File library. \end{DoxyCompactList}\item 
EAPI long long \mbox{\hyperlink{group__Ecore__File__Group_gaaef663ea76aae7aeba5814f1b8f2a013}{ecore\+\_\+file\+\_\+mod\+\_\+time}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Gets the time of the last modification to the given file. \end{DoxyCompactList}\item 
EAPI long long \mbox{\hyperlink{group__Ecore__File__Group_ga6ac9d3d430a6110467ca3e2ac96a8851}{ecore\+\_\+file\+\_\+size}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Gets the size of the given file. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gaf5a3cc8bd9bf69a3ebce0678fe799016}{ecore\+\_\+file\+\_\+exists}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Checks if the given file exists. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}{ecore\+\_\+file\+\_\+is\+\_\+dir}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Checks if the given file is a directory. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}{ecore\+\_\+file\+\_\+mkdir}} (const char $\ast$dir)
\begin{DoxyCompactList}\small\item\em Creates a new directory. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_ga609a0f775c9715843a42de504e034ad4}{ecore\+\_\+file\+\_\+mkdirs}} (const char $\ast$$\ast$dirs)
\begin{DoxyCompactList}\small\item\em Creates complete directory in a batch. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}{ecore\+\_\+file\+\_\+mksubdirs}} (const char $\ast$base, const char $\ast$$\ast$subdirs)
\begin{DoxyCompactList}\small\item\em Creates complete list of sub-\/directories in a batch (optimized). \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga62cef63e255470c97a4d95963a3a07b1}{ecore\+\_\+file\+\_\+rmdir}} (const char $\ast$dir)
\begin{DoxyCompactList}\small\item\em Deletes the given empty directory. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}{ecore\+\_\+file\+\_\+recursive\+\_\+rm}} (const char $\ast$dir)
\begin{DoxyCompactList}\small\item\em Deletes the given directory and all its contents. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}{ecore\+\_\+file\+\_\+mkpath}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Creates a complete path. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_ga53017b49303ea8742096462fd7398f82}{ecore\+\_\+file\+\_\+mkpaths}} (const char $\ast$$\ast$paths)
\begin{DoxyCompactList}\small\item\em Creates complete paths in a batch. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga93de3e691ec32bb8220545f9d807e3e5}{ecore\+\_\+file\+\_\+cp}} (const char $\ast$src, const char $\ast$dst)
\begin{DoxyCompactList}\small\item\em Copies the given file to the given destination. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}{ecore\+\_\+file\+\_\+mv}} (const char $\ast$src, const char $\ast$dst)
\begin{DoxyCompactList}\small\item\em Moves the given file to the given destination. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gabac9e816fc64684cb2e9d8c7c4443818}{ecore\+\_\+file\+\_\+symlink}} (const char $\ast$src, const char $\ast$dest)
\begin{DoxyCompactList}\small\item\em Creates a symbolic link. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_ga062018ae501d68814d586483391b9daa}{ecore\+\_\+file\+\_\+realpath}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Gets the canonicalized absolute path name. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga38fa7db112c1fc3c6ca6dcc367f036bb}{ecore\+\_\+file\+\_\+unlink}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Deletes the given file. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga67811f9072dc5bbc10a63c056b0df9d4}{ecore\+\_\+file\+\_\+remove}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Removes the given file or directory. \end{DoxyCompactList}\item 
EAPI const char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_ga5f5fe7219c6288fecaa840f81c035cb7}{ecore\+\_\+file\+\_\+file\+\_\+get}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Gets the filename from a given path. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gac806bae3ba255661ad7cc814f4b12857}{ecore\+\_\+file\+\_\+dir\+\_\+get}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Gets the directory where the given file resides. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga3b844d86804b9566aac515becda9dbf2}{ecore\+\_\+file\+\_\+can\+\_\+read}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Checks if the given file can be read. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gaa32b8720b401b8677cec4b12da261a6d}{ecore\+\_\+file\+\_\+can\+\_\+write}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Checks if the given file can be written. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga92b7bb460e4d4e92a12c0c144fb69feb}{ecore\+\_\+file\+\_\+can\+\_\+exec}} (const char $\ast$file)
\begin{DoxyCompactList}\small\item\em Checks if the given file can be executed. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gab83ab3170765f93a057499121b33d97b}{ecore\+\_\+file\+\_\+readlink}} (const char $\ast$link)
\begin{DoxyCompactList}\small\item\em Gets the path pointed by the given link. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gab7baa24c2abea205b4d1f92397f1bda0}{ecore\+\_\+file\+\_\+ls}} (const char $\ast$dir)
\begin{DoxyCompactList}\small\item\em Gets the list of the files and directories in the given directory. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gab01d35474ff7390e41e19609712f6923}{ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get}} (const char $\ast$app)
\begin{DoxyCompactList}\small\item\em Returns the executable from the given command. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_ga0d33ee025d316f91c179bd6cd5f9a9d7}{ecore\+\_\+file\+\_\+escape\+\_\+name}} (const char $\ast$filename)
\begin{DoxyCompactList}\small\item\em Adds the escape sequence (\textquotesingle{}\textbackslash{}\textquotesingle{}) to the given file name. \end{DoxyCompactList}\item 
EAPI char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_ga04e08638c8ba981a6419e64c19b4688b}{ecore\+\_\+file\+\_\+strip\+\_\+ext}} (const char $\ast$path)
\begin{DoxyCompactList}\small\item\em Removes the extension from the given file name. \end{DoxyCompactList}\item 
EAPI int \mbox{\hyperlink{group__Ecore__File__Group_ga5f6777eb4beea434372df0aa7357979b}{ecore\+\_\+file\+\_\+dir\+\_\+is\+\_\+empty}} (const char $\ast$dir)
\begin{DoxyCompactList}\small\item\em Checks if the given directory is empty. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}{ecore\+\_\+file\+\_\+monitor\+\_\+add}} (const char $\ast$path, \mbox{\hyperlink{group__Ecore__File__Group_ga65d84a5d2abfc494f103ef3fe0de6e34}{Ecore\+\_\+\+File\+\_\+\+Monitor\+\_\+\+Cb}} func, void $\ast$data)
\begin{DoxyCompactList}\small\item\em Monitors the given path using inotify, Windows notification, or polling. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__File__Group_ga6f24ef6d605732ea1b10626efb3f07da}{ecore\+\_\+file\+\_\+monitor\+\_\+del}} (\mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$em)
\begin{DoxyCompactList}\small\item\em Stops the monitoring of the given path. \end{DoxyCompactList}\item 
EAPI const char $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_gab319600016609acf553e7bdc76d760ac}{ecore\+\_\+file\+\_\+monitor\+\_\+path\+\_\+get}} (\mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$em)
\begin{DoxyCompactList}\small\item\em Gets the monitored path. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga406c86a604de7be69b01fc8664856319}{ecore\+\_\+file\+\_\+path\+\_\+dir\+\_\+exists}} (const char $\ast$in\+\_\+dir)
\begin{DoxyCompactList}\small\item\em Checks if the given directory is in PATH. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_gae8f7710e0778a9d733f5167b098a70ac}{ecore\+\_\+file\+\_\+app\+\_\+installed}} (const char $\ast$exe)
\begin{DoxyCompactList}\small\item\em Checks if the given application is installed. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ \mbox{\hyperlink{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}{ecore\+\_\+file\+\_\+app\+\_\+list}} (void)
\begin{DoxyCompactList}\small\item\em Gets a list of all the applications installed on the system. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}{ecore\+\_\+file\+\_\+download}} (const char $\ast$url, const char $\ast$dst, \mbox{\hyperlink{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Completion\+\_\+\+Cb}} completion\+\_\+cb, \mbox{\hyperlink{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb}} progress\+\_\+cb, void $\ast$data, \mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$$\ast$job\+\_\+ret)
\begin{DoxyCompactList}\small\item\em Downloads the given url to the given destination. \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}{ecore\+\_\+file\+\_\+download\+\_\+full}} (const char $\ast$url, const char $\ast$dst, \mbox{\hyperlink{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Completion\+\_\+\+Cb}} completion\+\_\+cb, \mbox{\hyperlink{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb}} progress\+\_\+cb, void $\ast$data, \mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$$\ast$job\+\_\+ret, \mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\+\_\+\+Hash}} $\ast$headers)
\begin{DoxyCompactList}\small\item\em Downloads the given url to the given destination with additional headers. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}{ecore\+\_\+file\+\_\+download\+\_\+abort\+\_\+all}} (void)
\begin{DoxyCompactList}\small\item\em Aborts all downloads. \end{DoxyCompactList}\item 
EAPI void \mbox{\hyperlink{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}{ecore\+\_\+file\+\_\+download\+\_\+abort}} (\mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$job)
\begin{DoxyCompactList}\small\item\em Aborts the given download job and call the completion\+\_\+cb callback with a status of 1 (error). \end{DoxyCompactList}\item 
EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} \mbox{\hyperlink{group__Ecore__File__Group_ga26ab8acf71ae203006845c5d7b9bbbe1}{ecore\+\_\+file\+\_\+download\+\_\+protocol\+\_\+available}} (const char $\ast$protocol)
\begin{DoxyCompactList}\small\item\em Checks if the given protocol is available. \end{DoxyCompactList}\end{DoxyCompactItemize}


\doxysubsection{Detailed Description}


\doxysubsection{Enumeration Type Documentation}
\mbox{\Hypertarget{group__Ecore__File__Group_gac8673e397a2f2e7ee03f814d118d03b5}\label{group__Ecore__File__Group_gac8673e397a2f2e7ee03f814d118d03b5}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!\_Ecore\_File\_Event@{\_Ecore\_File\_Event}}
\index{\_Ecore\_File\_Event@{\_Ecore\_File\_Event}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{\_Ecore\_File\_Event}{\_Ecore\_File\_Event}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Ecore__File__Group_gac8673e397a2f2e7ee03f814d118d03b5}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Event}}}



The event type returned when a file or directory is monitored. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_NONE@{ECORE\_FILE\_EVENT\_NONE}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_NONE@{ECORE\_FILE\_EVENT\_NONE}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a5b6731602105064764529adac4d1264f}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a5b6731602105064764529adac4d1264f}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+NONE&No event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_CREATED\_FILE@{ECORE\_FILE\_EVENT\_CREATED\_FILE}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_CREATED\_FILE@{ECORE\_FILE\_EVENT\_CREATED\_FILE}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a2c6fef381c6d027d6dfd9e9cf211fa67}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a2c6fef381c6d027d6dfd9e9cf211fa67}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CREATED\+\_\+\+FILE&Created file event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_CREATED\_DIRECTORY@{ECORE\_FILE\_EVENT\_CREATED\_DIRECTORY}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_CREATED\_DIRECTORY@{ECORE\_FILE\_EVENT\_CREATED\_DIRECTORY}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a32961ee791cf962f8f1de26664e2b6fc}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a32961ee791cf962f8f1de26664e2b6fc}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CREATED\+\_\+\+DIRECTORY&Created directory event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_DELETED\_FILE@{ECORE\_FILE\_EVENT\_DELETED\_FILE}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_DELETED\_FILE@{ECORE\_FILE\_EVENT\_DELETED\_FILE}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a09a4bf150129aadfca5d84361ee8607b}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a09a4bf150129aadfca5d84361ee8607b}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+FILE&Deleted file event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_DELETED\_DIRECTORY@{ECORE\_FILE\_EVENT\_DELETED\_DIRECTORY}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_DELETED\_DIRECTORY@{ECORE\_FILE\_EVENT\_DELETED\_DIRECTORY}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a41917336c75e34e825ba34e0cacc3515}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a41917336c75e34e825ba34e0cacc3515}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+DIRECTORY&Deleted directory event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_DELETED\_SELF@{ECORE\_FILE\_EVENT\_DELETED\_SELF}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_DELETED\_SELF@{ECORE\_FILE\_EVENT\_DELETED\_SELF}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a728ccffd07a101b7c7377dfd48a71224}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5a728ccffd07a101b7c7377dfd48a71224}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+DELETED\+\_\+\+SELF&Deleted monitored directory event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_MODIFIED@{ECORE\_FILE\_EVENT\_MODIFIED}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_MODIFIED@{ECORE\_FILE\_EVENT\_MODIFIED}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ab284e0b8654545672937914a9c838973}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ab284e0b8654545672937914a9c838973}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+MODIFIED&Modified file or directory event. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_EVENT\_CLOSED@{ECORE\_FILE\_EVENT\_CLOSED}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_EVENT\_CLOSED@{ECORE\_FILE\_EVENT\_CLOSED}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ac82f89c8c4ee15891af196c7c26a5772}\label{group__Ecore__File__Group_ggac8673e397a2f2e7ee03f814d118d03b5ac82f89c8c4ee15891af196c7c26a5772}} 
ECORE\+\_\+\+FILE\+\_\+\+EVENT\+\_\+\+CLOSED&Closed file event. \\
\hline

\end{DoxyEnumFields}
\mbox{\Hypertarget{group__Ecore__File__Group_gaf2261d7075a4ccb5a3e1821290ca97ca}\label{group__Ecore__File__Group_gaf2261d7075a4ccb5a3e1821290ca97ca}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!\_Ecore\_File\_Progress\_Return@{\_Ecore\_File\_Progress\_Return}}
\index{\_Ecore\_File\_Progress\_Return@{\_Ecore\_File\_Progress\_Return}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{\_Ecore\_File\_Progress\_Return}{\_Ecore\_File\_Progress\_Return}}
{\footnotesize\ttfamily enum \mbox{\hyperlink{group__Ecore__File__Group_gaf2261d7075a4ccb5a3e1821290ca97ca}{\+\_\+\+Ecore\+\_\+\+File\+\_\+\+Progress\+\_\+\+Return}}}



What to do with the download as a return from the Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb function, if provided. 

\begin{DoxyEnumFields}{Enumerator}
\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_PROGRESS\_CONTINUE@{ECORE\_FILE\_PROGRESS\_CONTINUE}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_PROGRESS\_CONTINUE@{ECORE\_FILE\_PROGRESS\_CONTINUE}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa034acca14263fec55dbcb7162a7cbe1d}\label{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa034acca14263fec55dbcb7162a7cbe1d}} 
ECORE\+\_\+\+FILE\+\_\+\+PROGRESS\+\_\+\+CONTINUE&Continue the download. \\
\hline

\raisebox{\heightof{T}}[0pt][0pt]{\index{ECORE\_FILE\_PROGRESS\_ABORT@{ECORE\_FILE\_PROGRESS\_ABORT}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ECORE\_FILE\_PROGRESS\_ABORT@{ECORE\_FILE\_PROGRESS\_ABORT}}}\mbox{\Hypertarget{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa255e0cbdd2f78fd1fb6f5bc8dcf1204a}\label{group__Ecore__File__Group_ggaf2261d7075a4ccb5a3e1821290ca97caa255e0cbdd2f78fd1fb6f5bc8dcf1204a}} 
ECORE\+\_\+\+FILE\+\_\+\+PROGRESS\+\_\+\+ABORT&Abort the download. \\
\hline

\end{DoxyEnumFields}


\doxysubsection{Function Documentation}
\mbox{\Hypertarget{group__Ecore__File__Group_ga9497ff8ae37f46464565414711a031d0}\label{group__Ecore__File__Group_ga9497ff8ae37f46464565414711a031d0}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_init@{ecore\_file\_init}}
\index{ecore\_file\_init@{ecore\_file\_init}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_init()}{ecore\_file\_init()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+init (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Initializes the Ecore\+\_\+\+File library. 

\begin{DoxyReturn}{Returns}
{\ttfamily 1} or greater on success, otherwise {\ttfamily 0} on error.
\end{DoxyReturn}
This function sets up Ecore\+\_\+\+File and the services it will use (monitoring, downloading, PATH related feature). It returns 0 on failure, otherwise it returns the number of times it has already been called.

When Ecore\+\_\+\+File is not used anymore, call \mbox{\hyperlink{group__Ecore__File__Group_gafa64f6af8d6f80acef1a29366a31d55d}{ecore\+\_\+file\+\_\+shutdown()}} to shut down the Ecore\+\_\+\+File library. 

References \mbox{\hyperlink{group__Ecore__Init__Group_ga77757609684a2c922dc5ec398274751b}{ecore\+\_\+init()}}, \mbox{\hyperlink{group__Eina__Log__Group_ga79d0a42ab10dd0e7760b33ae33a6aae0}{eina\+\_\+log\+\_\+domain\+\_\+register()}}, and \mbox{\hyperlink{group__Eina__Log__Group_ga2e33caeeeb6051526c01b7fea4d6c91b}{EINA\+\_\+\+LOG\+\_\+\+ERR}}.



Referenced by \mbox{\hyperlink{Efreet_8h_a448e550a87271c7a74f8bf9963a8b81e}{efreet\+\_\+init()}}, \mbox{\hyperlink{group__Elm__General_gab31fb3af2f25295fea1eb05f69724eb5}{elm\+\_\+quicklaunch\+\_\+init()}}, and \mbox{\hyperlink{group__Elua_gacf7fc6f0386d30e4af4fcb8fd424c8dc}{elua\+\_\+init()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gafa64f6af8d6f80acef1a29366a31d55d}\label{group__Ecore__File__Group_gafa64f6af8d6f80acef1a29366a31d55d}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_shutdown@{ecore\_file\_shutdown}}
\index{ecore\_file\_shutdown@{ecore\_file\_shutdown}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_shutdown()}{ecore\_file\_shutdown()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+shutdown (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Shuts down the Ecore\+\_\+\+File library. 

\begin{DoxyReturn}{Returns}
{\ttfamily 0} when the library is completely shut down, {\ttfamily 1} or greater otherwise.
\end{DoxyReturn}
This function shuts down the Ecore\+\_\+\+File library. It returns 0 when it has been called the same number of times than \mbox{\hyperlink{group__Ecore__File__Group_ga9497ff8ae37f46464565414711a031d0}{ecore\+\_\+file\+\_\+init()}}. In that case it shuts down all the services it uses. 

References \mbox{\hyperlink{group__Ecore__Init__Group_ga768298b932f18d7e7593a447493e5cde}{ecore\+\_\+shutdown()}}, and \mbox{\hyperlink{group__Eina__Log__Group_ga61776fa99e910e2d40f77c688c9bee5a}{eina\+\_\+log\+\_\+domain\+\_\+unregister()}}.



Referenced by \mbox{\hyperlink{Efreet_8h_a448e550a87271c7a74f8bf9963a8b81e}{efreet\+\_\+init()}}, \mbox{\hyperlink{Efreet_8h_a21312e3804b2ff4afed2e854b66ed827}{efreet\+\_\+shutdown()}}, \mbox{\hyperlink{group__Elm__General_ga9fcc62ef962c1b166c693cfd6f2372e4}{elm\+\_\+quicklaunch\+\_\+shutdown()}}, and \mbox{\hyperlink{group__Elua_ga8364635553424c58bdbb50f9bb842d9b}{elua\+\_\+shutdown()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gaaef663ea76aae7aeba5814f1b8f2a013}\label{group__Ecore__File__Group_gaaef663ea76aae7aeba5814f1b8f2a013}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mod\_time@{ecore\_file\_mod\_time}}
\index{ecore\_file\_mod\_time@{ecore\_file\_mod\_time}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mod\_time()}{ecore\_file\_mod\_time()}}
{\footnotesize\ttfamily EAPI long long ecore\+\_\+file\+\_\+mod\+\_\+time (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Gets the time of the last modification to the given file. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Return the time of the last data modification, or {\ttfamily 0} on failure.
\end{DoxyReturn}
This function returns the time of the last modification of {\ttfamily file}. On failure, it returns 0. \mbox{\Hypertarget{group__Ecore__File__Group_ga6ac9d3d430a6110467ca3e2ac96a8851}\label{group__Ecore__File__Group_ga6ac9d3d430a6110467ca3e2ac96a8851}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_size@{ecore\_file\_size}}
\index{ecore\_file\_size@{ecore\_file\_size}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_size()}{ecore\_file\_size()}}
{\footnotesize\ttfamily EAPI long long ecore\+\_\+file\+\_\+size (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Gets the size of the given file. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Return the size of the file in bytes, or {\ttfamily 0} on failure.
\end{DoxyReturn}
This function returns the size of {\ttfamily file} in bytes. On failure, it returns 0. 

Referenced by \mbox{\hyperlink{group__Elm__Theme_ga02474d8fd11ce6d00b9790c971509f5b}{elm\+\_\+theme\+\_\+name\+\_\+available\+\_\+list\+\_\+new()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gaf5a3cc8bd9bf69a3ebce0678fe799016}\label{group__Ecore__File__Group_gaf5a3cc8bd9bf69a3ebce0678fe799016}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_exists@{ecore\_file\_exists}}
\index{ecore\_file\_exists@{ecore\_file\_exists}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_exists()}{ecore\_file\_exists()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Checks if the given file exists. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the {\ttfamily file} exists, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily file} exists on local filesystem, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}{ecore\+\_\+file\+\_\+download\+\_\+full()}}, \mbox{\hyperlink{group__Edje__General__Group_ga3ad1025c24e7262cf489afb042171b43}{edje\+\_\+available\+\_\+modules\+\_\+get()}}, \mbox{\hyperlink{Edje__Edit_8h_a66d968607aef3bc41ac5844208e49a2b}{edje\+\_\+edit\+\_\+clean\+\_\+save\+\_\+as()}}, \mbox{\hyperlink{group__Efreet__Desktop_gab3c8380d12dba2118e28faefa7f92270}{efreet\+\_\+desktop\+\_\+uncached\+\_\+new()}}, \mbox{\hyperlink{group__Efreet__Menu_ga7d3bd603d4956fbb6dc315e3af8275bf}{efreet\+\_\+menu\+\_\+get()}}, \mbox{\hyperlink{group__Efreet__Trash_ga67b6381a01374681566b35ad953e111a}{efreet\+\_\+trash\+\_\+delete\+\_\+uri()}}, \mbox{\hyperlink{group__Efreet__Trash_gac0eb2bf1ec1dc22299fdbde34ef2ba58}{efreet\+\_\+trash\+\_\+dir\+\_\+get()}}, \mbox{\hyperlink{group__Elm__Profile_ga68e7d7f56eefe7f4b15f5bb3b4aa6c96}{elm\+\_\+config\+\_\+profile\+\_\+exists()}}, and \mbox{\hyperlink{group__Elm__Theme_gab2a2a47fff7c32691e308c7c9c45aba7}{elm\+\_\+theme\+\_\+list\+\_\+item\+\_\+path\+\_\+get()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}\label{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_is\_dir@{ecore\_file\_is\_dir}}
\index{ecore\_file\_is\_dir@{ecore\_file\_is\_dir}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_is\_dir()}{ecore\_file\_is\_dir()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+is\+\_\+dir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Checks if the given file is a directory. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the file exists and is a directory, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily file} exists exists and is a directory on local filesystem, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

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



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}{ecore\+\_\+file\+\_\+app\+\_\+list()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}{ecore\+\_\+file\+\_\+download\+\_\+full()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}{ecore\+\_\+file\+\_\+mkpath()}}, \mbox{\hyperlink{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}{ecore\+\_\+file\+\_\+mksubdirs()}}, and \mbox{\hyperlink{group__Elm__Theme_ga02474d8fd11ce6d00b9790c971509f5b}{elm\+\_\+theme\+\_\+name\+\_\+available\+\_\+list\+\_\+new()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}\label{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mkdir@{ecore\_file\_mkdir}}
\index{ecore\_file\_mkdir@{ecore\_file\_mkdir}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mkdir()}{ecore\_file\_mkdir()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+mkdir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dir }\end{DoxyParamCaption})}



Creates a new directory. 


\begin{DoxyParams}{Parameters}
{\em dir} & The name of the directory to create \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on successful creation, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function creates the directory {\ttfamily dir}, with the mode S\+\_\+\+IRUSR $\vert$ S\+\_\+\+IWUSR $\vert$ S\+\_\+\+IXUSR $\vert$ S\+\_\+\+IRGRP $\vert$ S\+\_\+\+IXGRP $\vert$ S\+\_\+\+IROTH $\vert$ S\+\_\+\+IXOTH on UNIX (mode is unused on Windows). On success, it returns {\ttfamily EINA\+\_\+\+TRUE}, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga609a0f775c9715843a42de504e034ad4}{ecore\+\_\+file\+\_\+mkdirs()}}, \mbox{\hyperlink{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}{ecore\+\_\+file\+\_\+mksubdirs()}}, and \mbox{\hyperlink{group__Efreet__Trash_ga09dd944f4567a90c04dbf6d146eb7a54}{efreet\+\_\+trash\+\_\+empty\+\_\+trash()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga609a0f775c9715843a42de504e034ad4}\label{group__Ecore__File__Group_ga609a0f775c9715843a42de504e034ad4}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mkdirs@{ecore\_file\_mkdirs}}
\index{ecore\_file\_mkdirs@{ecore\_file\_mkdirs}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mkdirs()}{ecore\_file\_mkdirs()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+mkdirs (\begin{DoxyParamCaption}\item[{const char $\ast$$\ast$}]{dirs }\end{DoxyParamCaption})}



Creates complete directory in a batch. 


\begin{DoxyParams}{Parameters}
{\em dirs} & The list of directories, null terminated. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of successful directories created, -\/1 if dirs is {\ttfamily NULL}.
\end{DoxyReturn}
This function creates all the directories that are in the null terminated array {\ttfamily dirs}. The function loops over the directories and call \mbox{\hyperlink{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}{ecore\+\_\+file\+\_\+mkdir()}}. This function returns -\/1 if {\ttfamily dirs} is {\ttfamily NULL}, otherwise if returns the number of successfully created directories. 

References \mbox{\hyperlink{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}{ecore\+\_\+file\+\_\+mkdir()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}\label{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mksubdirs@{ecore\_file\_mksubdirs}}
\index{ecore\_file\_mksubdirs@{ecore\_file\_mksubdirs}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mksubdirs()}{ecore\_file\_mksubdirs()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+mksubdirs (\begin{DoxyParamCaption}\item[{const char $\ast$}]{base,  }\item[{const char $\ast$$\ast$}]{subdirs }\end{DoxyParamCaption})}



Creates complete list of sub-\/directories in a batch (optimized). 


\begin{DoxyParams}{Parameters}
{\em base} & The base directory to act on. \\
\hline
{\em subdirs} & The list of directories, null terminated. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of successful directories created, {\ttfamily -\/1} on failure.
\end{DoxyReturn}
This function creates all the directories that are in the null terminated array {\ttfamily subdirs} in the {\ttfamily base} directory. If {\ttfamily base} does not exist, it will be created. The function loops over the directories and call \mbox{\hyperlink{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}{ecore\+\_\+file\+\_\+mkdir()}}. The whole path of the directories must exist. So if base/a/b/c wants to be created, {\ttfamily subdirs} must contain \char`\"{}a\char`\"{}, \char`\"{}a/b\char`\"{} and \char`\"{}a/b/c\char`\"{}, in that order. This function returns -\/1 if {\ttfamily subdirs} or {\ttfamily base} are {\ttfamily NULL}, or if {\ttfamily base} is empty (\char`\"{}\textbackslash{}0\char`\"{}). It returns 0 is {\ttfamily base} is not a directory or invalid, or if it can\textquotesingle{}t be created. Otherwise if returns the number of successfully created directories. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}{ecore\+\_\+file\+\_\+is\+\_\+dir()}}, \mbox{\hyperlink{group__Ecore__File__Group_gafdfe259d9a595dc05c8fc725342b253c}{ecore\+\_\+file\+\_\+mkdir()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}{ecore\+\_\+file\+\_\+mkpath()}}, and \mbox{\hyperlink{group__Eina__String__Group_gae28caa0c42c4e76ae584f22bd3615723}{eina\+\_\+strlcpy()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga62cef63e255470c97a4d95963a3a07b1}\label{group__Ecore__File__Group_ga62cef63e255470c97a4d95963a3a07b1}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_rmdir@{ecore\_file\_rmdir}}
\index{ecore\_file\_rmdir@{ecore\_file\_rmdir}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_rmdir()}{ecore\_file\_rmdir()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+rmdir (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dir }\end{DoxyParamCaption})}



Deletes the given empty directory. 


\begin{DoxyParams}{Parameters}
{\em dir} & The name of the directory to delete. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function deletes {\ttfamily dir}. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}{ecore\+\_\+file\+\_\+recursive\+\_\+rm()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}\label{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_recursive\_rm@{ecore\_file\_recursive\_rm}}
\index{ecore\_file\_recursive\_rm@{ecore\_file\_recursive\_rm}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_recursive\_rm()}{ecore\_file\_recursive\_rm()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+recursive\+\_\+rm (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dir }\end{DoxyParamCaption})}



Deletes the given directory and all its contents. 


\begin{DoxyParams}{Parameters}
{\em dir} & The name of the directory to delete. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function delete {\ttfamily dir} and all its contents. If {\ttfamily dir} is a link only the link is removed. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}{ecore\+\_\+file\+\_\+recursive\+\_\+rm()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga62cef63e255470c97a4d95963a3a07b1}{ecore\+\_\+file\+\_\+rmdir()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga38fa7db112c1fc3c6ca6dcc367f036bb}{ecore\+\_\+file\+\_\+unlink()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__File__Group_ga581f32b7e4858077861da108ea6d3948}{eina\+\_\+file\+\_\+direct\+\_\+ls()}}, \mbox{\hyperlink{group__Eina__Iterator__Group_gac7314580e18868ef229f5d2814562794}{EINA\+\_\+\+ITERATOR\+\_\+\+FOREACH}}, \mbox{\hyperlink{group__Eina__Iterator__Group_ga50da005e8d26c0a043d0d1c025bc9008}{eina\+\_\+iterator\+\_\+free()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}, and \mbox{\hyperlink{struct__Eina__File__Direct__Info_a85b1e39fb487005bf1427a1639fa06a8}{\+\_\+\+Eina\+\_\+\+File\+\_\+\+Direct\+\_\+\+Info\+::path}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}{ecore\+\_\+file\+\_\+recursive\+\_\+rm()}}, \mbox{\hyperlink{group__Efreet__Trash_ga67b6381a01374681566b35ad953e111a}{efreet\+\_\+trash\+\_\+delete\+\_\+uri()}}, \mbox{\hyperlink{group__Efreet__Trash_ga09dd944f4567a90c04dbf6d146eb7a54}{efreet\+\_\+trash\+\_\+empty\+\_\+trash()}}, and \mbox{\hyperlink{group__Elm__Profile_ga616fc7d537fbf1a2f1078cba84cf94ce}{elm\+\_\+config\+\_\+profile\+\_\+derived\+\_\+del()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}\label{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mkpath@{ecore\_file\_mkpath}}
\index{ecore\_file\_mkpath@{ecore\_file\_mkpath}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mkpath()}{ecore\_file\_mkpath()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+mkpath (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path }\end{DoxyParamCaption})}



Creates a complete path. 


\begin{DoxyParams}{Parameters}
{\em path} & The path to create \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function creates {\ttfamily path} and all the subdirectories it contains. The separator is \textquotesingle{}/\textquotesingle{} or \textquotesingle{}\textbackslash{}\textquotesingle{}. If {\ttfamily path} exists, this function returns {\ttfamily EINA\+\_\+\+TRUE} immediately. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}{ecore\+\_\+file\+\_\+is\+\_\+dir()}}, \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__Ecore__File__Group_ga53017b49303ea8742096462fd7398f82}{ecore\+\_\+file\+\_\+mkpaths()}}, \mbox{\hyperlink{group__Ecore__File__Group_gacf70d8b8ad53aa3e23a7351ed5f16b14}{ecore\+\_\+file\+\_\+mksubdirs()}}, \mbox{\hyperlink{group__Efreet__Trash_gac0eb2bf1ec1dc22299fdbde34ef2ba58}{efreet\+\_\+trash\+\_\+dir\+\_\+get()}}, and \mbox{\hyperlink{group__Elm__Config_ga2906ee30d3976ab4917b3287eecdd526}{elm\+\_\+config\+\_\+all\+\_\+flush()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga53017b49303ea8742096462fd7398f82}\label{group__Ecore__File__Group_ga53017b49303ea8742096462fd7398f82}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mkpaths@{ecore\_file\_mkpaths}}
\index{ecore\_file\_mkpaths@{ecore\_file\_mkpaths}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mkpaths()}{ecore\_file\_mkpaths()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+mkpaths (\begin{DoxyParamCaption}\item[{const char $\ast$$\ast$}]{paths }\end{DoxyParamCaption})}



Creates complete paths in a batch. 


\begin{DoxyParams}{Parameters}
{\em paths} & list of paths, null terminated. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The number of successful paths created, {\ttfamily -\/1} if paths is NULL.
\end{DoxyReturn}
This function creates all the directories that are in the null terminated array {\ttfamily paths}. The function loops over the directories and call \mbox{\hyperlink{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}{ecore\+\_\+file\+\_\+mkpath()}}, hence on Windows, \textquotesingle{}\textbackslash{}\textquotesingle{} must be replaced by \textquotesingle{}/\textquotesingle{} before calling that function. This function returns -\/1 if {\ttfamily paths} is {\ttfamily NULL}. Otherwise if returns the number of successfully created directories. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga12cd44f20708fcc4a123dea675a33a93}{ecore\+\_\+file\+\_\+mkpath()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga93de3e691ec32bb8220545f9d807e3e5}\label{group__Ecore__File__Group_ga93de3e691ec32bb8220545f9d807e3e5}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_cp@{ecore\_file\_cp}}
\index{ecore\_file\_cp@{ecore\_file\_cp}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_cp()}{ecore\_file\_cp()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+cp (\begin{DoxyParamCaption}\item[{const char $\ast$}]{src,  }\item[{const char $\ast$}]{dst }\end{DoxyParamCaption})}



Copies the given file to the given destination. 


\begin{DoxyParams}{Parameters}
{\em src} & The name of the source file. \\
\hline
{\em dst} & The name of the destination file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function copies {\ttfamily src} to {\ttfamily dst}. If the absolute path name of {\ttfamily src} and {\ttfamily dst} can not be computed, or if they are equal, or if the copy fails, the function returns {\ttfamily EINA\+\_\+\+FALSE}, otherwise it returns {\ttfamily EINA\+\_\+\+TRUE}. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}, and \mbox{\hyperlink{group__Evil__Stdlib__Group_gac8926887ae0c84e25445bfed43f3c6cb}{realpath()}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}{ecore\+\_\+file\+\_\+mv()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}\label{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_mv@{ecore\_file\_mv}}
\index{ecore\_file\_mv@{ecore\_file\_mv}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_mv()}{ecore\_file\_mv()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+mv (\begin{DoxyParamCaption}\item[{const char $\ast$}]{src,  }\item[{const char $\ast$}]{dst }\end{DoxyParamCaption})}



Moves the given file to the given destination. 


\begin{DoxyParams}{Parameters}
{\em src} & The name of the source file. \\
\hline
{\em dst} & The name of the destination file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function moves {\ttfamily src} to {\ttfamily dst}. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga93de3e691ec32bb8220545f9d807e3e5}{ecore\+\_\+file\+\_\+cp()}}, \mbox{\hyperlink{group__Ecore__File__Group_gac806bae3ba255661ad7cc814f4b12857}{ecore\+\_\+file\+\_\+dir\+\_\+get()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga5f5fe7219c6288fecaa840f81c035cb7}{ecore\+\_\+file\+\_\+file\+\_\+get()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga38fa7db112c1fc3c6ca6dcc367f036bb}{ecore\+\_\+file\+\_\+unlink()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__File__Group_gac77efa39c12ba6880a5bbdca004080fb}{eina\+\_\+file\+\_\+mkstemp()}}, \mbox{\hyperlink{group__Eina__Stringshare__Group_ga0c32cf7aadbc1fcd60500d5bb9c03c93}{eina\+\_\+tmpstr\+\_\+del()}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gabac9e816fc64684cb2e9d8c7c4443818}\label{group__Ecore__File__Group_gabac9e816fc64684cb2e9d8c7c4443818}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_symlink@{ecore\_file\_symlink}}
\index{ecore\_file\_symlink@{ecore\_file\_symlink}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_symlink()}{ecore\_file\_symlink()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+symlink (\begin{DoxyParamCaption}\item[{const char $\ast$}]{src,  }\item[{const char $\ast$}]{dest }\end{DoxyParamCaption})}



Creates a symbolic link. 


\begin{DoxyParams}{Parameters}
{\em src} & The name of the file to link. \\
\hline
{\em dest} & The name of link. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function creates the symbolic link {\ttfamily dest} of {\ttfamily src}. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.

\begin{DoxyNote}{Note}
On windows, this function always returns {\ttfamily EINA\+\_\+\+FALSE}. 
\end{DoxyNote}


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

\mbox{\Hypertarget{group__Ecore__File__Group_ga062018ae501d68814d586483391b9daa}\label{group__Ecore__File__Group_ga062018ae501d68814d586483391b9daa}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_realpath@{ecore\_file\_realpath}}
\index{ecore\_file\_realpath@{ecore\_file\_realpath}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_realpath()}{ecore\_file\_realpath()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+realpath (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Gets the canonicalized absolute path name. 


\begin{DoxyParams}{Parameters}
{\em file} & The file path. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The canonicalized absolute pathname or an empty string on failure.
\end{DoxyReturn}
This function returns the absolute path name of {\ttfamily file} as a newly allocated string. If {\ttfamily file} is {\ttfamily NULL}, or on error, this function returns an empty string. Otherwise, it returns the absolute path name. When not needed anymore, the returned value must be freed. 

References \mbox{\hyperlink{group__Evil__Stdlib__Group_gac8926887ae0c84e25445bfed43f3c6cb}{realpath()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga38fa7db112c1fc3c6ca6dcc367f036bb}\label{group__Ecore__File__Group_ga38fa7db112c1fc3c6ca6dcc367f036bb}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_unlink@{ecore\_file\_unlink}}
\index{ecore\_file\_unlink@{ecore\_file\_unlink}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_unlink()}{ecore\_file\_unlink()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+unlink (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Deletes the given file. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file to delete. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function deletes {\ttfamily file}. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}{ecore\+\_\+file\+\_\+mv()}}, and \mbox{\hyperlink{group__Ecore__File__Group_ga6e2d09d544f8e2b53c9518d521e1efd0}{ecore\+\_\+file\+\_\+recursive\+\_\+rm()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga67811f9072dc5bbc10a63c056b0df9d4}\label{group__Ecore__File__Group_ga67811f9072dc5bbc10a63c056b0df9d4}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_remove@{ecore\_file\_remove}}
\index{ecore\_file\_remove@{ecore\_file\_remove}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_remove()}{ecore\_file\_remove()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+remove (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Removes the given file or directory. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file or directory to delete. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function removes {\ttfamily file}. It returns {\ttfamily EINA\+\_\+\+TRUE} on success, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga5f5fe7219c6288fecaa840f81c035cb7}\label{group__Ecore__File__Group_ga5f5fe7219c6288fecaa840f81c035cb7}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_file\_get@{ecore\_file\_file\_get}}
\index{ecore\_file\_file\_get@{ecore\_file\_file\_get}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_file\_get()}{ecore\_file\_file\_get()}}
{\footnotesize\ttfamily EAPI const char $\ast$ ecore\+\_\+file\+\_\+file\+\_\+get (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path }\end{DoxyParamCaption})}



Gets the filename from a given path. 


\begin{DoxyParams}{Parameters}
{\em path} & The complete path. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The file name.
\end{DoxyReturn}
This function returns the file name of {\ttfamily path}. If {\ttfamily path} is {\ttfamily NULL}, the functions returns {\ttfamily NULL}. 

Referenced by \mbox{\hyperlink{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}{ecore\+\_\+file\+\_\+mv()}}, \mbox{\hyperlink{Edje__Edit_8h_a765c1835f8f79bcb0ff7ba48dba3d2f5}{edje\+\_\+edit\+\_\+font\+\_\+add()}}, \mbox{\hyperlink{Edje__Edit_8h_a6fa0d0e8353709bd945f9d0fdc3f6c9a}{edje\+\_\+edit\+\_\+image\+\_\+add()}}, \mbox{\hyperlink{Edje__Edit_8h_ab70bdd5de54f13cec73d8b08d4bbe9be}{edje\+\_\+edit\+\_\+sound\+\_\+sample\+\_\+add()}}, \mbox{\hyperlink{group__Efreet__Trash_ga67b6381a01374681566b35ad953e111a}{efreet\+\_\+trash\+\_\+delete\+\_\+uri()}}, \mbox{\hyperlink{group__Efreet__Utils_ga25e7b9573c9265b8865f394b9427dae2}{efreet\+\_\+util\+\_\+desktop\+\_\+exec\+\_\+find()}}, \mbox{\hyperlink{group__File_gacc82488f9c2dd72b9e6e826170df09ac}{elm\+\_\+code\+\_\+file\+\_\+filename\+\_\+get()}}, \mbox{\hyperlink{group__Elm__General_ga88f19204bf05c03f7dbdf632776e0773}{elm\+\_\+quicklaunch\+\_\+fork()}}, and \mbox{\hyperlink{group__Elm__General_gab31fb3af2f25295fea1eb05f69724eb5}{elm\+\_\+quicklaunch\+\_\+init()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gac806bae3ba255661ad7cc814f4b12857}\label{group__Ecore__File__Group_gac806bae3ba255661ad7cc814f4b12857}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_dir\_get@{ecore\_file\_dir\_get}}
\index{ecore\_file\_dir\_get@{ecore\_file\_dir\_get}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_dir\_get()}{ecore\_file\_dir\_get()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+dir\+\_\+get (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Gets the directory where the given file resides. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The directory name.
\end{DoxyReturn}
This function returns the directory where {\ttfamily file} resides as newly allocated string. If {\ttfamily file} is {\ttfamily NULL} or on error, this function returns {\ttfamily NULL}. When not needed anymore, the returned value must be freed. 

Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}{ecore\+\_\+file\+\_\+download\+\_\+full()}}, and \mbox{\hyperlink{group__Ecore__File__Group_gadcb442b00a20cb19e2cd84fa9910b9d6}{ecore\+\_\+file\+\_\+mv()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga3b844d86804b9566aac515becda9dbf2}\label{group__Ecore__File__Group_ga3b844d86804b9566aac515becda9dbf2}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_can\_read@{ecore\_file\_can\_read}}
\index{ecore\_file\_can\_read@{ecore\_file\_can\_read}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_can\_read()}{ecore\_file\_can\_read()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+can\+\_\+read (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Checks if the given file can be read. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the {\ttfamily file} is readable, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily file} can be read, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gaa32b8720b401b8677cec4b12da261a6d}\label{group__Ecore__File__Group_gaa32b8720b401b8677cec4b12da261a6d}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_can\_write@{ecore\_file\_can\_write}}
\index{ecore\_file\_can\_write@{ecore\_file\_can\_write}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_can\_write()}{ecore\_file\_can\_write()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+can\+\_\+write (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Checks if the given file can be written. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the {\ttfamily file} is writable, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily file} can be written, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Efreet__Trash_ga67b6381a01374681566b35ad953e111a}{efreet\+\_\+trash\+\_\+delete\+\_\+uri()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga92b7bb460e4d4e92a12c0c144fb69feb}\label{group__Ecore__File__Group_ga92b7bb460e4d4e92a12c0c144fb69feb}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_can\_exec@{ecore\_file\_can\_exec}}
\index{ecore\_file\_can\_exec@{ecore\_file\_can\_exec}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_can\_exec()}{ecore\_file\_can\_exec()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+can\+\_\+exec (\begin{DoxyParamCaption}\item[{const char $\ast$}]{file }\end{DoxyParamCaption})}



Checks if the given file can be executed. 


\begin{DoxyParams}{Parameters}
{\em file} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the {\ttfamily file} can be executed, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily file} can be executed, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__String__Group_ga8e811ae036188cc6c5549e5fe09ca1bc}{eina\+\_\+str\+\_\+has\+\_\+extension()}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_gae8f7710e0778a9d733f5167b098a70ac}{ecore\+\_\+file\+\_\+app\+\_\+installed()}}, and \mbox{\hyperlink{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}{ecore\+\_\+file\+\_\+app\+\_\+list()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gab83ab3170765f93a057499121b33d97b}\label{group__Ecore__File__Group_gab83ab3170765f93a057499121b33d97b}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_readlink@{ecore\_file\_readlink}}
\index{ecore\_file\_readlink@{ecore\_file\_readlink}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_readlink()}{ecore\_file\_readlink()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+readlink (\begin{DoxyParamCaption}\item[{const char $\ast$}]{link }\end{DoxyParamCaption})}



Gets the path pointed by the given link. 


\begin{DoxyParams}{Parameters}
{\em link} & The name of the link. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The path pointed by link or NULL.
\end{DoxyReturn}
This function returns the path pointed by {\ttfamily link} as a newly allocated string. On failure, the function returns {\ttfamily NULL}. When not needed anymore, the returned value must be freed.

\begin{DoxyNote}{Note}
On windows, this function always returns {\ttfamily NULL}. 
\end{DoxyNote}


Referenced by \mbox{\hyperlink{group__Efreet__Desktop_ga971dd7e8f48e40d92434ae4c99dd36a0}{efreet\+\_\+desktop\+\_\+get()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gab7baa24c2abea205b4d1f92397f1bda0}\label{group__Ecore__File__Group_gab7baa24c2abea205b4d1f92397f1bda0}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_ls@{ecore\_file\_ls}}
\index{ecore\_file\_ls@{ecore\_file\_ls}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_ls()}{ecore\_file\_ls()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ ecore\+\_\+file\+\_\+ls (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dir }\end{DoxyParamCaption})}



Gets the list of the files and directories in the given directory. 


\begin{DoxyParams}{Parameters}
{\em dir} & The name of the directory to list \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
Return an Eina\+\_\+\+List containing all the files in the directory; on failure it returns NULL.
\end{DoxyReturn}
This function returns a list of allocated strings of all the files and directories contained in {\ttfamily dir}. The list will be sorted with strcoll as compare function. That means that you may want to set the current locale for the category LC\+\_\+\+COLLATE with setlocale(). For more information see the manual pages of strcoll and setlocale. The list will not contain the directory entries for \textquotesingle{}.\textquotesingle{} and \textquotesingle{}..\textquotesingle{}. On failure, {\ttfamily NULL} is returned. When not needed anymore, the list elements must be freed. 

References \mbox{\hyperlink{group__Eina__Types__Group_gac9036655ab41aa7eb047e03acfe2b2ab}{EINA\+\_\+\+COMPARE\+\_\+\+CB}}, \mbox{\hyperlink{group__Eina__File__Group_ga581f32b7e4858077861da108ea6d3948}{eina\+\_\+file\+\_\+direct\+\_\+ls()}}, \mbox{\hyperlink{group__Eina__Iterator__Group_gac7314580e18868ef229f5d2814562794}{EINA\+\_\+\+ITERATOR\+\_\+\+FOREACH}}, \mbox{\hyperlink{group__Eina__Iterator__Group_ga50da005e8d26c0a043d0d1c025bc9008}{eina\+\_\+iterator\+\_\+free()}}, \mbox{\hyperlink{group__Eina__List__Group_ga625698a383dda8fc0db245a1c7608c49}{eina\+\_\+list\+\_\+append()}}, \mbox{\hyperlink{group__Eina__List__Group_ga568115ea8231ca6baed243032570e15c}{eina\+\_\+list\+\_\+sort()}}, \mbox{\hyperlink{struct__Eina__File__Direct__Info_a824ea1719b5c9ced439dcf98412786d3}{\+\_\+\+Eina\+\_\+\+File\+\_\+\+Direct\+\_\+\+Info\+::name\+\_\+start}}, and \mbox{\hyperlink{struct__Eina__File__Direct__Info_a85b1e39fb487005bf1427a1639fa06a8}{\+\_\+\+Eina\+\_\+\+File\+\_\+\+Direct\+\_\+\+Info\+::path}}.



Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}{ecore\+\_\+file\+\_\+app\+\_\+list()}}, \mbox{\hyperlink{group__Efreet__Trash_ga4266d5821a64e4c07cd41a3c09e7c03c}{efreet\+\_\+trash\+\_\+ls()}}, and \mbox{\hyperlink{group__Elm__Theme_ga02474d8fd11ce6d00b9790c971509f5b}{elm\+\_\+theme\+\_\+name\+\_\+available\+\_\+list\+\_\+new()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gab01d35474ff7390e41e19609712f6923}\label{group__Ecore__File__Group_gab01d35474ff7390e41e19609712f6923}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_app\_exe\_get@{ecore\_file\_app\_exe\_get}}
\index{ecore\_file\_app\_exe\_get@{ecore\_file\_app\_exe\_get}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_app\_exe\_get()}{ecore\_file\_app\_exe\_get()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+app\+\_\+exe\+\_\+get (\begin{DoxyParamCaption}\item[{const char $\ast$}]{app }\end{DoxyParamCaption})}



Returns the executable from the given command. 


\begin{DoxyParams}{Parameters}
{\em app} & The application command, with parameters. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The executable from {\ttfamily app} as a newly allocated string. Arguments are removed and escape characters are handled. If {\ttfamily app} is {\ttfamily NULL}, or on failure, the function returns {\ttfamily NULL}. When not needed anymore, the returned value must be freed. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Eina__Tools__Group_ga358b0d604ad29672a7ae31a4ce975a40}{eina\+\_\+environment\+\_\+home\+\_\+get()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_gad476e89a04c3f1571e3628facd4319bb}{eina\+\_\+strbuf\+\_\+append()}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga5683cd7f0a499065d99cc0de4d393265}{eina\+\_\+strbuf\+\_\+append\+\_\+char()}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga88d8da6589bad44714ad9e47aaa1992b}{eina\+\_\+strbuf\+\_\+free()}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga13277ebcc07defa040d6e92f22774031}{eina\+\_\+strbuf\+\_\+new()}}, \mbox{\hyperlink{group__Eina__String__Buffer__Group_ga7b0e6d5602d5711a208a585134b3387f}{eina\+\_\+strbuf\+\_\+string\+\_\+steal()}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.



Referenced by \mbox{\hyperlink{group__Efreet__Utils_ga25e7b9573c9265b8865f394b9427dae2}{efreet\+\_\+util\+\_\+desktop\+\_\+exec\+\_\+find()}}, and \mbox{\hyperlink{group__Efreet__Utils_gaa046fa3938f7dbfb515757a63168f0c8}{efreet\+\_\+util\+\_\+desktop\+\_\+exec\+\_\+glob\+\_\+list()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga0d33ee025d316f91c179bd6cd5f9a9d7}\label{group__Ecore__File__Group_ga0d33ee025d316f91c179bd6cd5f9a9d7}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_escape\_name@{ecore\_file\_escape\_name}}
\index{ecore\_file\_escape\_name@{ecore\_file\_escape\_name}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_escape\_name()}{ecore\_file\_escape\_name()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+escape\+\_\+name (\begin{DoxyParamCaption}\item[{const char $\ast$}]{filename }\end{DoxyParamCaption})}



Adds the escape sequence (\textquotesingle{}\textbackslash{}\textquotesingle{}) to the given file name. 


\begin{DoxyParams}{Parameters}
{\em filename} & The file name. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The file name with special characters escaped.
\end{DoxyReturn}
This function adds the escape sequence (\textquotesingle{}\textbackslash{}\textquotesingle{}) to the given file name and returns the result as a newly allocated string. If the length of the returned string is longer than PATH\+\_\+\+MAX, or on failure, {\ttfamily NULL} is returned. When not needed anymore, the returned value must be freed. 

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

\mbox{\Hypertarget{group__Ecore__File__Group_ga04e08638c8ba981a6419e64c19b4688b}\label{group__Ecore__File__Group_ga04e08638c8ba981a6419e64c19b4688b}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_strip\_ext@{ecore\_file\_strip\_ext}}
\index{ecore\_file\_strip\_ext@{ecore\_file\_strip\_ext}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_strip\_ext()}{ecore\_file\_strip\_ext()}}
{\footnotesize\ttfamily EAPI char $\ast$ ecore\+\_\+file\+\_\+strip\+\_\+ext (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path }\end{DoxyParamCaption})}



Removes the extension from the given file name. 


\begin{DoxyParams}{Parameters}
{\em path} & The name of the file. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
A newly allocated string with the extension stripped out, or {\ttfamily NULL} on errors.
\end{DoxyReturn}
This function removes the extension from {\ttfamily path} and returns the result as a newly allocated string. If {\ttfamily path} is {\ttfamily NULL}, or on failure, the function returns {\ttfamily NULL}. When not needed anymore, the returned value must be freed. \mbox{\Hypertarget{group__Ecore__File__Group_ga5f6777eb4beea434372df0aa7357979b}\label{group__Ecore__File__Group_ga5f6777eb4beea434372df0aa7357979b}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_dir\_is\_empty@{ecore\_file\_dir\_is\_empty}}
\index{ecore\_file\_dir\_is\_empty@{ecore\_file\_dir\_is\_empty}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_dir\_is\_empty()}{ecore\_file\_dir\_is\_empty()}}
{\footnotesize\ttfamily EAPI int ecore\+\_\+file\+\_\+dir\+\_\+is\+\_\+empty (\begin{DoxyParamCaption}\item[{const char $\ast$}]{dir }\end{DoxyParamCaption})}



Checks if the given directory is empty. 


\begin{DoxyParams}{Parameters}
{\em dir} & The name of the directory to check. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily 1} if directory is empty, {\ttfamily 0} if it has at least one file, or {\ttfamily -\/1} in case of errors.
\end{DoxyReturn}
This functions checks if {\ttfamily dir} is empty. The \textquotesingle{}.\textquotesingle{} and \textquotesingle{}..\textquotesingle{} files will be ignored. If {\ttfamily dir} is empty, 1 is returned, if it contains at least one file, {\ttfamily 0} is returned. On failure, {\ttfamily -\/1} is returned. 

References \mbox{\hyperlink{group__Eina__File__Group_ga581f32b7e4858077861da108ea6d3948}{eina\+\_\+file\+\_\+direct\+\_\+ls()}}, \mbox{\hyperlink{group__Eina__Iterator__Group_gac7314580e18868ef229f5d2814562794}{EINA\+\_\+\+ITERATOR\+\_\+\+FOREACH}}, and \mbox{\hyperlink{group__Eina__Iterator__Group_ga50da005e8d26c0a043d0d1c025bc9008}{eina\+\_\+iterator\+\_\+free()}}.



Referenced by \mbox{\hyperlink{group__Efreet__Trash_ga0facfddaf103a1bf7e515b4677bd4fa0}{efreet\+\_\+trash\+\_\+is\+\_\+empty()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}\label{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_monitor\_add@{ecore\_file\_monitor\_add}}
\index{ecore\_file\_monitor\_add@{ecore\_file\_monitor\_add}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_monitor\_add()}{ecore\_file\_monitor\_add()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$ ecore\+\_\+file\+\_\+monitor\+\_\+add (\begin{DoxyParamCaption}\item[{const char $\ast$}]{path,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga65d84a5d2abfc494f103ef3fe0de6e34}{Ecore\+\_\+\+File\+\_\+\+Monitor\+\_\+\+Cb}}}]{func,  }\item[{void $\ast$}]{data }\end{DoxyParamCaption})}



Monitors the given path using inotify, Windows notification, or polling. 


\begin{DoxyParams}{Parameters}
{\em path} & The path to monitor. \\
\hline
{\em func} & The function to call on changes. \\
\hline
{\em data} & The data passed to func. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
An Ecore\+\_\+\+File\+\_\+\+Monitor pointer or NULL on failure.
\end{DoxyReturn}
This function monitors {\ttfamily path}. If {\ttfamily path} is {\ttfamily NULL}, or is an empty string, or none of the notify methods (Inotify, Windows notification or polling) is available, or if {\ttfamily path} does not exist the function returns {\ttfamily NULL}. Otherwise, it returns a newly allocated Ecore\+\_\+\+File\+\_\+\+Monitor object and the monitoring begins. When one of the Ecore\+\_\+\+File\+\_\+\+Event event is notified, {\ttfamily func} is called and {\ttfamily data} is passed to {\ttfamily func.\+Call} \mbox{\hyperlink{group__Ecore__File__Group_ga6f24ef6d605732ea1b10626efb3f07da}{ecore\+\_\+file\+\_\+monitor\+\_\+del()}} to stop the monitoring. 

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



Referenced by \mbox{\hyperlink{group__Eeze__Disk_ga92f1e4a2c653e8c581df72e4cd46d8b3}{eeze\+\_\+mount\+\_\+tabs\+\_\+watch()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga6f24ef6d605732ea1b10626efb3f07da}\label{group__Ecore__File__Group_ga6f24ef6d605732ea1b10626efb3f07da}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_monitor\_del@{ecore\_file\_monitor\_del}}
\index{ecore\_file\_monitor\_del@{ecore\_file\_monitor\_del}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_monitor\_del()}{ecore\_file\_monitor\_del()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+file\+\_\+monitor\+\_\+del (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$}]{em }\end{DoxyParamCaption})}



Stops the monitoring of the given path. 


\begin{DoxyParams}{Parameters}
{\em em} & The Ecore\+\_\+\+File\+\_\+\+Monitor to stop.\\
\hline
\end{DoxyParams}
This function stops the the monitoring of the path that has been monitored by \mbox{\hyperlink{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}{ecore\+\_\+file\+\_\+monitor\+\_\+add()}}. {\ttfamily em} must be the value returned by \mbox{\hyperlink{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}{ecore\+\_\+file\+\_\+monitor\+\_\+add()}}. If {\ttfamily em} is {\ttfamily NULL}, or none of the notify methods (Inotify, Windows notification or polling) is available this function does nothing. 

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



Referenced by \mbox{\hyperlink{group__Eeze__Disk_ga915b0c6e0c38d3e0b9e5bc9c0625b553}{eeze\+\_\+mount\+\_\+tabs\+\_\+unwatch()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gab319600016609acf553e7bdc76d760ac}\label{group__Ecore__File__Group_gab319600016609acf553e7bdc76d760ac}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_monitor\_path\_get@{ecore\_file\_monitor\_path\_get}}
\index{ecore\_file\_monitor\_path\_get@{ecore\_file\_monitor\_path\_get}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_monitor\_path\_get()}{ecore\_file\_monitor\_path\_get()}}
{\footnotesize\ttfamily EAPI const char $\ast$ ecore\+\_\+file\+\_\+monitor\+\_\+path\+\_\+get (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga4fdec59d561b66134827381ec5105cf2}{Ecore\+\_\+\+File\+\_\+\+Monitor}} $\ast$}]{em }\end{DoxyParamCaption})}



Gets the monitored path. 


\begin{DoxyParams}{Parameters}
{\em em} & The Ecore\+\_\+\+File\+\_\+\+Monitor to query. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
The path that is monitored by {\ttfamily em}.
\end{DoxyReturn}
This function returns the monitored path that has been monitored by \mbox{\hyperlink{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}{ecore\+\_\+file\+\_\+monitor\+\_\+add()}}. {\ttfamily em} must be the value returned by \mbox{\hyperlink{group__Ecore__File__Group_gaa0f896f1283c5c81a5dca32862ab0583}{ecore\+\_\+file\+\_\+monitor\+\_\+add()}}. If {\ttfamily em} is {\ttfamily NULL}, the function returns {\ttfamily NULL}. 

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

\mbox{\Hypertarget{group__Ecore__File__Group_ga406c86a604de7be69b01fc8664856319}\label{group__Ecore__File__Group_ga406c86a604de7be69b01fc8664856319}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_path\_dir\_exists@{ecore\_file\_path\_dir\_exists}}
\index{ecore\_file\_path\_dir\_exists@{ecore\_file\_path\_dir\_exists}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_path\_dir\_exists()}{ecore\_file\_path\_dir\_exists()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+path\+\_\+dir\+\_\+exists (\begin{DoxyParamCaption}\item[{const char $\ast$}]{in\+\_\+dir }\end{DoxyParamCaption})}



Checks if the given directory is in PATH. 


\begin{DoxyParams}{Parameters}
{\em in\+\_\+dir} & The name of the directory to search in PATH. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the directory exist in PATH, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function checks if {\ttfamily in\+\_\+dir} is in the environment variable PATH. If {\ttfamily in\+\_\+dir} is {\ttfamily NULL}, or if PATH is empty, or {\ttfamily in\+\_\+dir} is not in PATH, the function returns {\ttfamily EINA\+\_\+\+FALSE}, otherwise it returns {\ttfamily EINA\+\_\+\+TRUE}. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__List__Group_gac6efafc19f526d916cdb9757240a8773}{EINA\+\_\+\+LIST\+\_\+\+FOREACH}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gae8f7710e0778a9d733f5167b098a70ac}\label{group__Ecore__File__Group_gae8f7710e0778a9d733f5167b098a70ac}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_app\_installed@{ecore\_file\_app\_installed}}
\index{ecore\_file\_app\_installed@{ecore\_file\_app\_installed}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_app\_installed()}{ecore\_file\_app\_installed()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+app\+\_\+installed (\begin{DoxyParamCaption}\item[{const char $\ast$}]{exe }\end{DoxyParamCaption})}



Checks if the given application is installed. 


\begin{DoxyParams}{Parameters}
{\em exe} & The name of the application \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the {\ttfamily exe} is in PATH and is executable, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function checks if {\ttfamily exe} exists in PATH and is executable. If {\ttfamily exe} is {\ttfamily NULL} or is not executable, the function returns {\ttfamily EINA\+\_\+\+FALSE}, otherwise it returns {\ttfamily EINA\+\_\+\+TRUE}. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga92b7bb460e4d4e92a12c0c144fb69feb}{ecore\+\_\+file\+\_\+can\+\_\+exec()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__List__Group_gac6efafc19f526d916cdb9757240a8773}{EINA\+\_\+\+LIST\+\_\+\+FOREACH}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}\label{group__Ecore__File__Group_ga2db5a6fe2780d5fa14109661ee4bac60}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_app\_list@{ecore\_file\_app\_list}}
\index{ecore\_file\_app\_list@{ecore\_file\_app\_list}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_app\_list()}{ecore\_file\_app\_list()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__List__Group_ga3295e1210efea1fb0fd6acbf3cbc1f29}{Eina\+\_\+\+List}} $\ast$ ecore\+\_\+file\+\_\+app\+\_\+list (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Gets a list of all the applications installed on the system. 

\begin{DoxyReturn}{Returns}
An Eina\+\_\+\+List containing all the executable files in the system.
\end{DoxyReturn}
This function returns a list of allocated strings of all the executable files. If no files are found, the function returns {\ttfamily NULL}. When not needed anymore, the element of the list must be freed. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga92b7bb460e4d4e92a12c0c144fb69feb}{ecore\+\_\+file\+\_\+can\+\_\+exec()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}{ecore\+\_\+file\+\_\+is\+\_\+dir()}}, \mbox{\hyperlink{group__Ecore__File__Group_gab7baa24c2abea205b4d1f92397f1bda0}{ecore\+\_\+file\+\_\+ls()}}, \mbox{\hyperlink{group__Eina__List__Group_ga625698a383dda8fc0db245a1c7608c49}{eina\+\_\+list\+\_\+append()}}, \mbox{\hyperlink{group__Eina__List__Group_gac6efafc19f526d916cdb9757240a8773}{EINA\+\_\+\+LIST\+\_\+\+FOREACH}}, and \mbox{\hyperlink{group__Eina__List__Group_gae27a2c686a0a11693f9b06957c9bba83}{EINA\+\_\+\+LIST\+\_\+\+FREE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}\label{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_download@{ecore\_file\_download}}
\index{ecore\_file\_download@{ecore\_file\_download}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_download()}{ecore\_file\_download()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+download (\begin{DoxyParamCaption}\item[{const char $\ast$}]{url,  }\item[{const char $\ast$}]{dst,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Completion\+\_\+\+Cb}}}]{completion\+\_\+cb,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb}}}]{progress\+\_\+cb,  }\item[{void $\ast$}]{data,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$$\ast$}]{job\+\_\+ret }\end{DoxyParamCaption})}



Downloads the given url to the given destination. 


\begin{DoxyParams}{Parameters}
{\em url} & The complete url to download. \\
\hline
{\em dst} & The local file to save the downloaded to. \\
\hline
{\em completion\+\_\+cb} & A callback called on download complete. \\
\hline
{\em progress\+\_\+cb} & A callback called during the download operation. \\
\hline
{\em data} & User data passed to both callbacks. \\
\hline
{\em job\+\_\+ret} & Job used to abort the download. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the download start or {\ttfamily EINA\+\_\+\+FALSE} on failure.
\end{DoxyReturn}
This function starts the download of the URL {\ttfamily url} and saves it to {\ttfamily dst}. {\ttfamily url} must provide the protocol, including \textquotesingle{}http\+://\textquotesingle{}, \textquotesingle{}ftp\+://\textquotesingle{} or \textquotesingle{}file\+://\textquotesingle{}. Ecore\+\_\+\+File must be compiled with CURL to download using http and ftp protocols. If {\ttfamily dst} is ill-\/formed, or if it already exists, the function returns {\ttfamily EINA\+\_\+\+FALSE}. When the download is complete, the callback {\ttfamily completion\+\_\+cb} is called and {\ttfamily data} is passed to it. The {\ttfamily status} parameter of {\ttfamily completion\+\_\+cb} will be filled with the status of the download (200, 404,...). The {\ttfamily progress\+\_\+cb} is called during the download operation, each time a packet is received or when CURL wants. It can be used to display the percentage of the downloaded file. Return 0 from this callback, if provided, to continue the operation or anything else to abort the download. The only operations that can be aborted are those with protocol \textquotesingle{}http\textquotesingle{} or \textquotesingle{}ftp\textquotesingle{}. In that case {\ttfamily job\+\_\+ret} can be passed to \mbox{\hyperlink{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}{ecore\+\_\+file\+\_\+download\+\_\+abort()}} to abort that download job. Similarly \mbox{\hyperlink{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}{ecore\+\_\+file\+\_\+download\+\_\+abort\+\_\+all()}} can be used to abort all download operations. This function returns {\ttfamily EINA\+\_\+\+TRUE} if the download starts, {\ttfamily EINA\+\_\+\+FALSE} otherwise. 

References \mbox{\hyperlink{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}{ecore\+\_\+file\+\_\+download\+\_\+full()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}\label{group__Ecore__File__Group_ga2b26cf72e4c7370122359b45f866f73f}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_download\_full@{ecore\_file\_download\_full}}
\index{ecore\_file\_download\_full@{ecore\_file\_download\_full}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_download\_full()}{ecore\_file\_download\_full()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+download\+\_\+full (\begin{DoxyParamCaption}\item[{const char $\ast$}]{url,  }\item[{const char $\ast$}]{dst,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga71ca51b9726d274b1b750b021fdb8730}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Completion\+\_\+\+Cb}}}]{completion\+\_\+cb,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_ga829dc96dbd2cb2bda6d2e8308b3fa24b}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Progress\+\_\+\+Cb}}}]{progress\+\_\+cb,  }\item[{void $\ast$}]{data,  }\item[{\mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$$\ast$}]{job\+\_\+ret,  }\item[{\mbox{\hyperlink{group__Eina__Hash__Group_ga9a89d7d3ee260d3a60572ebf651b07e0}{Eina\+\_\+\+Hash}} $\ast$}]{headers }\end{DoxyParamCaption})}



Downloads the given url to the given destination with additional headers. 


\begin{DoxyParams}{Parameters}
{\em url} & The complete url to download. \\
\hline
{\em dst} & The local file to save the downloaded to. \\
\hline
{\em completion\+\_\+cb} & A callback called on download complete. \\
\hline
{\em progress\+\_\+cb} & A callback called during the download operation. \\
\hline
{\em data} & User data passed to both callbacks. \\
\hline
{\em job\+\_\+ret} & Job used to abort the download. \\
\hline
{\em headers} & pointer of header lists. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if the download start or {\ttfamily EINA\+\_\+\+FALSE} on failure. 
\end{DoxyReturn}


References \mbox{\hyperlink{group__Ecore__File__Group_gac806bae3ba255661ad7cc814f4b12857}{ecore\+\_\+file\+\_\+dir\+\_\+get()}}, \mbox{\hyperlink{group__Ecore__File__Group_gaf5a3cc8bd9bf69a3ebce0678fe799016}{ecore\+\_\+file\+\_\+exists()}}, \mbox{\hyperlink{group__Ecore__File__Group_ga2b8800b3ecf0c96fb2e47737827ed70f}{ecore\+\_\+file\+\_\+is\+\_\+dir()}}, \mbox{\hyperlink{group__Eina__Error__Group_gac420af42486bcbb879c4be67eacc6c2a}{eina\+\_\+error\+\_\+msg\+\_\+get()}}, \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, \mbox{\hyperlink{group__Eina__Hash__Group_ga9237dbade8e59ac827992c7a5146cb20}{eina\+\_\+hash\+\_\+foreach()}}, \mbox{\hyperlink{group__Eina__List__Group_ga625698a383dda8fc0db245a1c7608c49}{eina\+\_\+list\+\_\+append()}}, \mbox{\hyperlink{group__Eina__Safety__Checks__Group_ga4e028a0c5bd5743068c1c3f2302dc0e8}{EINA\+\_\+\+SAFETY\+\_\+\+ON\+\_\+\+NULL\+\_\+\+GOTO}}, \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__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}{ecore\+\_\+file\+\_\+download()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}\label{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_download\_abort\_all@{ecore\_file\_download\_abort\_all}}
\index{ecore\_file\_download\_abort\_all@{ecore\_file\_download\_abort\_all}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_download\_abort\_all()}{ecore\_file\_download\_abort\_all()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+file\+\_\+download\+\_\+abort\+\_\+all (\begin{DoxyParamCaption}\item[{void}]{ }\end{DoxyParamCaption})}



Aborts all downloads. 

This function aborts all the downloads that have been started by \mbox{\hyperlink{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}{ecore\+\_\+file\+\_\+download()}}. It loops over the started downloads and call \mbox{\hyperlink{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}{ecore\+\_\+file\+\_\+download\+\_\+abort()}} for each of them. To abort only one specific download operation, call \mbox{\hyperlink{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}{ecore\+\_\+file\+\_\+download\+\_\+abort()}}. 

References \mbox{\hyperlink{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}{ecore\+\_\+file\+\_\+download\+\_\+abort()}}, and \mbox{\hyperlink{group__Eina__List__Group_gae27a2c686a0a11693f9b06957c9bba83}{EINA\+\_\+\+LIST\+\_\+\+FREE}}.

\mbox{\Hypertarget{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}\label{group__Ecore__File__Group_gae8d4cbe995691439dfb47665b4d797b3}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_download\_abort@{ecore\_file\_download\_abort}}
\index{ecore\_file\_download\_abort@{ecore\_file\_download\_abort}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_download\_abort()}{ecore\_file\_download\_abort()}}
{\footnotesize\ttfamily EAPI void ecore\+\_\+file\+\_\+download\+\_\+abort (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} $\ast$}]{job }\end{DoxyParamCaption})}



Aborts the given download job and call the completion\+\_\+cb callback with a status of 1 (error). 


\begin{DoxyParams}{Parameters}
{\em job} & The download job to abort.\\
\hline
\end{DoxyParams}
This function aborts a download operation started by \mbox{\hyperlink{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}{ecore\+\_\+file\+\_\+download()}}. {\ttfamily job} is the \mbox{\hyperlink{group__Ecore__File__Group_gac13ffcf33aa05a26d8cd36b22918a8b9}{Ecore\+\_\+\+File\+\_\+\+Download\+\_\+\+Job}} structure filled by \mbox{\hyperlink{group__Ecore__File__Group_ga5a003f9fc7c8e6f87b5c3e0eda6feb4e}{ecore\+\_\+file\+\_\+download()}}. If it is {\ttfamily NULL}, this function does nothing. To abort all the currently downloading operations, call \mbox{\hyperlink{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}{ecore\+\_\+file\+\_\+download\+\_\+abort\+\_\+all()}}. 

Referenced by \mbox{\hyperlink{group__Ecore__File__Group_ga7e9ec462c6a5e16c1dcfe13f0717e22a}{ecore\+\_\+file\+\_\+download\+\_\+abort\+\_\+all()}}.

\mbox{\Hypertarget{group__Ecore__File__Group_ga26ab8acf71ae203006845c5d7b9bbbe1}\label{group__Ecore__File__Group_ga26ab8acf71ae203006845c5d7b9bbbe1}} 
\index{Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}!ecore\_file\_download\_protocol\_available@{ecore\_file\_download\_protocol\_available}}
\index{ecore\_file\_download\_protocol\_available@{ecore\_file\_download\_protocol\_available}!Ecore\_File -\/ Files and directories convenience functions@{Ecore\_File -\/ Files and directories convenience functions}}
\doxysubsubsection{\texorpdfstring{ecore\_file\_download\_protocol\_available()}{ecore\_file\_download\_protocol\_available()}}
{\footnotesize\ttfamily EAPI \mbox{\hyperlink{group__Eina__Types__Group_ga3fe0caf72e93b1bab1ca8ee3ccf3f226}{Eina\+\_\+\+Bool}} ecore\+\_\+file\+\_\+download\+\_\+protocol\+\_\+available (\begin{DoxyParamCaption}\item[{const char $\ast$}]{protocol }\end{DoxyParamCaption})}



Checks if the given protocol is available. 


\begin{DoxyParams}{Parameters}
{\em protocol} & The protocol to check. \\
\hline
\end{DoxyParams}
\begin{DoxyReturn}{Returns}
{\ttfamily EINA\+\_\+\+TRUE} if protocol is handled, {\ttfamily EINA\+\_\+\+FALSE} otherwise.
\end{DoxyReturn}
This function returns {\ttfamily EINA\+\_\+\+TRUE} if {\ttfamily protocol} is supported, {\ttfamily EINA\+\_\+\+FALSE} otherwise. {\ttfamily protocol} can be \textquotesingle{}http\+://\textquotesingle{}, \textquotesingle{}ftp\+://\textquotesingle{} or \textquotesingle{}file\+://\textquotesingle{}. Ecore\+\_\+\+FILE must be compiled with CURL to handle http and ftp protocols. 

References \mbox{\hyperlink{group__Eina__Types__Group_ga1feb115f8e9913e806e090d9bd5a7301}{EINA\+\_\+\+FALSE}}, and \mbox{\hyperlink{group__Eina__Types__Group_ga05c12dacc8b4058994df842b41be85fc}{EINA\+\_\+\+TRUE}}.

