32 #include <boost/filesystem.hpp> 
   40         inline std::string getUserConfigDirectory() {
 
   41             namespace fs = boost::filesystem;
 
   45             std::string configSubpath = 
"config";
 
   47 #if defined(OSVR_LINUX) && !defined(OSVR_ANDROID) 
   54                 configDir = *xdg_cache_dir;
 
   58                 configDir = fs::path(*home_dir) / 
".config";
 
   60             configDir /= fs::path(
"osvr");
 
   61 #elif defined(OSVR_MACOSX) 
   64                 configDir = *home_dir;
 
   66             configDir /= 
"Library" / fs::path(
"Application Support") / fs::path(
"OSVR") / configSubpath;
 
   67 #elif defined(OSVR_WINDOWS) 
   72                 configDir = *local_app_dir;
 
   77             configDir /= fs::path(
"OSVR") / configSubpath;
 
   80 #if defined(OSVR_ANDROID) 
   81             configDir = fs::path(
"/sdcard/osvr");
 
   83             auto ret = configDir.string();
 
   88             namespace fs = boost::filesystem;
 
   90             std::vector<std::string> names;
 
   91             std::string configFileName = getDefaultConfigFilename();
 
   93             auto userConfigDirectoryStr = getUserConfigDirectory();
 
   94             fs::path userConfigDirectory(userConfigDirectoryStr);
 
   96             auto userConfig = userConfigDirectory / configFileName;
 
   98             names.push_back(userConfig.string());
 
   99             names.push_back(configFileName);
 
Platform specific search paths for osvr server config files. 
boost::optional< std::string > getEnvironmentVariable(std::string const &var)
Gets an environment variable's value. On systems that don't distinguish between having a variable def...
OSVR_SERVER_EXPORT std::vector< std::string > getDefaultConfigFilePaths()
this returns a vector of default server configuration file paths.