eio_file_ls() tutorial

To use eio_file_ls(), you just need to define four callbacks:

Here is a simple example:

#include <Ecore.h>
#include <Eio.h>
static Eina_Bool
_test_filter_cb(void *data, Eio_File *handler, const char *file)
{
fprintf(stderr, "ACCEPTING: %s\n", file);
return EINA_TRUE;
}
static void
_test_main_cb(void *data, Eio_File *handler, const char *file)
{
fprintf(stderr, "PROCESS: %s\n", file);
}
static void
_test_done_cb(void *data, Eio_File *handler)
{
printf("ls done\n");
}
static void
_test_error_cb(void *data, Eio_File *handler, int error)
{
fprintf(stderr, "error: [%s]\n", strerror(error));
}
int
main(int argc, char **argv)
{
Eio_File *cp;
if (argc != 2)
{
fprintf(stderr, "eio_ls directory\n");
return -1;
}
cp = eio_file_ls(argv[1],
_test_filter_cb,
_test_main_cb,
_test_done_cb,
_test_error_cb,
NULL);
return 0;
}