clang/win: Fix a few warnings/errors.
[chromium-blink-merge.git] / chromeos / chromeos_paths.h
blobbcaceede3a8a190f96415565b4cfbc142bb72b0f
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.
5 #ifndef CHROMEOS_CHROMEOS_PATHS_H_
6 #define CHROMEOS_CHROMEOS_PATHS_H_
8 #include "chromeos/chromeos_export.h"
10 namespace base {
11 class FilePath;
14 // This file declares path keys for the chromeos module. These can be used with
15 // the PathService to access various special directories and files.
17 namespace chromeos {
19 enum {
20 PATH_START = 7000,
22 FILE_DEFAULT_APP_ORDER, // Full path to the json file that defines the
23 // default app order.
24 DIR_USER_POLICY_KEYS, // Directory where the session_manager stores
25 // the user policy keys.
26 FILE_OWNER_KEY, // Full path to the owner key file.
27 FILE_INSTALL_ATTRIBUTES, // Full path to the install attributes file.
28 FILE_MACHINE_INFO, // Full path to machine hardware info file.
29 FILE_UPTIME, // Full path to the file via which the kernel
30 // exposes the current device uptime.
31 FILE_UPDATE_REBOOT_NEEDED_UPTIME, // Full path to a file in which Chrome can
32 // store the uptime at which an update
33 // became necessary. The file should be
34 // cleared on boot.
35 DIR_DEVICE_LOCAL_ACCOUNT_EXTENSIONS, // Directory under which a cache of
36 // force-installed extensions is
37 // maintained for each device-local
38 // account.
39 DIR_DEVICE_LOCAL_ACCOUNT_EXTERNAL_DATA, // Directory where external data
40 // referenced by policies is cached
41 // for device-local accounts.
42 DIR_DEVICE_LOCAL_ACCOUNT_COMPONENT_POLICY, // Directory where policy for
43 // components is stored for
44 // device-local accounts.
45 // Currently this is used for
46 // policy for extensions.
47 PATH_END
50 // Call once to register the provider for the path keys defined above.
51 CHROMEOS_EXPORT void RegisterPathProvider();
53 // Overrides some of the paths listed above so that those files can be used
54 // when not running on ChromeOS. The stubs files will be relative to
55 // |stubs_dir|. It is not valid to call this when running on ChromeOS.
56 CHROMEOS_EXPORT void RegisterStubPathOverrides(const base::FilePath& stubs_dir);
58 } // namespace chromeos
60 #endif // CHROMEOS_CHROMEOS_PATHS_H_