From e417e011d558693b9ff9cd048efe9cbe79da74be Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Sat, 22 Oct 2011 15:35:49 +0000 Subject: Code cleanup: file operations merged into single header, some function names made less cryptic and changed to indicate if they work on files or directories. --- source/blender/blenlib/BLI_fileops.h | 58 ++++++++++++++++++++++++++---------- 1 file changed, 43 insertions(+), 15 deletions(-) (limited to 'source/blender/blenlib/BLI_fileops.h') diff --git a/source/blender/blenlib/BLI_fileops.h b/source/blender/blenlib/BLI_fileops.h index 354931e306a..ebe231e2973 100644 --- a/source/blender/blenlib/BLI_fileops.h +++ b/source/blender/blenlib/BLI_fileops.h @@ -29,10 +29,7 @@ /** \file BLI_fileops.h * \ingroup bli - * \author Daniel Dunbar - * \brief More low-level fileops from Daniel Dunbar. Two functions were also - * defined in storage.c. These are the old fop_ prefixes. There is - * definitely some redundancy here! + * \brief File and directory operations. * */ #ifndef BLI_FILEOPS_H @@ -42,17 +39,48 @@ extern "C" { #endif -void BLI_recurdir_fileops(const char *dirname); -int BLI_link(const char *file, const char *to); -int BLI_is_writable(const char *filename); - -int BLI_copy_fileops(const char *file, const char *to); -int BLI_rename(const char *from, const char *to); -int BLI_gzip(const char *from, const char *to); -char *BLI_ungzip_to_mem(const char *from_file, int *size_r); -int BLI_delete(const char *file, int dir, int recursive); -int BLI_move(const char *file, const char *to); -int BLI_touch(const char *file); +#include "BLI_fileops_types.h" + +/* for size_t (needed on windows) */ +#include + +/* Common */ + +int BLI_exists(const char *path); +int BLI_copy(const char *path, const char *to); +int BLI_rename(const char *from, const char *to); +int BLI_delete(const char *path, int dir, int recursive); +int BLI_move(const char *path, const char *to); +int BLI_create_symlink(const char *path, const char *to); + +/* Directories */ + +struct direntry; + +int BLI_is_dir(const char *path); +void BLI_dir_create_recursive(const char *dir); +double BLI_dir_free_space(const char *dir); +char *BLI_current_working_dir(char *dir, const int maxlen); + +unsigned int BLI_dir_contents(const char *dir, struct direntry **filelist); + +/* Files */ + +int BLI_file_is_writable(const char *file); +int BLI_file_touch(const char *file); + +int BLI_file_gzip(const char *from, const char *to); +char *BLI_file_ungzip_to_mem(const char *from_file, int *size_r); + +size_t BLI_file_descriptor_size(int file); +size_t BLI_file_size(const char *file); + + /* compare if one was last modified before the other */ +int BLI_file_older(const char *file1, const char *file2); + + /* read ascii file as lines, empty list if reading fails */ +struct LinkNode *BLI_file_read_as_lines(const char *file); +void BLI_file_free_lines(struct LinkNode *lines); #ifdef __cplusplus } -- cgit v1.2.3