24 bool open(
const char* path,
bool recursive =
true,
bool rmdir_on =
false);
32 virtual bool rmdir_callback(
const char* path);
46 const char* next_file(
bool full =
false);
56 const char* next_dir(
bool full =
false);
68 const char* next(
bool full =
false,
bool* is_file = NULL);
77 const char* curr_path();
84 const char* curr_file(
bool full =
false);
90 size_t dir_count()
const;
96 size_t file_count()
const;
98 #if defined(_WIN32) || defined(_WIN64) 103 unsigned __int64 scaned_size()
const;
111 unsigned __int64 all_size(
int* nfiles = NULL,
int* ndirs = NULL)
const;
121 static unsigned __int64 all_size(
const char* path,
bool recursive =
true,
122 int* nfiles = NULL,
int* ndirs = NULL);
130 unsigned __int64 remove_all(
int* nfiles = NULL,
int* ndirs = NULL)
const;
140 static unsigned __int64 remove_all(
const char* path,
bool recursive =
true,
141 int* nfiles = NULL,
int* ndirs = NULL);
143 unsigned long long scaned_size()
const;
144 unsigned long long all_size(
int* nfiles = NULL,
int* ndirs = NULL)
const;
145 static unsigned long long all_size(
const char* path,
bool recursive =
true,
146 int* nfiles = NULL,
int* ndirs = NULL);
147 unsigned long long remove_all(
int* nfiles = NULL,
int* ndirs = NULL)
const;
148 static unsigned long long remove_all(
const char* path,
bool recursive =
true,
149 int* nfiles = NULL,
int* ndirs = NULL);
157 static bool get_cwd(
string& out);
170 void set_rmdir_callback(
int (*fn)(
ACL_SCAN_DIR*,
const char*,
void*),
void* ctx);
178 static int rmdir_def(
ACL_SCAN_DIR* scan,
const char* path,
void* ctx);
struct ACL_SCAN_DIR ACL_SCAN_DIR
ACL_SCAN_DIR * get_scan_dir(void) const