xref: /aosp_15_r20/external/libchrome/base/base_paths.h (revision 635a864187cb8b6c713ff48b7e790a6b21769273)
1*635a8641SAndroid Build Coastguard Worker // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2*635a8641SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be
3*635a8641SAndroid Build Coastguard Worker // found in the LICENSE file.
4*635a8641SAndroid Build Coastguard Worker 
5*635a8641SAndroid Build Coastguard Worker #ifndef BASE_BASE_PATHS_H_
6*635a8641SAndroid Build Coastguard Worker #define BASE_BASE_PATHS_H_
7*635a8641SAndroid Build Coastguard Worker 
8*635a8641SAndroid Build Coastguard Worker // This file declares path keys for the base module.  These can be used with
9*635a8641SAndroid Build Coastguard Worker // the PathService to access various special directories and files.
10*635a8641SAndroid Build Coastguard Worker 
11*635a8641SAndroid Build Coastguard Worker #include "build/build_config.h"
12*635a8641SAndroid Build Coastguard Worker 
13*635a8641SAndroid Build Coastguard Worker #if defined(OS_WIN)
14*635a8641SAndroid Build Coastguard Worker #include "base/base_paths_win.h"
15*635a8641SAndroid Build Coastguard Worker #elif defined(OS_MACOSX)
16*635a8641SAndroid Build Coastguard Worker #include "base/base_paths_mac.h"
17*635a8641SAndroid Build Coastguard Worker #elif defined(OS_ANDROID)
18*635a8641SAndroid Build Coastguard Worker #include "base/base_paths_android.h"
19*635a8641SAndroid Build Coastguard Worker #endif
20*635a8641SAndroid Build Coastguard Worker 
21*635a8641SAndroid Build Coastguard Worker #if defined(OS_POSIX) || defined(OS_FUCHSIA)
22*635a8641SAndroid Build Coastguard Worker #include "base/base_paths_posix.h"
23*635a8641SAndroid Build Coastguard Worker #endif
24*635a8641SAndroid Build Coastguard Worker 
25*635a8641SAndroid Build Coastguard Worker namespace base {
26*635a8641SAndroid Build Coastguard Worker 
27*635a8641SAndroid Build Coastguard Worker enum BasePathKey {
28*635a8641SAndroid Build Coastguard Worker   PATH_START = 0,
29*635a8641SAndroid Build Coastguard Worker 
30*635a8641SAndroid Build Coastguard Worker   DIR_CURRENT,       // Current directory.
31*635a8641SAndroid Build Coastguard Worker   DIR_EXE,           // Directory containing FILE_EXE.
32*635a8641SAndroid Build Coastguard Worker   DIR_MODULE,        // Directory containing FILE_MODULE.
33*635a8641SAndroid Build Coastguard Worker   DIR_ASSETS,        // Directory that contains application assets.
34*635a8641SAndroid Build Coastguard Worker   DIR_TEMP,          // Temporary directory.
35*635a8641SAndroid Build Coastguard Worker   DIR_HOME,          // User's root home directory. On Windows this will look
36*635a8641SAndroid Build Coastguard Worker                      // like "C:\Users\<user>"  which isn't necessarily a great
37*635a8641SAndroid Build Coastguard Worker                      // place to put files.
38*635a8641SAndroid Build Coastguard Worker   FILE_EXE,          // Path and filename of the current executable.
39*635a8641SAndroid Build Coastguard Worker   FILE_MODULE,       // Path and filename of the module containing the code for
40*635a8641SAndroid Build Coastguard Worker                      // the PathService (which could differ from FILE_EXE if the
41*635a8641SAndroid Build Coastguard Worker                      // PathService were compiled into a shared object, for
42*635a8641SAndroid Build Coastguard Worker                      // example).
43*635a8641SAndroid Build Coastguard Worker   DIR_SOURCE_ROOT,   // Returns the root of the source tree. This key is useful
44*635a8641SAndroid Build Coastguard Worker                      // for tests that need to locate various resources. It
45*635a8641SAndroid Build Coastguard Worker                      // should not be used outside of test code.
46*635a8641SAndroid Build Coastguard Worker   DIR_USER_DESKTOP,  // The current user's Desktop.
47*635a8641SAndroid Build Coastguard Worker 
48*635a8641SAndroid Build Coastguard Worker   DIR_TEST_DATA,  // Used only for testing.
49*635a8641SAndroid Build Coastguard Worker 
50*635a8641SAndroid Build Coastguard Worker   PATH_END
51*635a8641SAndroid Build Coastguard Worker };
52*635a8641SAndroid Build Coastguard Worker 
53*635a8641SAndroid Build Coastguard Worker }  // namespace base
54*635a8641SAndroid Build Coastguard Worker 
55*635a8641SAndroid Build Coastguard Worker #endif  // BASE_BASE_PATHS_H_
56