Allegro 5 api
#include <allegro5/allegro.h> ALLEGRO_FS_ENTRY *al_read_directory(ALLEGRO_FS_ENTRY *e)
Reads the next directory item and returns a filesystem entry for it.
Returns NULL if there are no more entries or if an error occurs. Call al_destroy_fs_entry(3alleg5) on the returned entry when you are done with it.
al_open_directory(3alleg5), al_close_directory(3alleg5)