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