|
| | node () |
| | Default constructor; allocates an 8-byte header. More...
|
| |
| | node (std::tuple< int, int, int, int > params) |
| | Construct a node from a parameter tuple. More...
|
| |
| | node (int size) |
| | Construct a node with a pre-allocated data region. More...
|
| |
| virtual | ~node ()=default |
| |
| void | assign (std::tuple< int, int, int, int > params) |
| | Re-initialize this node from a parameter tuple. More...
|
| |
| bool | allocate (int size) |
| | Ensure the internal buffer can hold at least size bytes. More...
|
| |
| virtual void | reset () |
| | Reset the node by setting the data length to zero. More...
|
| |
| int | size () const noexcept |
| |
| int | capacity () const noexcept |
| |
| int | formatLength () const noexcept |
| |
| void | setFormatLength (int length) |
| | Set the format descriptor length. More...
|
| |
| void | setDataLength (int length) |
| | Set the data payload length, preserving the format length. More...
|
| |
| int | dataLength () const noexcept |
| |
| int | nodeLength () |
| |
| void | setNodeLength (int size) |
| | Set the total node length in the header word. More...
|
| |
| int | dataOffset () const noexcept |
| |
| int | group () |
| |
| int | item () |
| |
| int | type () |
| |
| const char * | pointer () |
| |
| virtual void | show () |
| | Print a summary of this node to stdout. More...
|
| |
| void | setSize (int size) |
| | Set the total size of the node. More...
|
| |
| int | getIntAt (int index) const noexcept |
| | Read a 32-bit integer at the given byte offset within the data region. More...
|
| |
| int16_t | getShortAt (int index) const noexcept |
| | Read a 16-bit integer at the given byte offset within the data region. More...
|
| |
| int8_t | getByteAt (int index) const noexcept |
| | Read an 8-bit integer at the given byte offset within the data region. More...
|
| |
| float | getFloatAt (int index) const noexcept |
| | Read a 32-bit float at the given byte offset within the data region. More...
|
| |
| double | getDoubleAt (int index) const noexcept |
| | Read a 64-bit double at the given byte offset within the data region. More...
|
| |
| long | getLongAt (int index) const noexcept |
| | Read a 64-bit integer at the given byte offset within the data region. More...
|
| |
| void | putIntAt (int index, int value) |
| | Write a 32-bit integer at the given byte offset within the data region. More...
|
| |
| void | putShortAt (int index, int16_t value) |
| | Write a 16-bit integer at the given byte offset within the data region. More...
|
| |
| void | putByteAt (int index, int8_t value) |
| | Write an 8-bit integer at the given byte offset within the data region. More...
|
| |
| void | putFloatAt (int index, float value) |
| | Write a 32-bit float at the given byte offset within the data region. More...
|
| |
| void | putDoubleAt (int index, double value) |
| | Write a 64-bit double at the given byte offset within the data region. More...
|
| |
| void | putLongAt (int index, int64_t value) |
| | Write a 64-bit integer at the given byte offset within the data region. More...
|
| |
| virtual void | notify () |
| | Callback invoked when the node content is updated (e.g., after deserialization). More...
|
| |
Low-level node representing a tagged data element in a HIPO structure.
A node stores a binary buffer with an 8-byte header encoding the group, item, type, and data length, followed by an optional format descriptor and the payload data. It provides typed accessors for reading and writing primitive values at byte offsets within the data region.
Nodes are the building blocks for higher-level constructs such as hipo::structure, hipo::composite, and hipo::bank.
Definition at line 68 of file node.h.