• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef CHROME_BROWSER_MEDIA_GALLERIES_MEDIA_FILE_SYSTEM_CONTEXT_H_
6 #define CHROME_BROWSER_MEDIA_GALLERIES_MEDIA_FILE_SYSTEM_CONTEXT_H_
7 
8 // Manages isolated filesystem namespaces for media file systems.
9 
10 #include <string>
11 
12 namespace base {
13 class FilePath;
14 }
15 
16 class MediaFileSystemRegistry;
17 
18 class MediaFileSystemContext {
19  public:
~MediaFileSystemContext()20   virtual ~MediaFileSystemContext() {}
21 
22   // Register a new media file system for |path| as |fs_name|.
23   virtual bool RegisterFileSystem(const std::string& device_id,
24                                   const std::string& fs_name,
25                                   const base::FilePath& path) = 0;
26 
27   // Revoke the passed |fs_name|.
28   virtual void RevokeFileSystem(const std::string& fs_name) = 0;
29 
30   // Return the mount point root for the given |fs_name|. Returns an empty path
31   // if |fs_name| is not valid.
32   virtual base::FilePath GetRegisteredPath(
33       const std::string& fs_name) const = 0;
34 };
35 
36 #endif  // CHROME_BROWSER_MEDIA_GALLERIES_MEDIA_FILE_SYSTEM_CONTEXT_H_
37