|
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 (const JSON_SETTINGS &aSettings, bool aResetIfMissing=true) const override |
| Loads the value of this parameter from JSON to the underlying storage. | |
| void | Store (JSON_SETTINGS *aSettings) const override |
| Stores the value of this parameter to the given JSON_SETTINGS object. | |
| ValueType | GetDefault () const |
| virtual void | SetDefault () override |
| bool | MatchesFile (const JSON_SETTINGS &aSettings) const override |
| Checks whether the parameter in memory matches the one in a given JSON file. | |
| const std::string & | GetJsonPath () const |
| bool | ClearUnknownKeys () const |
| void | SetClearUnknownKeys (bool aSet=true) |
Protected Attributes | |
| std::string | m_path |
| Address of the param in the json files. | |
| bool | m_readOnly |
| Indicates param pointer should never be overwritten. | |
| bool | m_clearUnknownKeys |
| Keys should be cleared from source rather than merged. | |
Private Attributes | |
| ValueType * | m_ptr |
| ValueType | m_default |
| ValueType | m_min |
| ValueType | m_max |
| bool | m_use_minmax |
| double | m_scale |
| double | m_invScale |
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 392 of file parameters.h.
|
inline |
Definition at line 395 of file parameters.h.
References m_default, m_invScale, m_max, m_min, m_ptr, m_scale, m_use_minmax, and PARAM_BASE::PARAM_BASE().
|
inline |
Definition at line 407 of file parameters.h.
References m_default, m_invScale, m_max, m_min, m_ptr, m_scale, m_use_minmax, and PARAM_BASE::PARAM_BASE().
|
inlineinherited |
Definition at line 78 of file parameters.h.
References m_clearUnknownKeys.
|
inline |
Definition at line 447 of file parameters.h.
References m_default.
|
inlineinherited |
Definition at line 72 of file parameters.h.
References 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 419 of file parameters.h.
References JSON_SETTINGS::Get(), KiROUND(), m_default, m_invScale, m_max, m_min, PARAM_BASE::m_path, m_ptr, PARAM_BASE::m_readOnly, and 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 457 of file parameters.h.
References JSON_SETTINGS::Get(), m_invScale, PARAM_BASE::m_path, and m_ptr.
|
inlineinherited |
Definition at line 80 of file parameters.h.
References m_clearUnknownKeys.
Referenced by PARAM_MAP< Value >::PARAM_MAP().
|
inlineoverridevirtual |
Implements PARAM_BASE.
Definition at line 452 of file parameters.h.
|
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 442 of file parameters.h.
References m_invScale, PARAM_BASE::m_path, m_ptr, and JSON_SETTINGS::Set().
|
protectedinherited |
Keys should be cleared from source rather than merged.
This is useful for things that are semantically an array but stored as a map, such as textVars.
Definition at line 85 of file parameters.h.
Referenced by ClearUnknownKeys(), PARAM_BASE(), PARAM_WXSTRING_MAP::PARAM_WXSTRING_MAP(), and SetClearUnknownKeys().
|
private |
Definition at line 467 of file parameters.h.
Referenced by GetDefault(), Load(), PARAM_SCALED(), PARAM_SCALED(), and SetDefault().
|
private |
Definition at line 472 of file parameters.h.
Referenced by Load(), MatchesFile(), PARAM_SCALED(), PARAM_SCALED(), and Store().
|
private |
Definition at line 469 of file parameters.h.
Referenced by Load(), PARAM_SCALED(), and PARAM_SCALED().
|
private |
Definition at line 468 of file parameters.h.
Referenced by Load(), PARAM_SCALED(), and PARAM_SCALED().
|
protectedinherited |
Address of the param in the json files.
Definition at line 83 of file parameters.h.
Referenced by GetJsonPath(), COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_LAMBDA< ValueType >::Load(), PARAM_LIST< Type >::Load(), PARAM_MAP< Value >::Load(), PARAM_SCALED< ValueType >::Load(), PARAM_SET< Type >::Load(), PARAM_WXSTRING_MAP::Load(), COLOR_MAP_PARAM::MatchesFile(), PARAM< ValueType >::MatchesFile(), PARAM_ENUM< EnumType >::MatchesFile(), PARAM_LAMBDA< ValueType >::MatchesFile(), PARAM_LIST< Type >::MatchesFile(), PARAM_MAP< Value >::MatchesFile(), PARAM_SCALED< ValueType >::MatchesFile(), PARAM_SET< Type >::MatchesFile(), PARAM_WXSTRING_MAP::MatchesFile(), PARAM_BASE(), COLOR_MAP_PARAM::Store(), PARAM< ValueType >::Store(), PARAM_ENUM< EnumType >::Store(), PARAM_LAMBDA< ValueType >::Store(), PARAM_LIST< Type >::Store(), PARAM_MAP< Value >::Store(), PARAM_SCALED< ValueType >::Store(), PARAM_SET< Type >::Store(), and PARAM_WXSTRING_MAP::Store().
|
private |
Definition at line 466 of file parameters.h.
Referenced by Load(), MatchesFile(), PARAM_SCALED(), PARAM_SCALED(), SetDefault(), and Store().
|
protectedinherited |
Indicates param pointer should never be overwritten.
Definition at line 84 of file parameters.h.
Referenced by COLOR_MAP_PARAM::Load(), PARAM< ValueType >::Load(), PARAM_ENUM< EnumType >::Load(), PARAM_LAMBDA< ValueType >::Load(), PARAM_LIST< Type >::Load(), PARAM_MAP< Value >::Load(), PARAM_SCALED< ValueType >::Load(), PARAM_SET< Type >::Load(), PARAM_WXSTRING_MAP::Load(), and PARAM_BASE().
|
private |
Definition at line 471 of file parameters.h.
Referenced by PARAM_SCALED(), and PARAM_SCALED().
|
private |
Definition at line 470 of file parameters.h.
Referenced by Load(), PARAM_SCALED(), and PARAM_SCALED().