#include <DataDirLocater.h>
List of all members.
Detailed Description
Definition at line 22 of file DataDirLocater.h.
Constructor & Destructor Documentation
| DataDirLocater::DataDirLocater |
( |
| ) |
|
Member Function Documentation
| void DataDirLocater::AddCurWorkDir |
( |
| ) |
|
|
private |
| void DataDirLocater::AddDir |
( |
const std::string & |
dir | ) |
|
|
private |
| void DataDirLocater::AddDirs |
( |
const std::string & |
dirs | ) |
|
|
private |
- Parameters:
-
| dirs | colon separated string, use ';' on Windows and ':' on all other OSs |
| void DataDirLocater::AddEtcDirs |
( |
| ) |
|
|
private |
| void DataDirLocater::AddHomeDirs |
( |
| ) |
|
|
private |
| void DataDirLocater::AddPortableDir |
( |
| ) |
|
|
private |
| void DataDirLocater::AddShareDirs |
( |
| ) |
|
|
private |
| void DataDirLocater::ChangeCwdToWriteDir |
( |
| ) |
|
| void DataDirLocater::Check |
( |
| ) |
|
| bool DataDirLocater::DeterminePermissions |
( |
DataDir * |
dataDir | ) |
|
|
private |
- Returns:
- whether we have permissions to read the data directory.
| void DataDirLocater::FilterUsableDataDirs |
( |
| ) |
|
|
private |
| void DataDirLocater::FindWriteableDataDir |
( |
| ) |
|
|
private |
| std::vector<std::string> DataDirLocater::GetDataDirPaths |
( |
| ) |
const |
| const std::vector<DataDir>& DataDirLocater::GetDataDirs |
( |
| ) |
const |
| std::string DataDirLocater::GetIsolationModeDir |
( |
| ) |
const |
|
inline |
Returns the isolation-mode directory, or "", if the default one is used. The default one is CWD or CWD/.., in case of a versioned data-dir. If the env var SPRING_ISOLATED is set to a valid directory, it replaced the above mentioned default. This is only relevant if isolation-mode is active.
- See also:
- IsIsolationMode
Definition at line 91 of file DataDirLocater.h.
References isolationModeDir.
| const DataDir* DataDirLocater::GetWriteDir |
( |
| ) |
const |
|
inline |
| std::string DataDirLocater::GetWriteDirPath |
( |
| ) |
const |
| static bool DataDirLocater::IsInstallDirDataDir |
( |
| ) |
|
|
staticprivate |
Determines whether a given path may be a data-dir for multiple engine versions. This is done by checking the precense of some dirs, like "./maps/" and "./games/". You may think of this as denoting multi-engine-version portable-mode. This will return true on a default install on windows.
- Parameters:
-
| dirPath | a path to a dir to check for whether it is a data-dir for multiple engine versions. |
- Returns:
- whether dirPath may be a data-dir for multiple engine versions.
| bool DataDirLocater::IsIsolationMode |
( |
| ) |
const |
|
inline |
Returns whether isolation-mode is enabled. In isolation-mode, we will only use a singel data-dir. This defaults to false, but can be set to true by setting the env var SPRING_ISOLATED.
- See also:
- GetIsolationModeDir
Definition at line 66 of file DataDirLocater.h.
References isolationMode.
| static bool DataDirLocater::IsPortableMode |
( |
| ) |
|
|
static |
Determines whether we are in portable mode. It defines portable mode as: The spring binary (spring binary), the unitsync and springsettings.cfg are in the same directory.
| bool DataDirLocater::IsWriteableDir |
( |
DataDir * |
dataDir | ) |
|
|
private |
| void DataDirLocater::LocateDataDirs |
( |
| ) |
|
Attempts to locate a writable data dir, and then tries to chdir to it. As the writable data dir will usually be the current dir already under windows, the chdir will have no effect.
The first dir added will be the writable data dir.
- See also:
- Manpage
| static bool DataDirLocater::LooksLikeMultiVersionDataDir |
( |
const std::string & |
dirPath | ) |
|
|
staticprivate |
| void DataDirLocater::SetIsolationMode |
( |
bool |
enabled | ) |
|
|
inline |
| void DataDirLocater::SetIsolationModeDir |
( |
const std::string & |
dir | ) |
|
|
inline |
Sets the isolation-mode directory. If set to "", we use the default one, which is is CWD or CWD/.., in case of a versioned data-dir. This is only relevant if isolation-mode is active.
- See also:
- SetIsolationMode
Definition at line 100 of file DataDirLocater.h.
References isolationModeDir.
| void DataDirLocater::SetWriteDir |
( |
const std::string & |
dir | ) |
|
|
inline |
| std::string DataDirLocater::SubstEnvVars |
( |
const std::string & |
in | ) |
const |
|
private |
| void DataDirLocater::UpdateIsolationModeByEnvVar |
( |
| ) |
|
Member Data Documentation
| std::vector<DataDir> DataDirLocater::dataDirs |
|
private |
| std::string DataDirLocater::forcedWriteDir |
|
private |
| bool DataDirLocater::isolationMode |
|
private |
| std::string DataDirLocater::isolationModeDir |
|
private |
| const DataDir* DataDirLocater::writeDir |
|
private |
The documentation for this class was generated from the following file: