Firmware  0.0.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 "base.hpp"
26
27namespace mem::nvs {
28
36class Settings : public Base {
37public:
38 explicit Settings() : Base{"settings", NVS_READWRITE} {}
39
40 std::string getStationmDNS() const;
41 esp_err_t setStationmDNS(std::string_view str);
42
43 std::string getStationSSID() const;
44 esp_err_t setStationSSID(std::string_view str);
45
46 std::string getStationPassword() const;
47 esp_err_t setStationPassword(std::string_view str);
48
49 uint8_t getHttpReceiveTimeout() const;
50 esp_err_t setHttpReceiveTimeout(uint8_t value);
51
52 uint8_t getHttpTransmitTimeout() const;
53 esp_err_t setHttpTransmitTimeout(uint8_t value);
54
57
60
61 uint8_t getCurrentShortCircuitTime() const;
62 esp_err_t setCurrentShortCircuitTime(uint8_t value);
63
64 uint8_t getDccPreamble() const;
65 esp_err_t setDccPreamble(uint8_t value);
66
67 uint8_t getDccBit1Duration() const;
68 esp_err_t setDccBit1Duration(uint8_t value);
69
70 uint8_t getDccBit0Duration() const;
71 esp_err_t setDccBit0Duration(uint8_t value);
72
73 uint8_t getDccBiDiBitDuration() const;
74 esp_err_t setDccBiDiBitDuration(uint8_t value);
75
76 uint8_t getDccProgrammingType() const;
77 esp_err_t setDccProgrammingType(uint8_t value);
78
79 uint8_t getDccStartupResetPacketCount() const;
80 esp_err_t setDccStartupResetPacketCount(uint8_t value);
81
82 uint8_t getDccContinueResetPacketCount() const;
83 esp_err_t setDccContinueResetPacketCount(uint8_t value);
84
85 uint8_t getDccProgramPacketCount() const;
86 esp_err_t setDccProgramPacketCount(uint8_t value);
87
88 bool getDccBitVerifyTo1() const;
89 esp_err_t setDccBitVerifyTo1(bool value);
90
91 uint8_t getDccProgrammingAckCurrent() const;
92 esp_err_t setDccProgrammingAckCurrent(uint8_t value);
93
94 uint8_t getDccLocoFlags() const;
95 esp_err_t setDccLocoFlags(uint8_t value);
96
97 uint8_t getDccAccessoryFlags() const;
98 esp_err_t setDccAccessoryFlags(uint8_t value);
99
100 uint8_t getMduPreamble() const;
101 esp_err_t setMduPreamble(uint8_t value);
102
103 uint8_t getMduAckreq() const;
104 esp_err_t setMduAckreq(uint8_t value);
105};
106
107} // namespace mem::nvs
NVS base.
NVS base.
Definition base.hpp:41
Settings stored in NVS.
Definition settings.hpp:36
uint8_t getDccBiDiBitDuration() const
Get DCC BiDi bit duration.
Definition settings.cpp:284
std::string getStationPassword() const
Get station password.
Definition settings.cpp:85
out::track::CurrentLimit getCurrentLimitService() const
Get current limit in service mode.
Definition settings.cpp:172
esp_err_t setDccBit0Duration(uint8_t value)
Set DCC bit 0 duration.
Definition settings.cpp:275
uint8_t getDccBit0Duration() const
Get DCC bit 0 duration.
Definition settings.cpp:263
std::string getStationmDNS() const
Get station mDNS.
Definition settings.cpp:45
esp_err_t setDccBiDiBitDuration(uint8_t value)
Set DCC BiDi bit duration.
Definition settings.cpp:298
uint8_t getDccProgramPacketCount() const
Get DCC program packet count.
Definition settings.cpp:373
uint8_t getMduPreamble() const
Get MDU preamble count.
Definition settings.cpp:476
uint8_t getCurrentShortCircuitTime() const
Get current short circuit time.
Definition settings.cpp:197
Settings()
Definition settings.hpp:38
esp_err_t setDccAccessoryFlags(uint8_t value)
Set DCC accessory flags.
Definition settings.cpp:469
uint8_t getDccProgrammingAckCurrent() const
Get DCC programming ack current.
Definition settings.cpp:415
uint8_t getDccLocoFlags() const
Get DCC loco flags.
Definition settings.cpp:438
uint8_t getDccProgrammingType() const
Get DCC programming type.
Definition settings.cpp:307
esp_err_t setStationPassword(std::string_view str)
Set station password.
Definition settings.cpp:97
esp_err_t setCurrentLimitService(out::track::CurrentLimit value)
Set current limit in service mode.
Definition settings.cpp:187
esp_err_t setCurrentShortCircuitTime(uint8_t value)
Set current short circuit time.
Definition settings.cpp:212
out::track::CurrentLimit getCurrentLimit() const
Get current limit.
Definition settings.cpp:148
uint8_t getDccAccessoryFlags() const
Get DCC accessory flags.
Definition settings.cpp:456
esp_err_t setMduPreamble(uint8_t value)
Set MDU preamble count.
Definition settings.cpp:488
esp_err_t setDccStartupResetPacketCount(uint8_t value)
Set DCC startup reset packet count.
Definition settings.cpp:343
esp_err_t setStationSSID(std::string_view str)
Set station SSID.
Definition settings.cpp:78
esp_err_t setHttpTransmitTimeout(uint8_t value)
Set HTTP transmit timeout.
Definition settings.cpp:140
uint8_t getMduAckreq() const
Get MDU ackreq count.
Definition settings.cpp:497
uint8_t getDccBit1Duration() const
Get DCC bit 1 duration.
Definition settings.cpp:242
uint8_t getHttpReceiveTimeout() const
Get HTTP receive timeout.
Definition settings.cpp:104
bool getDccBitVerifyTo1() const
Get DCC bit verify.
Definition settings.cpp:395
esp_err_t setDccProgrammingType(uint8_t value)
Set DCC programming type.
Definition settings.cpp:321
esp_err_t setStationmDNS(std::string_view str)
Set station mDNS.
Definition settings.cpp:58
uint8_t getDccContinueResetPacketCount() const
Get DCC continue reset packet count.
Definition settings.cpp:350
uint8_t getDccPreamble() const
Get DCC preamble count.
Definition settings.cpp:221
uint8_t getDccStartupResetPacketCount() const
Get DCC startup reset packet count.
Definition settings.cpp:328
esp_err_t setDccContinueResetPacketCount(uint8_t value)
Set DCC continue reset packet count.
Definition settings.cpp:365
esp_err_t setDccProgramPacketCount(uint8_t value)
Set DCC program packet count.
Definition settings.cpp:387
esp_err_t setDccBitVerifyTo1(bool value)
Set DCC bit verify.
Definition settings.cpp:408
esp_err_t setDccProgrammingAckCurrent(uint8_t value)
Set DCC programming ack current.
Definition settings.cpp:430
esp_err_t setHttpReceiveTimeout(uint8_t value)
Set HTTP receive timeout.
Definition settings.cpp:118
esp_err_t setDccBit1Duration(uint8_t value)
Set DCC bit 1 duration.
Definition settings.cpp:254
esp_err_t setMduAckreq(uint8_t value)
Set MDU ackreq count.
Definition settings.cpp:509
esp_err_t setCurrentLimit(out::track::CurrentLimit value)
Set current limit.
Definition settings.cpp:162
esp_err_t setDccPreamble(uint8_t value)
Set DCC preamble count.
Definition settings.cpp:233
std::string getStationSSID() const
Get station SSID.
Definition settings.cpp:66
esp_err_t setDccLocoFlags(uint8_t value)
Set DCC loco flags.
Definition settings.cpp:449
uint8_t getHttpTransmitTimeout() const
Get HTTP transmit timeout.
Definition settings.cpp:126
Definition accessories.cpp:27
CurrentLimit
Definition config.hpp:379