#include <PluginPathSetter.h>

Classes

struct  PathConfig
 

Public Types

typedef std::pair< KnownPlugins::PluginType, KnownPlugins::BinaryFormat > TypeKey
 
typedef std::vector< TypeKeyTypeKeys
 
typedef std::map< TypeKey, PathConfigPaths
 

Static Public Member Functions

static void initialiseEnvironmentVariables ()
 Update *_PATH environment variables from the settings, on application startup. More...
 
static Paths getDefaultPaths ()
 Return default values of paths only, without any environment variables or user-defined preferences. More...
 
static Paths getEnvironmentPaths ()
 Return paths arising from environment variables only, falling back to the defaults, without any user-defined preferences. More...
 
static Paths getPaths ()
 Return paths arising from user settings + environment variables + defaults as appropriate. More...
 
static void savePathSettings (Paths paths)
 Save the given paths to the settings. More...
 
static QString getOriginalEnvironmentValue (QString envVariable)
 Return the original value observed on startup for the given environment variable, if it is one of the variables used by a known path config. More...
 

Static Private Member Functions

static std::vector< TypeKeygetSupportedKeys ()
 
static Paths getEnvironmentPathsUncached (const TypeKeys &keys)
 
static QString getSettingTagFor (TypeKey)
 

Static Private Attributes

static Paths m_defaultPaths
 
static Paths m_environmentPaths
 
static std::map< QString, QString > m_originalEnvValues
 
static TypeKeys m_supportedKeys
 
static QMutex m_mutex
 

Detailed Description

Definition at line 26 of file PluginPathSetter.h.

Member Typedef Documentation

typedef std::pair<KnownPlugins::PluginType, KnownPlugins::BinaryFormat> PluginPathSetter::TypeKey

Definition at line 30 of file PluginPathSetter.h.

typedef std::vector<TypeKey> PluginPathSetter::TypeKeys

Definition at line 32 of file PluginPathSetter.h.

Definition at line 46 of file PluginPathSetter.h.

Member Function Documentation

void PluginPathSetter::initialiseEnvironmentVariables ( )
static

Update *_PATH environment variables from the settings, on application startup.

Must be called exactly once, before any of the other functions in this class has been called

Definition at line 233 of file PluginPathSetter.cpp.

References getEnvUtf8(), putEnvUtf8(), and SVDEBUG.

PluginPathSetter::Paths PluginPathSetter::getDefaultPaths ( )
static

Return default values of paths only, without any environment variables or user-defined preferences.

Definition at line 102 of file PluginPathSetter.cpp.

PluginPathSetter::Paths PluginPathSetter::getEnvironmentPaths ( )
static

Return paths arising from environment variables only, falling back to the defaults, without any user-defined preferences.

Definition at line 130 of file PluginPathSetter.cpp.

PluginPathSetter::Paths PluginPathSetter::getPaths ( )
static

Return paths arising from user settings + environment variables + defaults as appropriate.

Definition at line 155 of file PluginPathSetter.cpp.

References getEnvUtf8().

void PluginPathSetter::savePathSettings ( Paths  paths)
static

Save the given paths to the settings.

Definition at line 204 of file PluginPathSetter.cpp.

QString PluginPathSetter::getOriginalEnvironmentValue ( QString  envVariable)
static

Return the original value observed on startup for the given environment variable, if it is one of the variables used by a known path config.

Definition at line 223 of file PluginPathSetter.cpp.

PluginPathSetter::Paths PluginPathSetter::getEnvironmentPathsUncached ( const TypeKeys keys)
staticprivate

Definition at line 78 of file PluginPathSetter.cpp.

QString PluginPathSetter::getSettingTagFor ( TypeKey  tk)
staticprivate

Definition at line 145 of file PluginPathSetter.cpp.

Member Data Documentation

PluginPathSetter::Paths PluginPathSetter::m_defaultPaths
staticprivate

Definition at line 74 of file PluginPathSetter.h.

PluginPathSetter::Paths PluginPathSetter::m_environmentPaths
staticprivate

Definition at line 75 of file PluginPathSetter.h.

std::map< QString, QString > PluginPathSetter::m_originalEnvValues
staticprivate

Definition at line 76 of file PluginPathSetter.h.

PluginPathSetter::TypeKeys PluginPathSetter::m_supportedKeys
staticprivate

Definition at line 77 of file PluginPathSetter.h.

QMutex PluginPathSetter::m_mutex
staticprivate

Definition at line 78 of file PluginPathSetter.h.


The documentation for this class was generated from the following files: