Home | History | Annotate | Download | only in nacl_io
      1 // Copyright (c) 2013 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 LIBRARIES_NACL_IO_MOUNT_FACTORY_H_
      6 #define LIBRARIES_NACL_IO_MOUNT_FACTORY_H_
      7 
      8 #include <map>
      9 #include <string>
     10 
     11 #include "nacl_io/error.h"
     12 #include "sdk_util/scoped_ref.h"
     13 
     14 namespace nacl_io {
     15 
     16 class PepperInterface;
     17 class Mount;
     18 
     19 typedef std::map<std::string, std::string> StringMap_t;
     20 
     21 class MountFactory {
     22  public:
     23   virtual ~MountFactory() {}
     24   virtual Error CreateMount(int dev,
     25                             StringMap_t& args,
     26                             PepperInterface* ppapi,
     27                             sdk_util::ScopedRef<Mount>* out_mount) = 0;
     28 };
     29 
     30 }  // namespace nacl_io
     31 
     32 #endif  // LIBRARIES_NACL_IO_MOUNT_FACTORY_H_
     33 
     34