file_system_mount_option.h revision 1320f92c476a1ad9d19dba2a48c72b75566198e9
1// Copyright 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 STORAGE_COMMON_FILEAPI_FILE_SYSTEM_MOUNT_OPTION_H_
6#define STORAGE_COMMON_FILEAPI_FILE_SYSTEM_MOUNT_OPTION_H_
7
8namespace storage {
9
10// Option for specifying if disk sync operation is wanted after copying.
11enum CopySyncOption {
12  COPY_SYNC_OPTION_NO_SYNC,
13  COPY_SYNC_OPTION_SYNC,
14};
15
16// Conveys options for a mounted file systems.
17class FileSystemMountOption {
18 public:
19  // Constructs with the default options.
20  FileSystemMountOption()
21      : copy_sync_option_(COPY_SYNC_OPTION_NO_SYNC) {}
22
23  // Constructs with the specified component.
24  explicit FileSystemMountOption(CopySyncOption copy_sync_option)
25      : copy_sync_option_(copy_sync_option) {}
26
27  CopySyncOption copy_sync_option() const {
28    return copy_sync_option_;
29  }
30
31 private:
32  CopySyncOption copy_sync_option_;
33};
34
35}  // namespace storage
36
37#endif  // STORAGE_COMMON_FILEAPI_FILE_SYSTEM_MOUNT_OPTION_H_
38