PropertyInfo.h File Reference
#include <WString.h>#include <Data/Range.h>#include "Number.h"#include <FlashString/Array.hpp>#include <FlashString/Vector.hpp>
Include dependency graph for PropertyInfo.h:
This graph shows which files directly or indirectly include this file:
Go to the source code of this file.
Classes | |
| struct | ConfigDB::EnumInfo |
| struct | ConfigDB::PropertyInfo |
| Property metadata. More... | |
| struct | ConfigDB::PropertyInfo::RangeTemplate< T, U > |
| struct | ConfigDB::PropertyInfo::RangePtrTemplate< T > |
| union | ConfigDB::PropertyInfo::Variant |
Namespaces | |
| ConfigDB | |
Macros | |
| #define | CONFIGDB_PROPERTY_TYPE_MAP(XX) |
| Property types with storage size. More... | |
| #define | XX(name, ...) name, |
| #define | XX(tag, size) |
Typedefs | |
| using | ConfigDB::StringId = uint16_t |
| Defines contained string data using index into string pool. More... | |
Enumerations | |
| enum class | ConfigDB::PropertyType : uint32_t { ConfigDB::XX } |
Functions | |
| uint8_t | ConfigDB::getPropertySize (PropertyType type) |
| String | toString (ConfigDB::PropertyType type) |
Macro Definition Documentation
◆ CONFIGDB_PROPERTY_TYPE_MAP
| #define CONFIGDB_PROPERTY_TYPE_MAP | ( | XX | ) |
Value:
XX(Boolean, 1) \
XX(Int8, 1) \
XX(Int16, 2) \
XX(Int32, 4) \
XX(Int64, 8) \
XX(Enum, 1) \
XX(UInt8, 1) \
XX(UInt16, 2) \
XX(UInt32, 4) \
XX(UInt64, 8) \
XX(Number, 4) \
XX(Object, sizeof(ObjectInfo*)) \
XX(Alias, 0)
uint16_t StringId
Defines contained string data using index into string pool.
Definition: PropertyInfo.h:60
Property types with storage size.
Copyright 2024 mikee47 mike@sillyhouse.net
This file is part of the ConfigDB Library
This library is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 3 or later.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this library. If not, see https://www.gnu.org/licenses/.
◆ XX [1/2]
| #define XX | ( | name, | |
| ... | |||
| ) | name, |
◆ XX [2/2]
| #define XX | ( | tag, | |
| size | |||
| ) |
Value:
case PropertyType::tag: \
return size;
Function Documentation
◆ toString()
| String toString | ( | ConfigDB::PropertyType | type | ) |
1.9.1