From 59647d1be08858f808d502de623df3fe8ea4b606 Mon Sep 17 00:00:00 2001 From: Cedric BAIL Date: Wed, 22 Feb 2012 10:26:39 +0000 Subject: [PATCH] eio: make eio_dir_direct_ls a public API. SVN revision: 68260 --- legacy/eio/src/lib/Eio.h | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/legacy/eio/src/lib/Eio.h b/legacy/eio/src/lib/Eio.h index 3efa840fb0..7f1073a62c 100644 --- a/legacy/eio/src/lib/Eio.h +++ b/legacy/eio/src/lib/Eio.h @@ -244,6 +244,26 @@ EAPI Eio_File *eio_dir_stat_ls(const char *dir, Eio_Error_Cb error_cb, const void *data); +/** + * @brief List the content of a directory and all it's sub-content asynchronously + * @param dir The directory to list. + * @param filter_cb Callback called from another thread. + * @param main_cb Callback called from the main loop for each accepted file. + * @param done_cb Callback called from the main loop when the content of the directory has been listed. + * @param error_cb Callback called from the main loop when the directory could not be opened or listing content has been canceled. + * @param data Data passed to callback and not modified at all by eio_dir_stat_find. + * @return A reference to the IO operation. + * + * eio_dir_direct_ls() run eina_file_direct_ls() recursivly in a separated thread using + * ecore_thread_feedback_run. This prevent any lock in your apps. + */ +EAPI Eio_File *eio_dir_direct_ls(const char *dir, + Eio_Filter_Direct_Cb filter_cb, + Eio_Main_Direct_Cb main_cb, + Eio_Done_Cb done_cb, + Eio_Error_Cb error_cb, + const void *data); + /** * @brief Stat a file/directory. * @param path The path to stat.