KiCad PCB EDA Suite
|
Represents a parameter that has a scaling factor between the value in the file and the value used internally (i.e. More...
#include <parameters.h>
Public Member Functions | |
PARAM_SCALED (const std::string &aJsonPath, ValueType *aPtr, ValueType aDefault, double aScale=1.0, bool aReadOnly=false) | |
PARAM_SCALED (const std::string &aJsonPath, ValueType *aPtr, ValueType aDefault, ValueType aMin, ValueType aMax, double aScale=1.0, bool aReadOnly=false) | |
void | Load (JSON_SETTINGS *aSettings, bool aResetIfMissing=true) const override |
Loads the value of this parameter from JSON to the underlying storage. More... | |
void | Store (JSON_SETTINGS *aSettings) const override |
Stores the value of this parameter to the given JSON_SETTINGS object. More... | |
ValueType | GetDefault () const |
virtual void | SetDefault () override |
bool | MatchesFile (JSON_SETTINGS *aSettings) const override |
Checks whether the parameter in memory matches the one in a given JSON file. More... | |
const std::string & | GetJsonPath () const |
Protected Attributes | |
std::string | m_path |
the string used to store the param in json files More... | |
bool | m_readOnly |
! True if the parameter pointer should never be overwritten More... | |
Private Attributes | |
ValueType * | m_ptr |
ValueType | m_default |
ValueType | m_min |
ValueType | m_max |
bool | m_use_minmax |
double | m_scale |
Represents a parameter that has a scaling factor between the value in the file and the value used internally (i.e.
the value pointer). This basically only makes sense to use with int or double as ValueType.
ValueType | is the internal type: the file always stores a double. |
Definition at line 334 of file parameters.h.
|
inline |
Definition at line 337 of file parameters.h.
|
inline |
Definition at line 348 of file parameters.h.
|
inline |
Definition at line 387 of file parameters.h.
References PARAM_SCALED< ValueType >::m_default.
|
inlineinherited |
Definition at line 69 of file parameters.h.
References PARAM_BASE::m_path.
|
inlineoverridevirtual |
Loads the value of this parameter from JSON to the underlying storage.
aSettings | is the JSON_SETTINGS object to load from. |
aResetIfMissing | if true will set the parameter to its default value if load fails |
Implements PARAM_BASE.
Definition at line 359 of file parameters.h.
References JSON_SETTINGS::Get(), PARAM_SCALED< ValueType >::m_default, PARAM_SCALED< ValueType >::m_max, PARAM_SCALED< ValueType >::m_min, PARAM_BASE::m_path, PARAM_SCALED< ValueType >::m_ptr, PARAM_BASE::m_readOnly, PARAM_SCALED< ValueType >::m_scale, and PARAM_SCALED< ValueType >::m_use_minmax.
|
inlineoverridevirtual |
Checks whether the parameter in memory matches the one in a given JSON file.
aSettings | is a JSON_SETTINGS to check the JSON file contents of |
Implements PARAM_BASE.
Definition at line 397 of file parameters.h.
References JSON_SETTINGS::Get(), PARAM_BASE::m_path, PARAM_SCALED< ValueType >::m_ptr, and PARAM_SCALED< ValueType >::m_scale.
|
inlineoverridevirtual |
Implements PARAM_BASE.
Definition at line 392 of file parameters.h.
References PARAM_SCALED< ValueType >::m_default, and PARAM_SCALED< ValueType >::m_ptr.
|
inlineoverridevirtual |
Stores the value of this parameter to the given JSON_SETTINGS object.
aSettings | is the JSON_SETTINGS object to store into. |
Implements PARAM_BASE.
Definition at line 382 of file parameters.h.
References PARAM_BASE::m_path, PARAM_SCALED< ValueType >::m_ptr, PARAM_SCALED< ValueType >::m_scale, and JSON_SETTINGS::Set().
|
private |
Definition at line 407 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::GetDefault(), PARAM_SCALED< ValueType >::Load(), and PARAM_SCALED< ValueType >::SetDefault().
|
private |
Definition at line 409 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::Load().
|
private |
Definition at line 408 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::Load().
|
protectedinherited |
the string used to store the param in json files
Definition at line 75 of file parameters.h.
Referenced by PARAM_BASE::GetJsonPath(), COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_SCALED< ValueType >::Load(), COLOR_MAP_PARAM::MatchesFile(), PARAM< ValueType >::MatchesFile(), PARAM_PATH::MatchesFile(), PARAM_ENUM< EnumType >::MatchesFile(), PARAM_SCALED< ValueType >::MatchesFile(), PARAM_PATH_LIST::MatchesFile(), PARAM_WXSTRING_MAP::MatchesFile(), COLOR_MAP_PARAM::Store(), PARAM< ValueType >::Store(), PARAM_PATH::Store(), PARAM_ENUM< EnumType >::Store(), PARAM_LAMBDA< ValueType >::Store(), PARAM_SCALED< ValueType >::Store(), and PARAM_PATH_LIST::Store().
|
private |
Definition at line 406 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::Load(), PARAM_SCALED< ValueType >::MatchesFile(), PARAM_SCALED< ValueType >::SetDefault(), and PARAM_SCALED< ValueType >::Store().
|
protectedinherited |
! True if the parameter pointer should never be overwritten
Definition at line 78 of file parameters.h.
Referenced by COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_PATH::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_SCALED< ValueType >::Load(), and PARAM_PATH_LIST::Load().
|
private |
Definition at line 411 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::Load(), PARAM_SCALED< ValueType >::MatchesFile(), and PARAM_SCALED< ValueType >::Store().
|
private |
Definition at line 410 of file parameters.h.
Referenced by PARAM_SCALED< ValueType >::Load().