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 | |
10 #include "base/file_path.h" | 8 #include "base/file_path.h" |
11 #include "ppapi/shared_impl/ppapi_shared_export.h" | 9 #include "ppapi/shared_impl/ppapi_shared_export.h" |
12 | 10 |
13 namespace ppapi { | 11 namespace ppapi { |
14 | 12 |
15 // TODO(vtl): Once we put |::FilePath| into the |base| namespace, get rid of the | 13 // TODO(vtl): Once we put |::FilePath| into the |base| namespace, get rid of the |
16 // |Pepper| (or |PEPPER_|) prefixes. Right now, it's just too | 14 // |Pepper| (or |PEPPER_|) prefixes. Right now, it's just too |
17 // confusing/dangerous! | 15 // confusing/dangerous! |
18 | 16 |
19 class PPAPI_SHARED_EXPORT PepperFilePath { | 17 class PPAPI_SHARED_EXPORT PepperFilePath { |
20 public: | 18 public: |
21 enum Domain { | 19 enum Domain { |
22 DOMAIN_INVALID = 0, | 20 DOMAIN_INVALID = 0, |
23 DOMAIN_ABSOLUTE, | 21 DOMAIN_ABSOLUTE, |
24 DOMAIN_MODULE_LOCAL, | 22 DOMAIN_MODULE_LOCAL, |
25 | 23 |
26 // Used for validity-checking. | 24 // Used for validity-checking. |
27 DOMAIN_MAX_VALID = DOMAIN_MODULE_LOCAL | 25 DOMAIN_MAX_VALID = DOMAIN_MODULE_LOCAL |
28 }; | 26 }; |
29 | 27 |
30 PepperFilePath(); | 28 PepperFilePath(); |
31 PepperFilePath(Domain d, const FilePath& p); | 29 PepperFilePath(Domain d, const FilePath& p); |
32 | 30 |
33 static PepperFilePath MakeAbsolute(const FilePath& path); | |
34 static PepperFilePath MakeModuleLocal(const std::string& name, | |
35 const char* utf8_path); | |
36 | |
37 Domain domain() const { return domain_; } | 31 Domain domain() const { return domain_; } |
38 const FilePath& path() const { return path_; } | 32 const FilePath& path() const { return path_; } |
39 | 33 |
40 private: | 34 private: |
41 Domain domain_; | 35 Domain domain_; |
42 FilePath path_; | 36 FilePath path_; |
43 }; | 37 }; |
44 | 38 |
45 } // namespace ppapi | 39 } // namespace ppapi |
46 | 40 |
47 #endif // PPAPI_SHARED_IMPL_FILE_PATH_H_ | 41 #endif // PPAPI_SHARED_IMPL_FILE_PATH_H_ |
OLD | NEW |