Eio.h
138 typedef Eina_Bool (*Eio_Filter_Direct_Cb)(void *data, Eio_File *handler, const Eina_File_Direct_Info *info);
139 typedef Eina_Bool (*Eio_Filter_Dir_Cb)(void *data, Eio_File *handler, Eina_File_Direct_Info *info);
140 typedef void (*Eio_Main_Direct_Cb)(void *data, Eio_File *handler, const Eina_File_Direct_Info *info);
147 typedef Eina_Bool (*Eio_Filter_Map_Cb)(void *data, Eio_File *handler, void *map, size_t length);
150 typedef void (*Eio_Done_Data_Cb)(void *data, Eio_File *handler, const char *read_data, unsigned int size);
156 typedef void (*Eio_Done_Read_Cb)(void *data, Eio_File *handler, void *read_data, unsigned int size);
Definition: Eio.h:1130
EAPI Eio_File * eio_file_xattr_get(const char *path, const char *attribute, Eio_Done_Data_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Retrieve the extended attribute of a file/directory.
Definition: eio_xattr.c:315
EAPI int eio_shutdown(void)
Shutdown eio and all it's submodule if possible.
Definition: eio_main.c:256
EAPI 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 it's sub-content asynchronously.
Definition: eio_dir.c:969
EAPI Eio_File * eio_file_mkdir(const char *path, mode_t mode, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Create a new directory.
Definition: eio_single.c:509
EAPI Eio_File * eio_file_unlink(const char *path, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Unlink a file/directory.
Definition: eio_single.c:480
Definition: Eio.h:70
EAPI Eio_File * eio_eet_data_write_cipher(Eet_File *ef, Eet_Data_Descriptor *edd, const char *name, const char *cipher_key, void *write_data, int compress, Eio_Done_Int_Cb done_cb, Eio_Error_Cb error_cb, const void *user_data)
Write a data structure from memory and store in an eet file using a cipher asynchronously.
Definition: eio_eet.c:412
EAPI Eio_File * eio_eet_close(Eet_File *ef, Eio_Done_Cb done_cb, Eio_Eet_Error_Cb error_cb, const void *data)
Close an eet file handle and flush pending writes asynchronously.
Definition: eio_eet.c:343
EAPI Eio_File * eio_file_chown(const char *path, const char *user, const char *group, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Change owner of a path.
Definition: eio_single.c:571
EAPI Eio_File * eio_file_xattr_set(const char *path, const char *attribute, const char *xattr_data, unsigned int xattr_size, Eina_Xattr_Flags flags, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Define an extented attribute on a file/directory.
Definition: eio_xattr.c:407
EAPI Eio_File * eio_eet_write_cipher(Eet_File *ef, const char *name, void *write_data, int size, int compress, const char *cipher_key, Eio_Done_Int_Cb done_cb, Eio_Error_Cb error_cb, const void *user_data)
Write a specified entry to an eet file handle using a cipher.
Definition: eio_eet.c:611
EAPI Eio_File * eio_dir_copy(const char *source, const char *dest, Eio_Filter_Direct_Cb filter_cb, Eio_Progress_Cb progress_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Copy a directory and it's content asynchronously.
Definition: eio_dir.c:808
EAPI Eio_File * eio_file_copy(const char *source, const char *dest, Eio_Progress_Cb progress_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Copy a file asynchronously.
Definition: eio_file.c:915
EAPI int eio_init(void)
Initialize eio and all it's required submodule.
Definition: eio_main.c:214
Definition: Eio.h:112
EAPI Eina_Bool eio_file_cancel(Eio_File *ls)
Cancel any Eio_File.
Definition: eio_file.c:847
EAPI Eio_Monitor * eio_monitor_stringshared_add(const char *path)
Adds a file/directory to monitor.
Definition: eio_monitor.c:277
EAPI Eio_File * eio_eet_read_cipher(Eet_File *ef, const char *name, const char *cipher_key, Eio_Done_Read_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Read a specified entry from an eet file and return data.
Definition: eio_eet.c:576
EAPI Eina_Bool eio_file_associate_direct_add(Eio_File *ls, const char *key, const void *data, Eina_Free_Cb free_cb)
Associate data with the current filtered file.
Definition: eio_file.c:884
EAPI Eio_File * eio_file_map_all(Eina_File *f, Eina_File_Populate rule, Eio_Filter_Map_Cb filter_cb, Eio_Map_Cb map_cb, Eio_Error_Cb error_cb, const void *data)
Assynchronously map a file in memory.
Definition: eio_map.c:244
EAPI Eio_File * eio_file_xattr_double_set(const char *path, const char *attribute, double xattr_double, Eina_Xattr_Flags flags, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Define an extented attribute on a file/directory.
Definition: eio_xattr.c:472
EAPI void * eio_file_container_get(Eio_File *ls)
Return the container during EIO operation.
Definition: eio_file.c:861
EAPI 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.
Definition: eio_file.c:812
Definition: Eio.h:1124
Definition: Eio.h:104
Definition: Eio.h:113
EAPI Eio_File * eio_file_xattr_int_get(const char *path, const char *attribute, Eio_Done_Int_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Retrieve a extended attribute of a file/directory.
Definition: eio_xattr.c:384
Definition: Eio.h:105
static long long eio_file_size(const Eina_Stat *stat)
get the size of the file described in Eina_Stat
EAPI Eio_File * eio_file_open(const char *name, Eina_Bool shared, Eio_Open_Cb open_cb, Eio_Error_Cb error_cb, const void *data)
Assynchronously open a file.
Definition: eio_map.c:182
EAPI Eio_File * eio_file_xattr(const char *path, Eio_Filter_Cb filter_cb, Eio_Main_Cb main_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Assynchronously list all eXtended attribute.
Definition: eio_xattr.c:280
EAPI Eio_File * eio_file_chmod(const char *path, mode_t mode, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Change right of a path.
Definition: eio_single.c:540
EAPI Eio_File * eio_eet_data_image_write_cipher(Eet_File *ef, const char *name, const char *cipher_key, void *write_data, unsigned int w, unsigned int h, int alpha, int compress, int quality, int lossy, Eio_Done_Int_Cb done_cb, Eio_Error_Cb error_cb, const void *user_data)
Write image data to the named key in an eet file asynchronously.
Definition: eio_eet.c:492
EAPI Eio_File * eio_file_move(const char *source, const char *dest, Eio_Progress_Cb progress_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Move a file asynchronously.
Definition: eio_file.c:951
EAPI Eio_File * eio_file_map_new(Eina_File *f, Eina_File_Populate rule, unsigned long int offset, unsigned long int length, Eio_Filter_Map_Cb filter_cb, Eio_Map_Cb map_cb, Eio_Error_Cb error_cb, const void *data)
Assynchronously map a part of a file in memory.
Definition: eio_map.c:280
EAPI 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 it's sub-content asynchronously.
Definition: eio_dir.c:929
EAPI Eio_File * eio_file_xattr_string_get(const char *path, const char *attribute, Eio_Done_String_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Retrieve a string extended attribute of a file/directory.
Definition: eio_xattr.c:338
EAPI Eio_File * eio_eet_data_read_cipher(Eet_File *ef, Eet_Data_Descriptor *edd, const char *name, const char *cipher_key, Eio_Done_ERead_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Read a data structure from an eet file and decodes it using a cipher asynchronously.
Definition: eio_eet.c:454
EAPI 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.
Definition: eio_file.c:777
static Eina_Bool eio_file_is_dir(const Eina_Stat *stat)
tell if the stated path was a directory or not.
EAPI Eio_Monitor * eio_monitor_add(const char *path)
Adds a file/directory to monitor (inotify mechanism)
Definition: eio_monitor.c:264
EAPI Eio_File * eio_dir_unlink(const char *path, Eio_Filter_Direct_Cb filter_cb, Eio_Progress_Cb progress_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Remove a directory and it's content asynchronously.
Definition: eio_dir.c:890
Definition: Eio.h:107
EAPI Eio_File * eio_file_xattr_int_set(const char *path, const char *attribute, int xattr_int, Eina_Xattr_Flags flags, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Define an extented attribute on a file/directory.
Definition: eio_xattr.c:497
EAPI Eio_File * eio_eet_read_direct(Eet_File *ef, const char *name, Eio_Done_Data_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Read a specified entry from an eet file and return data.
Definition: eio_eet.c:541
EAPI Eina_Bool eio_file_associate_add(Eio_File *ls, const char *key, const void *data, Eina_Free_Cb free_cb)
Associate data with the current filtered file.
Definition: eio_file.c:868
EAPI Eio_File * eio_dir_move(const char *source, const char *dest, Eio_Filter_Direct_Cb filter_cb, Eio_Progress_Cb progress_cb, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Move a directory and it's content asynchronously.
Definition: eio_dir.c:849
EAPI void eio_monitor_del(Eio_Monitor *monitor)
Deletes a path from the “watched” list.
Definition: eio_monitor.c:342
EAPI Eio_File * eio_eet_sync(Eet_File *ef, Eio_Done_Cb done_cb, Eio_Eet_Error_Cb error_cb, const void *data)
Sync content of an eet file handle, flushing pending writes asynchronously.
Definition: eio_eet.c:403
EAPI 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.
Definition: eio_file.c:742
EAPI Eina_Bool eio_file_check(Eio_File *ls)
Check if an Eio_File operation has been cancelled.
Definition: eio_file.c:854
static Eina_Bool eio_file_is_lnk(const Eina_Stat *stat)
tell if the stated path was a link or not.
EAPI Eio_File * eio_file_xattr_double_get(const char *path, const char *attribute, Eio_Done_Double_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Retrieve a extended attribute of a file/directory.
Definition: eio_xattr.c:361
EAPI Eio_File * eio_file_xattr_string_set(const char *path, const char *attribute, const char *xattr_string, Eina_Xattr_Flags flags, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Define a string extented attribute on a file/directory.
Definition: eio_xattr.c:437
Definition: Eio.h:106
EAPI void * eio_file_associate_find(Eio_File *ls, const char *key)
Get the data associated during the filter callback inside the main loop.
Definition: eio_file.c:900
EAPI 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.
Definition: eio_single.c:414
EAPI Eio_File * eio_file_close(Eina_File *f, Eio_Done_Cb done_cb, Eio_Error_Cb error_cb, const void *data)
Assynchronously close a file.
Definition: eio_map.c:214
Definition: Eio.h:114
EAPI const char * eio_monitor_path_get(Eio_Monitor *monitor)
returns the path being watched by the given Eio_Monitor.
Definition: eio_monitor.c:350
EAPI Eio_File * eio_eet_open(const char *filename, Eet_File_Mode mode, Eio_Eet_Open_Cb eet_cb, Eio_Error_Cb error_cb, const void *data)
Open an eet file on disk, and returns a handle to it asynchronously.
Definition: eio_eet.c:311
static double eio_file_mtime(const Eina_Stat *stat)
get modification time from a Eina_Stat