Rudiments
filesystem.h
1 // Copyright (c) 2003 David Muse
2 // See the COPYING file for more information.
3 
4 #ifndef RUDIMENTS_FILESYSTEM_H
5 #define RUDIMENTS_FILESYSTEM_H
6 
7 #include <rudiments/private/filesystemincludes.h>
8 
9 class filesystemprivate;
10 
18 class RUDIMENTS_DLLSPEC filesystem {
19  public:
21  filesystem();
22 
25  filesystem(const filesystem &f);
26 
29  filesystem &operator=(const filesystem &f);
30 
32  virtual ~filesystem();
33 
39  bool open(const char *path);
40 
45  bool open(int32_t fd);
46 
48  bool close();
49 
53  bool getCurrentProperties();
54 
56  int64_t getType() const;
57 
59  int64_t getBlockSize() const;
60 
62  int64_t getOptimumTransferBlockSize() const;
63 
66  int64_t getTotalBlocks() const;
67 
69  int64_t getFreeBlocks() const;
70 
73  int64_t getAvailableBlocks() const;
74 
77  int64_t getReservedBlocks() const;
78 
80  int64_t getTotalFileNodes() const;
81 
83  int64_t getFreeFileNodes() const;
84 
87  int64_t getAvailableFileNodes() const;
88 
91  int64_t getReservedFileNodes() const;
92 
94  int64_t getFileSystemId() const;
95 
98  int64_t getMaximumFileNameLength() const;
99 
101  uid_t getOwner() const;
102 
105  int64_t getSyncWrites() const;
106 
109  int64_t getAsyncWrites() const;
110 
112  const char *getTypeName() const;
113 
115  const char *getMountPoint() const;
116 
119  int64_t getSyncReads() const;
120 
123  int64_t getAsyncReads() const;
124 
126  const char *getDeviceName() const;
127 
129  const char *getFilesystemSpecificString() const;
130 
134  void *getInternalFilesystemStatisticsStructure();
135 
136  #include <rudiments/private/filesystem.h>
137 };
138 
139 #endif
Definition: filesystem.h:18