Directory listing

Under window this code will create a imaginary root directory containing all volumes. It is therefor possible to list all files in all volumes.

boolean imagine_path_search(char *file, boolean partial, char *path, boolean folders, uint number, char *out_buffer, uint out_buffer_size);

Description: Searches for a file recursevly in a path, and writes its location to the out_buffer. If "partial" is set the search will also yeild results wher the seacr string only makes up part of the file name.


IDir *imagine_path_open(char *path);

Description: Opens a path for traversial. If the path is not legal or not a directry the fuction will return NULL.


boolean imagine_path_next(IDir *d, char *file_name_buffer, uint buffer_size);

Description: Writes the name of the next member of the directory to file_name_buffer. Returns FALSE if there are no files left in the directory to write out.


void imagine_path_close(IDir *d);

Description: Closes a directory.


boolean imagine_path_is_dir(char *path);

Description: Returns True if the path is a valid directory.