OLD | NEW |
1 /* | 1 /* |
2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. | 2 * Copyright 2004 The WebRTC Project Authors. All rights reserved. |
3 * | 3 * |
4 * Use of this source code is governed by a BSD-style license | 4 * Use of this source code is governed by a BSD-style license |
5 * that can be found in the LICENSE file in the root of the source | 5 * that can be found in the LICENSE file in the root of the source |
6 * tree. An additional intellectual property rights grant can be found | 6 * tree. An additional intellectual property rights grant can be found |
7 * in the file PATENTS. All contributing project authors may | 7 * in the file PATENTS. All contributing project authors may |
8 * be found in the AUTHORS file in the root of the source tree. | 8 * be found in the AUTHORS file in the root of the source tree. |
9 */ | 9 */ |
10 | 10 |
11 #ifndef WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ | 11 #ifndef WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ |
12 #define WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ | 12 #define WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ |
13 | 13 |
14 #include "fileutils.h" | 14 #include "fileutils.h" |
15 | 15 |
16 namespace rtc { | 16 namespace rtc { |
17 | 17 |
18 class Win32Filesystem : public FilesystemInterface { | 18 class Win32Filesystem : public FilesystemInterface { |
19 public: | 19 public: |
20 // This will attempt to delete the path located at filename. | 20 // This will attempt to delete the path located at filename. |
21 // If the path points to a folder, it will fail with VERIFY | 21 // If the path points to a folder, it will fail with VERIFY |
22 bool DeleteFile(const Pathname& filename) override; | 22 bool DeleteFile(const Pathname& filename) override; |
23 | 23 |
24 // Creates a directory. This will call itself recursively to create /foo/bar e
ven if | |
25 // /foo does not exist. | |
26 // Returns TRUE if function succeeds | |
27 bool CreateFolder(const Pathname& pathname) override; | |
28 | |
29 // This moves a file from old_path to new_path. If the new path is on a | 24 // This moves a file from old_path to new_path. If the new path is on a |
30 // different volume than the old, it will attempt to copy and then delete | 25 // different volume than the old, it will attempt to copy and then delete |
31 // the folder | 26 // the folder |
32 // Returns true if the file is successfully moved | 27 // Returns true if the file is successfully moved |
33 bool MoveFile(const Pathname& old_path, const Pathname& new_path) override; | 28 bool MoveFile(const Pathname& old_path, const Pathname& new_path) override; |
34 | 29 |
35 // Returns true if a pathname is a directory | 30 // Returns true if a pathname is a directory |
36 bool IsFolder(const Pathname& pathname) override; | 31 bool IsFolder(const Pathname& pathname) override; |
37 | 32 |
38 // Returns true if a file exists at path | 33 // Returns true if a file exists at path |
39 bool IsFile(const Pathname& path) override; | 34 bool IsFile(const Pathname& path) override; |
40 | 35 |
41 // All of the following functions set pathname and return true if successful. | 36 // All of the following functions set pathname and return true if successful. |
42 // Returned paths always include a trailing backslash. | 37 // Returned paths always include a trailing backslash. |
43 // If create is true, the path will be recursively created. | 38 // If create is true, the path will be recursively created. |
44 // If append is non-null, it will be appended (and possibly created). | 39 // If append is non-null, it will be appended (and possibly created). |
45 | 40 |
46 std::string TempFilename(const Pathname& dir, | 41 std::string TempFilename(const Pathname& dir, |
47 const std::string& prefix) override; | 42 const std::string& prefix) override; |
48 | 43 |
49 bool GetFileSize(const Pathname& path, size_t* size) override; | 44 bool GetFileSize(const Pathname& path, size_t* size) override; |
50 }; | 45 }; |
51 | 46 |
52 } // namespace rtc | 47 } // namespace rtc |
53 | 48 |
54 #endif // WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ | 49 #endif // WEBRTC_RTC_BASE_WIN32FILESYSTEM_H_ |
OLD | NEW |