diff options
Diffstat (limited to 'webkit/plugins/ppapi/file_path.h')
-rw-r--r-- | webkit/plugins/ppapi/file_path.h | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/webkit/plugins/ppapi/file_path.h b/webkit/plugins/ppapi/file_path.h new file mode 100644 index 0000000..6d6f4dc --- /dev/null +++ b/webkit/plugins/ppapi/file_path.h @@ -0,0 +1,50 @@ +// Copyright (c) 2011 The Chromium Authors. All rights reserved. +// Use of this source code is governed by a BSD-style license that can be +// found in the LICENSE file. + +#ifndef WEBKIT_PLUGINS_PPAPI_FILE_PATH_H_ +#define WEBKIT_PLUGINS_PPAPI_FILE_PATH_H_ + +#include <string> + +#include "base/file_path.h" + +namespace webkit { +namespace ppapi { + +class PluginModule; + +// TODO(vtl): Once we put |::FilePath| into the |base| namespace, get rid of the +// |Pepper| (or |PEPPER_|) prefixes. Right now, it's just too +// confusing/dangerous! + +class PepperFilePath { + public: + enum Domain { + DOMAIN_INVALID = 0, + DOMAIN_ABSOLUTE, + DOMAIN_MODULE_LOCAL, + + // Used for validity-checking. + DOMAIN_MAX_VALID = DOMAIN_MODULE_LOCAL + }; + + PepperFilePath(); + PepperFilePath(Domain d, FilePath p); + + static PepperFilePath MakeAbsolute(const char* utf8_path); + static PepperFilePath MakeModuleLocal(PluginModule* module, + const char* utf8_path); + + Domain domain() const { return domain_; } + const FilePath& path() const { return path_; } + + private: + Domain domain_; + FilePath path_; +}; + +} // namespace ppapi +} // namespace webkit + +#endif // WEBKIT_PLUGINS_PPAPI_FILE_PATH_H_ |