REDAC HybridController
Firmware for LUCIDAC/REDAC Teensy
Loading...
Searching...
No Matches
vendor.h
Go to the documentation of this file.
1// Copyright (c) 2023 anabrid GmbH
2// Contact: https://www.anabrid.com/licensing/
3// SPDX-License-Identifier: MIT OR GPL-2.0-or-later
4
5#pragma once
6
7#include <ArduinoJson.h>
8#include <list>
9
11#include "utils/uuid.h"
12#include "utils/singleton.h"
13
14namespace nvmconfig {
15
30 constexpr static uint16_t invalid_serial_number = 0;
33
35
36 std::string name() const { return "immutable"; }
37
38 bool is_valid() const { return serial_number != invalid_serial_number; }
39
40 void reset_defaults() { /* No-OP by definition */ }
41 void fromJson(JsonObjectConst src, Context c = Context::Flash) override;
42 void toJson(JsonObject target, Context c = Context::Flash) const override;
43 };
44
46} // ns nvmconfig
Define singletons which are not static-space allocated (and thus consume valuable ICTM space).
Definition singleton.h:46
uint32_t src
Definition flasher.cpp:63
#define JSON_CONVERT_SUGAR(type)
Definition json.h:11
@ Flash
Flash-Facing (writing/reading)
utils::UUID serial_uuid
Definition vendor.h:32
bool is_valid() const
Definition vendor.h:38
std::string name() const
Definition vendor.h:36
std::string default_user_password
Definition vendor.h:34
static constexpr uint16_t invalid_serial_number
Definition vendor.h:30
void fromJson(JsonObjectConst src, Context c=Context::Flash) override
Definition vendor.cpp:5
uint16_t serial_number
Definition vendor.h:31
void reset_defaults()
Definition vendor.h:40
std::string default_admin_password
Definition vendor.h:34
void toJson(JsonObject target, Context c=Context::Flash) const override
Definition vendor.cpp:16
This is a small UUID representation class.
Definition uuid.h:19