MNX Document Model
|
Represents the global section of an MNX document, containing global measures. More...
#include <Global.h>
Public Member Functions | |
Global (Base &parent, const std::string_view &key) | |
Creates a new Global class as a child of a JSON element. | |
MNX_OPTIONAL_CHILD (global::LyricsGlobal, lyrics) | |
lyrics metadata | |
MNX_REQUIRED_CHILD (Array< global::Measure >, measures) | |
array of global measures. | |
MNX_OPTIONAL_CHILD (Array< global::StyleGlobal >, styles) | |
array of styles | |
Object (const std::shared_ptr< json > &root, json_pointer pointer) | |
Wraps an Object class around an existing JSON object node. | |
Object (Base &parent, const std::string_view &key) | |
Creates a new Object class as a child of a JSON node. | |
![]() | |
Object (const std::shared_ptr< json > &root, json_pointer pointer) | |
Wraps an Object class around an existing JSON object node. | |
Object (Base &parent, const std::string_view &key) | |
Creates a new Object class as a child of a JSON node. | |
![]() | |
Base (const Base &src) | |
Copy constructor. | |
Base (Base &&src) noexcept | |
Move constructor. | |
Base & | operator= (const Base &src) |
Copy assignment operator. | |
Base & | operator= (Base &&src) |
Move assignment operator. | |
std::string | dump (int indents=-1) |
Dumps the branch to a string. Useful in debugging. | |
template<typename T > | |
T | parent () const |
Returns the parent object for this node. | |
template<typename T > | |
std::optional< T > | getEnclosingElement () const |
Returns the enclosing array element for this instance. | |
json_pointer | pointer () const |
Returns the json_pointer for this node. | |
Additional Inherited Members | |
![]() | |
json & | ref () const |
Convert this node for retrieval. | |
json & | ref () |
Access the JSON node for modification. | |
const std::shared_ptr< json > & | root () const |
Returns the root. | |
Base (const std::shared_ptr< json > &root, json_pointer pointer) | |
Wrap a Base instance around a specific JSON reference using a json_pointer. | |
Base (json &&jsonRef, Base &parent, const std::string_view &key) | |
Construct a Base reference as a child inside a parent node. | |
template<typename T > | |
T | getChild (const std::string_view &key) const |
Retrieves and validates a required child node. | |
template<typename T > | |
T | setChild (const std::string_view &key, const T &value) |
Sets a child node. | |
template<typename T > | |
std::optional< T > | getOptionalChild (const std::string_view &key) const |
Retrieves an optional child node. | |
Represents the global section of an MNX document, containing global measures.
|
inline |
Creates a new Global class as a child of a JSON element.
parent | The parent class instance |
key | The JSON key to use for embedding in parent. |
|
inline |
Creates a new Object class as a child of a JSON node.
parent | The parent class instance |
key | The JSON key to use for embedding in parent. |
|
inline |
Wraps an Object class around an existing JSON object node.
root | Reference to the document root |
pointer | The json_pointer value for the node |