ConfigDB Namespace Reference

Namespaces

 Json
 

Classes

class  Array
 Base class to provide array of properties. More...
 
class  ArrayTemplate
 Used by code generator for integral-typed arrays. More...
 
class  ArrayUpdaterTemplate
 Used by code generator for integral-typed arrays. More...
 
class  StringArrayTemplate
 Used by code generator for String-typed arrays. More...
 
class  StringArrayUpdaterTemplate
 Used by code generator for String-typed arrays. More...
 
class  ArrayBase
 Base class to provide array of properties. More...
 
class  ArrayIterator
 Array iterator support. More...
 
class  Database
 
class  DatabaseTemplate
 Used by code generator to create specific template for Database More...
 
struct  DatabaseInfo
 
class  ImportStream
 
class  ExportStream
 
class  Format
 Abstract base class wrapping support for a specific storage format, such as JSON. More...
 
class  HttpImportResource
 HttpResource handler to support streaming updates to a configuration database. More...
 
struct  number_t
 Basic definition of base-10 floating point value. More...
 
struct  const_number_t
 Compile-time constant number. More...
 
class  Number
 Base-10 floating-point storage format. More...
 
class  Object
 An object can contain other objects, properties and arrays. More...
 
class  ObjectTemplate
 Used by code generator. More...
 
class  ObjectUpdaterTemplate
 Used by code generator. More...
 
class  OuterObjectUpdaterTemplate
 Used by code generator. More...
 
class  OuterObjectTemplate
 Used by code generator. More...
 
class  ObjectArray
 Base class to provide array of objects. More...
 
class  ObjectArrayTemplate
 Used by code generator. More...
 
class  ObjectArrayUpdaterTemplate
 Used by code generator. More...
 
struct  ObjectInfo
 
class  PoolData
 Base allocator, designed for good reallocation performance and low RAM footprint. More...
 
struct  CountedString
 Used by StringPool. More...
 
class  StringPool
 Pool for string data. More...
 
class  ArrayData
 An array of fixed-sized items. More...
 
class  ArrayPool
 This pool stores array data. More...
 
class  PropertyConst
 Manages a key/value pair stored in an object, or a simple array value. More...
 
class  Property
 
struct  ArrayId
 Identifies array storage within array pool. More...
 
union  PropertyData
 
struct  EnumInfo
 
struct  PropertyInfo
 Property metadata. More...
 
struct  Status
 
class  Store
 Manages access to an object store, typically one file. More...
 
class  StoreRef
 
class  StoreUpdateRef
 
class  Union
 Variant object, can contain one of a selection of objects types. More...
 
class  UnionTemplate
 Used by code generator. More...
 
class  UnionUpdaterTemplate
 Used by code generator. More...
 

Typedefs

using StringId = uint16_t
 Defines contained string data using index into string pool. More...
 

Enumerations

enum class  ObjectType : uint32_t { XX }
 
enum class  PropertyType : uint32_t { XX }
 
enum class  Error { XX }
 
enum class  FormatError { XX }
 

Functions

uint8_t getPropertySize (PropertyType type)
 

Detailed Description

ConfigDB/Array.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/ArrayBase.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/ArrayIterator.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Database.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/DatabaseInfo.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Format.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/HttpImportResource.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Number.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Object.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/ObjectArray.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Pool.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Property.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/PropertyData.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/StoreRef.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

ConfigDB/Union.h

Copyright 2024 mikee47 mike@.nosp@m.sill.nosp@m.yhous.nosp@m.e.ne.nosp@m.t

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/.

Typedef Documentation

◆ StringId

using ConfigDB::StringId = typedef uint16_t

Defines contained string data using index into string pool.

Enumeration Type Documentation

◆ Error

enum ConfigDB::Error
strong
Enumerator
XX 

◆ FormatError

enum ConfigDB::FormatError
strong
Enumerator
XX 

◆ ObjectType

enum ConfigDB::ObjectType : uint32_t
strong
Enumerator
XX 

◆ PropertyType

enum ConfigDB::PropertyType : uint32_t
strong
Enumerator
XX 

Function Documentation

◆ getPropertySize()

uint8_t ConfigDB::getPropertySize ( PropertyType  type)
inline