Eio_List(3)

NAME
Eio_List - Eio file listing API

 - This functions helps list files asynchronously.

SYNOPSIS

  Data Structures
struct _Eio_Progress
Represents the current progress of the operation.

  Typedefs
typedef struct _Eio_Progress Eio_Progress
Progress information on a specific operation.
typedef Eina_Bool(* Eio_Filter_Cb) (void *data, Eio_File *handler, const char *file)
typedef void(* Eio_Main_Cb) (void *data, Eio_File *handler, const char *file)
typedef Eina_Bool(* Eio_Filter_Dir_Cb) (void *data, Eio_File *handler, Eina_File_Direct_Info *info)
typedef void(* Eio_Main_Direct_Cb) (void *data, Eio_File *handler, const Eina_File_Direct_Info *info)
typedef void(* Eio_Stat_Cb) (void *data, Eio_File *handler, const Eina_Stat *stat)
typedef void(* Eio_Progress_Cb) (void *data, Eio_File *handler, const Eio_Progress *info)
typedef void(* Eio_Eet_Open_Cb) (void *data, Eio_File *handler, Eet_File *file)
typedef void(* Eio_Open_Cb) (void *data, Eio_File *handler, Eina_File *file)
typedef Eina_Bool(* Eio_Filter_Map_Cb) (void *data, Eio_File *handler, void *map, size_t length)
typedef void(* Eio_Map_Cb) (void *data, Eio_File *handler, void *map, size_t length)
typedef void(* Eio_Done_Data_Cb) (void *data, Eio_File *handler, const char *read_data, unsigned int size)
typedef void(* Eio_Done_String_Cb) (void *data, Eio_File *handler, const char *xattr_string)
typedef void(* Eio_Done_Double_Cb) (void *data, Eio_File *handler, double xattr_double)
typedef void(* Eio_Done_Int_Cb) (void *data, Eio_File *handler, int i)
typedef void(* Eio_Done_ERead_Cb) (void *data, Eio_File *handler, void *decoded)
typedef void(* Eio_Done_Read_Cb) (void *data, Eio_File *handler, void *read_data, unsigned int size)
typedef void(* Eio_Done_Cb) (void *data, Eio_File *handler)
typedef void(* Eio_Error_Cb) (void *data, Eio_File *handler, int error)
typedef void(* Eio_Eet_Error_Cb) (void *data, Eio_File *handler, Eet_Error err)

  Functions
EIO_API Eio_File * eio_file_ls (const char *dir, Eio_Filter_Cb filter_cb, Eio_Main_Cb main_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
List contents of a directory without locking your app.
EIO_API Eio_File * eio_file_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)
List contents of a directory without locking your app.
EIO_API Eio_File * eio_file_stat_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)
List content of a directory without locking your app.
EIO_API Eio_File * eio_dir_stat_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)
List the content of a directory and all its sub-content asynchronously.
EIO_API Eio_File * eio_dir_direct_ls (const char *dir, Eio_Filter_Dir_Cb filter_cb, Eio_Main_Direct_Cb main_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
List the content of a directory and all its sub-content asynchronously.
EIO_API Eio_File * eio_file_direct_stat (const char *path, Eio_Stat_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Stat a file/directory.

Detailed Description

This functions helps list files asynchronously. This set of functions work on top of Eina_File and Ecore_Thread to list files under various condition.

Function Documentation

  EIO_API Eio_File* eio_file_ls (const char * dir, Eio_Filter_Cb filter_cb, Eio_Main_Cb main_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void * data)

List contents of a directory without locking your app.

Parameters
    dir The directory to list.
    filter_cb Callback used to decide if the file will be passed to main_cb
    main_cb Callback called for each listed file if it was not filtered.
    done_cb Callback called when the ls operation is done.
    error_cb Callback called when either the directory could not be opened or the operation has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

This function is responsible for listing the content of a directory without blocking your application. It's equivalent to the 'ls' shell command. Every file will be passed to the filter_cb, so it's your job to decide if you want to pass the file to the main_cb or not. Return EINA_TRUE to pass it to the main_cb or EINA_FALSE to ignore it. It runs eina_file_ls() in a separate thread using ecore_thread_feedback_run().

See also
    eina_file_ls()

    ecore_thread_feedback_run()

    eio_file_direct_ls()

    eio_file_stat_ls()

  EIO_API Eio_File* eio_file_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)

List contents of a directory without locking your app.

Parameters
    dir The directory to list.
    filter_cb Callback used to decide if the file will be passed to main_cb
    main_cb Callback called from the main loop for each accepted file (not filtered).
    done_cb Callback called from the main loop after the contents of the directory has been listed.
    error_cb Callback called from the main loop when either the directory could not be opened or the operation has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

eio_file_direct_ls() runs eina_file_direct_ls() in a separate thread using ecore_thread_feedback_run(). This prevents any blocking in your apps. Every file will be passed to the filter_cb, so it's your job to decide if you want to pass the file to the main_cb or not. Return EINA_TRUE to pass it to the main_cb or EINA_FALSE to ignore it.

Warning
    If readdir_r doesn't contain file type information, file type is EINA_FILE_UNKNOWN.

Note
    The iterator walks over '.' and '..' without returning them.

    The difference between this function and eina_file_stat_ls() is that it may not get the file type information however it is likely to be faster.

See also
    eio_file_stat_ls()

    eina_file_direct_ls()

    ecore_thread_feedback_run()

  EIO_API Eio_File* eio_file_stat_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)

List content of a directory without locking your app.

Parameters
    dir The directory to list.
    filter_cb Callback used to decide if the file will be passed to main_cb
    main_cb Callback called from the main loop for each accepted file (not filtered).
    done_cb Callback called from the main loop after the contents of the directory has been listed.
    error_cb Callback called from the main loop when either the directory could not be opened or the operation has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

Every file will be passed to the filter_cb, so it's your job to decide if you want to pass the file to the main_cb or not. Return EINA_TRUE to pass it to the main_cb or EINA_FALSE to ignore it. eio_file_stat_ls() run eina_file_stat_ls() in a separate thread using ecore_thread_feedback_run().

Note
    The iterator walks over '.' and '..' without returning them.

    The difference between this function and eio_file_direct_ls() is that it guarantees the file type information to be correct by incurring a possible performance penalty.

See also
    eio_file_stat_ls()

    eina_file_stat_ls()

    ecore_thread_feedback_run()

  EIO_API Eio_File* eio_dir_stat_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)

List the content of a directory and all its sub-content asynchronously.

Parameters
    dir The directory to list.
    filter_cb Callback used to decide if the file will be passed to main_cb
    main_cb Callback called from the main loop for each accepted file (not filtered).
    done_cb Callback called from the main loop after the contents of the directory has been listed.
    error_cb Callback called from the main loop when either the directory could not be opened or the operation has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

eio_dir_stat_ls() runs eina_file_stat_ls() recursively in a separate thread using ecore_thread_feedback_run(). This prevents any blocking in your apps. Every file will be passed to the filter_cb, so it's your job to decide if you want to pass the file to the main_cb or not. Return EINA_TRUE to pass it to the main_cb or EINA_FALSE to ignore it.

See also
    eio_file_stat_ls()

    eio_dir_direct_ls()

    eina_file_stat_ls()

    ecore_thread_feedback_run()

  EIO_API Eio_File* eio_dir_direct_ls (const char * dir, Eio_Filter_Dir_Cb filter_cb, Eio_Main_Direct_Cb main_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void * data)

List the content of a directory and all its sub-content asynchronously.

Parameters
    dir The directory to list.
    filter_cb Callback used to decide if the file will be passed to main_cb
    main_cb Callback called from the main loop for each accepted file (not filtered).
    done_cb Callback called from the main loop after the contents of the directory has been listed.
    error_cb Callback called from the main loop when either the directory could not be opened or the operation has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

eio_dir_direct_ls() runs eina_file_direct_ls() recursively in a separate thread using ecore_thread_feedback_run(). This prevents any blocking in your apps. Every file will be passed to the filter_cb, so it's your job to decide if you want to pass the file to the main_cb or not. Return EINA_TRUE to pass it to the main_cb or EINA_FALSE to ignore it.

See also
    eio_file_direct_ls()

    eio_dir_stat_ls()

    eina_file_direct_ls()

    ecore_thread_feedback_run()

  EIO_API Eio_File* eio_file_direct_stat (const char * path, Eio_Stat_Cb done_cb, Eio_Error_Cb error_cb, const void * data)

Stat a file/directory.

Parameters
    path The path to stat.
    done_cb Callback called from the main loop when stat was successfully called.
    error_cb Callback called from the main loop when stat failed or has been canceled.
    data Unmodified user data passed to callbacks

Returns
    A reference to the I/O operation.

eio_file_direct_stat calls stat in another thread. This prevents any blocking in your apps.

Author

Generated automatically by Doxygen for EFL from the source code.