MiKTeX 26.5-next
A scalable TeX distribution
Loading...
Searching...
No Matches
ConfigurationProvider.h
Go to the documentation of this file.
1
13
14#pragma once
15
16#include <string>
17
18#include <miktex/Configuration/config.h>
19
20#include <miktex/Util/PathName>
21
22#include "ConfigValue.h"
23#include "HasNamedValues.h"
24
27MIKTEX_CONFIG_BEGIN_NAMESPACE;
28
92
94class MIKTEXNOVTABLE ConfigurationProvider
95{
96
97public:
98
105 virtual bool MIKTEXTHISCALL TryGetConfigValue(const std::string& sectionName, const std::string& valueName, HasNamedValues* callback, std::string& value) = 0;
106
112 virtual bool MIKTEXTHISCALL TryGetConfigValue(const std::string& sectionName, const std::string& valueName, std::string& value) = 0;
113
121 virtual ConfigValue MIKTEXTHISCALL GetConfigValue(const std::string& sectionName, const std::string& valueName, const ConfigValue& defaultValue, HasNamedValues* callback) = 0;
122
129 virtual ConfigValue MIKTEXTHISCALL GetConfigValue(const std::string& sectionName, const std::string& valueName, const ConfigValue& defaultValue) = 0;
130
137 virtual ConfigValue MIKTEXTHISCALL GetConfigValue(const std::string& sectionName, const std::string& valueName, HasNamedValues* callback) = 0;
138
144 virtual ConfigValue MIKTEXTHISCALL GetConfigValue(const std::string& sectionName, const std::string& valueName) = 0;
145
151 virtual void MIKTEXTHISCALL SetConfigValue(const std::string& sectionName, const std::string& valueName, const ConfigValue& value) = 0;
152
156 virtual MiKTeX::Util::PathName MIKTEXTHISCALL GetSpecialPath(SpecialPath specialPath) = 0;
157};
158
159MIKTEX_CONFIG_END_NAMESPACE;
Configuration value.
SpecialPath
Special path names.
Definition ConfigurationProvider.h:31
@ CommonConfigRoot
System-wide configuration root directory.
Definition ConfigurationProvider.h:45
@ UserConfigRoot
User configuration root directory.
Definition ConfigurationProvider.h:33
@ ConfigRoot
The effective configuration root directory.
Definition ConfigurationProvider.h:72
@ DistRoot
The root directory of the MiKTeX installation.
Definition ConfigurationProvider.h:63
@ InternalBinDirectory
The effective directory for internal MiKTeX binaries.
Definition ConfigurationProvider.h:84
@ CommonDataRoot
System-wide data root directory.
Definition ConfigurationProvider.h:48
@ UserInstallRoot
User installation root directory.
Definition ConfigurationProvider.h:39
@ LogDirectory
The effective directory for log files.
Definition ConfigurationProvider.h:90
@ UserLogDirectory
User log directory.
Definition ConfigurationProvider.h:42
@ InstallRoot
The effective installation root directory.
Definition ConfigurationProvider.h:78
@ PortableMount
The portable mount directory.
Definition ConfigurationProvider.h:60
@ CommonInstallRoot
System-wide installation root directory.
Definition ConfigurationProvider.h:51
@ UserDataRoot
User data root directory.
Definition ConfigurationProvider.h:36
@ BinDirectory
The effective directory for MiKTeX binaries.
Definition ConfigurationProvider.h:81
@ DataRoot
The effective data root directory.
Definition ConfigurationProvider.h:75
@ CommonLogDirectory
System-wide log directory.
Definition ConfigurationProvider.h:54
@ LinkTargetDirectory
The effective directory in which to create symbolic links to the MiKTeX executables.
Definition ConfigurationProvider.h:87
@ PortableRoot
The portable root directory.
Definition ConfigurationProvider.h:57
HasNamedValues interface.
MiKTeX configuration value.
Definition ConfigValue.h:68
The MiKTeX ConfigurationProvider interface.
Definition ConfigurationProvider.h:95
virtual void SetConfigValue(const std::string &sectionName, const std::string &valueName, const ConfigValue &value)=0
virtual MiKTeX::Util::PathName GetSpecialPath(SpecialPath specialPath)=0
virtual ConfigValue GetConfigValue(const std::string &sectionName, const std::string &valueName, const ConfigValue &defaultValue, HasNamedValues *callback)=0
virtual bool TryGetConfigValue(const std::string &sectionName, const std::string &valueName, std::string &value)=0
virtual ConfigValue GetConfigValue(const std::string &sectionName, const std::string &valueName, const ConfigValue &defaultValue)=0
virtual ConfigValue GetConfigValue(const std::string &sectionName, const std::string &valueName, HasNamedValues *callback)=0
virtual ConfigValue GetConfigValue(const std::string &sectionName, const std::string &valueName)=0
virtual bool TryGetConfigValue(const std::string &sectionName, const std::string &valueName, HasNamedValues *callback, std::string &value)=0
Definition HasNamedValues.h:23
Instances of this class can be used to store path names.
Definition PathName.h:64