Firmware  0.8.0
Loading...
Searching...
No Matches
settings.hpp
Go to the documentation of this file.
1// Copyright (C) 2025 Vincent Hamp
2//
3// This program is free software: you can redistribute it and/or modify
4// it under the terms of the GNU General Public License as published by
5// the Free Software Foundation, either version 3 of the License, or
6// (at your option) any later version.
7//
8// This program is distributed in the hope that it will be useful,
9// but WITHOUT ANY WARRANTY; without even the implied warranty of
10// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11// GNU General Public License for more details.
12//
13// You should have received a copy of the GNU General Public License
14// along with this program. If not, see <https://www.gnu.org/licenses/>.
15
21
22#pragma once
23
24#include <string>
25#include <z21/z21.hpp>
26#include "base.hpp"
27
28namespace mem::nvs {
29
37class Settings : public Base {
38public:
39 Settings() : Base{"settings", NVS_READWRITE} {}
40
41 std::string getStationmDNS() const;
42 esp_err_t setStationmDNS(std::string_view str);
43
44 std::string getStationSSID() const;
45 esp_err_t setStationSSID(std::string_view str);
46
47 std::string getStationPassword() const;
48 esp_err_t setStationPassword(std::string_view str);
49
50 std::string getStationAlternativeSSID() const;
51 esp_err_t setStationAlternativeSSID(std::string_view str);
52
53 std::string getStationAlternativePassword() const;
54 esp_err_t setStationAlternativePassword(std::string_view str);
55
56 std::string getStationIP() const;
57 esp_err_t setStationIP(std::string_view str);
58
59 std::string getStationNetmask() const;
60 esp_err_t setStationNetmask(std::string_view str);
61
62 std::string getStationGateway() const;
63 esp_err_t setStationGateway(std::string_view str);
64
65 uint8_t getHttpReceiveTimeout() const;
66 esp_err_t setHttpReceiveTimeout(uint8_t value);
67
68 uint8_t getHttpTransmitTimeout() const;
69 esp_err_t setHttpTransmitTimeout(uint8_t value);
70
71 bool getHttpExitMessage() const;
72 esp_err_t setHttpExitMessage(bool value);
73
76
79
80 uint8_t getLedDutyCycleBug() const;
81 esp_err_t setLedDutyCycleBug(uint8_t value);
82
83 uint8_t getLedDutyCycleWiFi() const;
84 esp_err_t setLedDutyCycleWiFi(uint8_t value);
85
86 uint8_t getCurrentShortCircuitTime() const;
87 esp_err_t setCurrentShortCircuitTime(uint8_t value);
88
89 uint8_t getDccPreamble() const;
90 esp_err_t setDccPreamble(uint8_t value);
91
92 uint8_t getDccBit1Duration() const;
93 esp_err_t setDccBit1Duration(uint8_t value);
94
95 uint8_t getDccBit0Duration() const;
96 esp_err_t setDccBit0Duration(uint8_t value);
97
98 uint8_t getDccBiDiBitDuration() const;
99 esp_err_t setDccBiDiBitDuration(uint8_t value);
100
101 uint8_t getDccProgrammingType() const;
102 esp_err_t setDccProgrammingType(uint8_t value);
103
104 uint8_t getDccStartupResetPacketCount() const;
105 esp_err_t setDccStartupResetPacketCount(uint8_t value);
106
107 uint8_t getDccContinueResetPacketCount() const;
108 esp_err_t setDccContinueResetPacketCount(uint8_t value);
109
110 uint8_t getDccProgramPacketCount() const;
111 esp_err_t setDccProgramPacketCount(uint8_t value);
112
113 bool getDccBitVerifyTo1() const;
114 esp_err_t setDccBitVerifyTo1(bool value);
115
116 uint8_t getDccProgrammingAckCurrent() const;
117 esp_err_t setDccProgrammingAckCurrent(uint8_t value);
118
119 uint8_t getDccLocoFlags() const;
120 esp_err_t setDccLocoFlags(uint8_t value);
121
122 uint8_t getDccAccessoryFlags() const;
123 esp_err_t setDccAccessoryFlags(uint8_t value);
124
125 uint8_t getDccAccessorySwitchTime() const;
126 esp_err_t setDccAccessorySwitchTime(uint8_t value);
127
128 uint8_t getDccAccessoryPacketCount() const;
129 esp_err_t setDccAccessorPacketCount(uint8_t value);
130
131 uint8_t getExtensionFlags() const;
132 esp_err_t setExtensionFlags(uint8_t value);
133};
134
135} // namespace mem::nvs
NVS base.
Base(char const *namespace_name, nvs_open_mode_t open_mode)
Ctor.
Definition base.cpp:34
uint8_t getDccBiDiBitDuration() const
Get DCC BiDi bit duration.
Definition settings.cpp:429
std::string getStationGateway() const
Get station gateway.
Definition settings.cpp:171
esp_err_t setStationAlternativeSSID(std::string_view str)
Set alternative station SSID.
Definition settings.cpp:103
esp_err_t setDccAccessorySwitchTime(uint8_t value)
Set DCC accessory switch time.
Definition settings.cpp:638
std::string getStationPassword() const
Get station password.
Definition settings.cpp:70
esp_err_t setDccBit0Duration(uint8_t value)
Set DCC bit 0 duration.
Definition settings.cpp:420
uint8_t getDccBit0Duration() const
Get DCC bit 0 duration.
Definition settings.cpp:408
esp_err_t setStationAlternativePassword(std::string_view str)
Set alternative station password.
Definition settings.cpp:124
std::string getStationAlternativeSSID() const
Get alternative station SSID.
Definition settings.cpp:89
std::string getStationmDNS() const
Get station mDNS.
Definition settings.cpp:30
esp_err_t setDccBiDiBitDuration(uint8_t value)
Set DCC BiDi bit duration.
Definition settings.cpp:443
esp_err_t setHttpExitMessage(bool value)
Set HTTP exit message.
Definition settings.cpp:249
uint8_t getDccProgramPacketCount() const
Get DCC program packet count.
Definition settings.cpp:518
esp_err_t setStationGateway(std::string_view str)
Set station gateway.
Definition settings.cpp:185
esp_err_t setDccAccessorPacketCount(uint8_t value)
Set DCC accessory packet count.
Definition settings.cpp:660
uint8_t getDccAccessoryPacketCount() const
Get DCC accessory packet count.
Definition settings.cpp:645
uint8_t getCurrentShortCircuitTime() const
Get current short circuit time.
Definition settings.cpp:344
Settings()
Definition settings.hpp:39
esp_err_t setDccAccessoryFlags(uint8_t value)
Set DCC accessory flags.
Definition settings.cpp:617
uint8_t getDccProgrammingAckCurrent() const
Get DCC programming ack current.
Definition settings.cpp:560
esp_err_t setCurrentLimitService(drv::out::track::CurrentLimit value)
Set current limit in service mode.
Definition settings.cpp:296
uint8_t getDccLocoFlags() const
Get DCC loco flags.
Definition settings.cpp:583
std::string getStationIP() const
Get station IP.
Definition settings.cpp:131
esp_err_t setLedDutyCycleWiFi(uint8_t value)
Set LED duty cycle for WiFi LED.
Definition settings.cpp:337
uint8_t getDccProgrammingType() const
Get DCC programming type.
Definition settings.cpp:452
uint8_t getLedDutyCycleBug() const
Get LED duty cycle for bug LED.
Definition settings.cpp:306
uint8_t getExtensionFlags() const
Get extension flags.
Definition settings.cpp:668
esp_err_t setStationPassword(std::string_view str)
Set station password.
Definition settings.cpp:82
esp_err_t setLedDutyCycleBug(uint8_t value)
Set LED duty cycle for bug LED.
Definition settings.cpp:318
esp_err_t setCurrentShortCircuitTime(uint8_t value)
Set current short circuit time.
Definition settings.cpp:359
uint8_t getDccAccessoryFlags() const
Get DCC accessory flags.
Definition settings.cpp:604
drv::out::track::CurrentLimit getCurrentLimit() const
Get current limit.
Definition settings.cpp:256
esp_err_t setDccStartupResetPacketCount(uint8_t value)
Set DCC startup reset packet count.
Definition settings.cpp:488
uint8_t getLedDutyCycleWiFi() const
Get LED duty cycle for WiFi LED.
Definition settings.cpp:325
esp_err_t setStationSSID(std::string_view str)
Set station SSID.
Definition settings.cpp:63
esp_err_t setHttpTransmitTimeout(uint8_t value)
Set HTTP transmit timeout.
Definition settings.cpp:228
uint8_t getDccBit1Duration() const
Get DCC bit 1 duration.
Definition settings.cpp:387
uint8_t getHttpReceiveTimeout() const
Get HTTP receive timeout.
Definition settings.cpp:192
bool getDccBitVerifyTo1() const
Get DCC bit verify.
Definition settings.cpp:540
esp_err_t setDccProgrammingType(uint8_t value)
Set DCC programming type.
Definition settings.cpp:466
esp_err_t setStationIP(std::string_view str)
Set station IP.
Definition settings.cpp:143
bool getHttpExitMessage() const
Get HTTP exit message.
Definition settings.cpp:236
esp_err_t setStationNetmask(std::string_view str)
Set station netmask.
Definition settings.cpp:164
esp_err_t setStationmDNS(std::string_view str)
Set station mDNS.
Definition settings.cpp:43
esp_err_t setCurrentLimit(drv::out::track::CurrentLimit value)
Set current limit.
Definition settings.cpp:270
uint8_t getDccContinueResetPacketCount() const
Get DCC continue reset packet count.
Definition settings.cpp:495
uint8_t getDccPreamble() const
Get DCC preamble count.
Definition settings.cpp:366
uint8_t getDccStartupResetPacketCount() const
Get DCC startup reset packet count.
Definition settings.cpp:473
esp_err_t setDccContinueResetPacketCount(uint8_t value)
Set DCC continue reset packet count.
Definition settings.cpp:510
esp_err_t setDccProgramPacketCount(uint8_t value)
Set DCC program packet count.
Definition settings.cpp:532
esp_err_t setExtensionFlags(uint8_t value)
Set extension flags.
Definition settings.cpp:679
esp_err_t setDccBitVerifyTo1(bool value)
Set DCC bit verify.
Definition settings.cpp:553
esp_err_t setDccProgrammingAckCurrent(uint8_t value)
Set DCC programming ack current.
Definition settings.cpp:575
esp_err_t setHttpReceiveTimeout(uint8_t value)
Set HTTP receive timeout.
Definition settings.cpp:206
esp_err_t setDccBit1Duration(uint8_t value)
Set DCC bit 1 duration.
Definition settings.cpp:399
drv::out::track::CurrentLimit getCurrentLimitService() const
Get current limit in service mode.
Definition settings.cpp:280
uint8_t getDccAccessorySwitchTime() const
Get DCC accessory switch time.
Definition settings.cpp:624
std::string getStationNetmask() const
Get station netmask.
Definition settings.cpp:150
std::string getStationAlternativePassword() const
Get alternative station password.
Definition settings.cpp:110
esp_err_t setDccPreamble(uint8_t value)
Set DCC preamble count.
Definition settings.cpp:378
std::string getStationSSID() const
Get station SSID.
Definition settings.cpp:51
esp_err_t setDccLocoFlags(uint8_t value)
Set DCC loco flags.
Definition settings.cpp:594
uint8_t getHttpTransmitTimeout() const
Get HTTP transmit timeout.
Definition settings.cpp:214
CurrentLimit
Definition config.hpp:401
Definition config.hpp:562