OLD | NEW |
1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. |
2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #ifndef PPAPI_SHARED_IMPL_FILE_PATH_H_ | 5 #ifndef PPAPI_SHARED_IMPL_FILE_PATH_H_ |
6 #define PPAPI_SHARED_IMPL_FILE_PATH_H_ | 6 #define PPAPI_SHARED_IMPL_FILE_PATH_H_ |
7 | 7 |
| 8 #include <string> |
| 9 |
8 #include "base/file_path.h" | 10 #include "base/file_path.h" |
9 #include "ppapi/shared_impl/ppapi_shared_export.h" | 11 #include "ppapi/shared_impl/ppapi_shared_export.h" |
10 | 12 |
11 namespace ppapi { | 13 namespace ppapi { |
12 | 14 |
13 // TODO(vtl): Once we put |::FilePath| into the |base| namespace, get rid of the | 15 // TODO(vtl): Once we put |::FilePath| into the |base| namespace, get rid of the |
14 // |Pepper| (or |PEPPER_|) prefixes. Right now, it's just too | 16 // |Pepper| (or |PEPPER_|) prefixes. Right now, it's just too |
15 // confusing/dangerous! | 17 // confusing/dangerous! |
16 | 18 |
17 class PPAPI_SHARED_EXPORT PepperFilePath { | 19 class PPAPI_SHARED_EXPORT PepperFilePath { |
18 public: | 20 public: |
19 enum Domain { | 21 enum Domain { |
20 DOMAIN_INVALID = 0, | 22 DOMAIN_INVALID = 0, |
21 DOMAIN_ABSOLUTE, | 23 DOMAIN_ABSOLUTE, |
22 DOMAIN_MODULE_LOCAL, | 24 DOMAIN_MODULE_LOCAL, |
23 | 25 |
24 // Used for validity-checking. | 26 // Used for validity-checking. |
25 DOMAIN_MAX_VALID = DOMAIN_MODULE_LOCAL | 27 DOMAIN_MAX_VALID = DOMAIN_MODULE_LOCAL |
26 }; | 28 }; |
27 | 29 |
28 PepperFilePath(); | 30 PepperFilePath(); |
29 PepperFilePath(Domain d, const FilePath& p); | 31 PepperFilePath(Domain d, const FilePath& p); |
30 | 32 |
| 33 static PepperFilePath MakeAbsolute(const FilePath& path); |
| 34 static PepperFilePath MakeModuleLocal(const std::string& name, |
| 35 const char* utf8_path); |
| 36 |
31 Domain domain() const { return domain_; } | 37 Domain domain() const { return domain_; } |
32 const FilePath& path() const { return path_; } | 38 const FilePath& path() const { return path_; } |
33 | 39 |
34 private: | 40 private: |
35 Domain domain_; | 41 Domain domain_; |
36 FilePath path_; | 42 FilePath path_; |
37 }; | 43 }; |
38 | 44 |
39 } // namespace ppapi | 45 } // namespace ppapi |
40 | 46 |
41 #endif // PPAPI_SHARED_IMPL_FILE_PATH_H_ | 47 #endif // PPAPI_SHARED_IMPL_FILE_PATH_H_ |
OLD | NEW |