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 
38  bool initialize(const char *path);
39 
44  bool initialize(int32_t fd);
45 
47  int64_t getType() const;
48 
50  int64_t getBlockSize() const;
51 
53  int64_t getOptimumTransferBlockSize() const;
54 
57  int64_t getTotalBlocks() const;
58 
60  int64_t getFreeBlocks() const;
61 
64  int64_t getAvailableBlocks() const;
65 
67  int64_t getTotalFileNodes() const;
68 
70  int64_t getFreeFileNodes() const;
71 
74  int64_t getAvailableFileNodes() const;
75 
77  int64_t getFileSystemId() const;
78 
81  int64_t getMaximumFileNameLength() const;
82 
84  uid_t getOwner() const;
85 
88  int64_t getSyncWrites() const;
89 
92  int64_t getAsyncWrites() const;
93 
95  const char *getTypeName() const;
96 
98  const char *getMountPoint() const;
99 
102  int64_t getSyncReads() const;
103 
106  int64_t getAsyncReads() const;
107 
109  const char *getDeviceName() const;
110 
112  const char *getFilesystemSpecificString() const;
113 
117  bool getCurrentProperties();
118 
122  void *getInternalFilesystemStatisticsStructure();
123 
124  #include <rudiments/private/filesystem.h>
125 };
126 
127 #endif
Definition: filesystem.h:18