27using ServerBase = z21::server::Base<z21::server::intf::System,
28 z21::server::intf::Dcc,
29 z21::server::intf::Settings>;
35 void dcc(std::shared_ptr<z21::server::intf::Dcc> dcc_service);
44 void transmit(z21::Socket
const& sock,
45 std::span<uint8_t const> datasets)
final;
49 [[nodiscard]]
bool stop()
final;
51 void logoff(z21::Socket
const& sock)
final;
52 [[nodiscard]] z21::SystemState&
systemState()
final;
57 z21::LocoInfo
locoInfo(uint16_t loco_addr)
final;
58 void locoName(uint16_t loco_addr, uint8_t index, std::string_view name)
final;
61 z21::LocoInfo::SpeedSteps speed_steps,
62 uint8_t rvvvvvvv)
final;
63 z21::LocoInfo::Mode
locoMode(uint16_t loco_addr)
final;
64 void locoMode(uint16_t loco_addr, z21::LocoInfo::Mode mode)
final;
67 [[nodiscard]] z21::TurnoutInfo
turnoutInfo(uint16_t accy_addr)
final;
68 [[nodiscard]] z21::AccessoryInfo
accessoryInfo(uint16_t accy_addr)
final;
69 void turnout(uint16_t accy_addr,
bool p,
bool a,
bool q)
final;
70 void accessory(uint16_t accy_addr, uint8_t dddddddd)
final;
71 [[nodiscard]] z21::TurnoutInfo::Mode
turnoutMode(uint16_t accy_addr)
final;
72 void turnoutMode(uint16_t accy_addr, z21::TurnoutInfo::Mode mode)
final;
75 [[nodiscard]]
bool cvRead(uint16_t cv_addr)
final;
76 [[nodiscard]]
bool cvWrite(uint16_t cv_addr, uint8_t
byte)
final;
77 void cvPomRead(uint16_t loco_addr, uint16_t cv_addr)
final;
78 void cvPomWrite(uint16_t loco_addr, uint16_t cv_addr, uint8_t
byte)
final;
86 [[nodiscard]] z21::RailComData
railComData(uint16_t loco_addr)
final;
90 void commonSettings(z21::CommonSettings
const& common_settings)
final;
92 void mmDccSettings(z21::MmDccSettings
const& mm_dcc_settings)
final;
void turnout(uint16_t accy_addr, bool p, bool a, bool q) final
Definition service.cpp:272
void accessory(uint16_t accy_addr, uint8_t dddddddd) final
Definition service.cpp:277
void locoFunction(uint16_t loco_addr, uint32_t mask, uint32_t state) final
Definition service.cpp:247
bool stop() final
Definition service.cpp:141
bool cvRead(uint16_t cv_addr) final
Definition service.cpp:292
std::shared_ptr< z21::server::intf::Dcc > _dcc_service
Definition service.hpp:101
z21::TurnoutInfo turnoutInfo(uint16_t accy_addr) final
Definition service.cpp:262
esp_err_t socket(intf::http::Message &msg)
Definition service.cpp:42
void locoPurge(uint16_t loco_addr) final
Definition service.cpp:223
void cvPomWrite(uint16_t loco_addr, uint16_t cv_addr, uint8_t byte) final
Definition service.cpp:311
void locoName(uint16_t loco_addr, uint8_t index, std::string_view name) final
Definition service.cpp:233
z21::MmDccSettings mmDccSettings() final
Definition service.cpp:353
void dcc(std::shared_ptr< z21::server::intf::Dcc > dcc_service)
Definition service.cpp:35
void locoEStop(uint16_t loco_addr) final
Definition service.cpp:218
std::set< int > _ws_sock_fds
Definition service.hpp:104
void cvPomRead(uint16_t loco_addr, uint16_t cv_addr) final
Definition service.cpp:306
void cvPomAccessoryWrite(uint16_t accy_addr, uint16_t cv_addr, uint8_t byte, bool c) final
Definition service.cpp:321
z21::LocoInfo locoInfo(uint16_t loco_addr) final
Definition service.cpp:228
z21::LocoInfo::Mode locoMode(uint16_t loco_addr) final
Definition service.cpp:252
z21::TurnoutInfo::Mode turnoutMode(uint16_t accy_addr) final
Definition service.cpp:282
z21::SystemState & systemState() final
Definition service.cpp:161
void transmit(z21::Socket const &sock, std::span< uint8_t const > datasets) final
Definition service.cpp:114
int32_t serialNumber() const final
Definition service.cpp:149
Service()
Definition service.cpp:30
std::mutex _internal_mutex
Definition service.hpp:106
void logoff(z21::Socket const &sock) final
Definition service.cpp:154
void locoDrive(uint16_t loco_addr, z21::LocoInfo::SpeedSteps speed_steps, uint8_t rvvvvvvv) final
Definition service.cpp:240
bool cvWrite(uint16_t cv_addr, uint8_t byte) final
Definition service.cpp:299
z21::CommonSettings commonSettings() final
Definition service.cpp:334
void taskFunction(void *)
Definition service.cpp:75
z21::RailComData railComData(uint16_t loco_addr) final
Definition service.cpp:329
z21::AccessoryInfo accessoryInfo(uint16_t accy_addr) final
Definition service.cpp:267
bool trackPower(bool on) final
Definition service.cpp:136
void cvPomAccessoryRead(uint16_t accy_addr, uint16_t cv_addr, bool c) final
Definition service.cpp:316
std::atomic< State > state
Restricts access to low-level tasks.
Definition config.hpp:180
State
System state.
Definition config.hpp:152
Definition config.hpp:625
z21::server::Base< z21::server::intf::System, z21::server::intf::Dcc, z21::server::intf::Settings > ServerBase
Definition service.hpp:27
Definition message.hpp:29