Rudiments

- Main Page
- Classes

directory.h
1 // Copyright (c) 2004 David Muse
2 // See the COPYING file for more information.
3
4 #ifndef RUDIMENTS_DIRECTORY_H
5 #define RUDIMENTS_DIRECTORY_H
6
7 #include <rudiments/private/directoryincludes.h>
8
9 class directoryprivate;
10
13 class RUDIMENTS_DLLSPEC directory {
14 public:
16 directory();
17
19 ~directory();
20
22 bool open(const char *path);
23
25 bool close();
26
30 bool skip();
31
36 char *read();
37
40 void rewind();
41
44 uint64_t getChildCount();
45
51 char *getChildName(uint64_t index);
52
55 int64_t maxFileNameLength();
56
59 int64_t maxPathLength();
60
65 bool canAccessLongFileNames();
66
68 static bool create(const char *path, mode_t perms);
69
71 static bool remove(const char *path);
72
78 static char *getCurrentWorkingDirectory();
79
81 static bool changeDirectory(const char *path);
82
84 static bool changeRoot(const char *path);
85
88 static int64_t maxFileNameLength(const char *pathname);
89
93 static int64_t maxPathLength(const char *pathname);
94
99 static bool canAccessLongFileNames(const char *pathname);
100
104 static bool needsMutex();
105
109 static void setMutex(threadmutex *mtx);
110
111 #include <rudiments/private/directory.h>
112 };
113
114 #endif
threadmutex
Definition: threadmutex.h:13
directory
Definition: directory.h:13