• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 // Copyright (c) 2006-2008 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 BASE_BASE_PATHS_H_
6 #define BASE_BASE_PATHS_H_
7 
8 // This file declares path keys for the base module.  These can be used with
9 // the PathService to access various special directories and files.
10 
11 #include "base/basictypes.h"
12 #if defined(OS_WIN)
13 #include "base/base_paths_win.h"
14 #elif defined(OS_MACOSX)
15 #include "base/base_paths_mac.h"
16 #endif
17 
18 namespace base {
19 
20 enum {
21   PATH_START = 0,
22 
23   DIR_CURRENT,  // current directory
24   DIR_EXE,      // directory containing FILE_EXE
25   DIR_MODULE,   // directory containing FILE_MODULE
26   DIR_TEMP,     // temporary directory
27   FILE_EXE,     // Path and filename of the current executable.
28   FILE_MODULE,  // Path and filename of the module containing the code for the
29                 // PathService (which could differ from FILE_EXE if the
30                 // PathService were compiled into a shared object, for example).
31   DIR_SOURCE_ROOT,  // Returns the root of the source tree.  This key is useful
32                     // for tests that need to locate various resources.  It
33                     // should not be used outside of test code.
34 #if defined(OS_POSIX)
35   DIR_USER_CACHE,   // Directory where user cache data resides. The Chromium
36                     // browser cache can be a subdirectory of DIR_USER_CACHE.
37                     // This is $XDG_CACHE_HOME on Linux and ~/Library/Caches
38                     // on Mac.
39 #endif
40 
41   PATH_END
42 };
43 
44 }  // namespace base
45 
46 #endif  // BASE_BASE_PATHS_H_
47