Tawara
0.1.0
|
Binary primitive element. More...
#include <tawara/binary_element.h>
Public Member Functions | |
BinaryElement (uint32_t id, std::vector< char > value) | |
Create a new binary element with no default. More... | |
BinaryElement (uint32_t id, std::vector< char > value, std::vector< char > default_value) | |
Create a new binary element with a default value. More... | |
virtual BinaryElement & | operator= (std::vector< char > const &rhs) |
Value assignment operator. More... | |
![]() | |
PrimitiveElement (uint32_t id, std::vector< char >value) | |
Create a new element with no default. More... | |
PrimitiveElement (uint32_t id, std::vector< char >value, std::vector< char >default_value) | |
Create a signed integer element with a default value. More... | |
virtual uint32_t | id () const |
Get the element's ID. More... | |
virtual void | id (uint32_t id) |
Set the element's ID. More... | |
virtual std::vector< char > | value () const |
Get the value. More... | |
virtual void | value (std::vector< char >value) |
Set the value. More... | |
operator std::vector< char > () const | |
Cast to the stored type. More... | |
virtual bool | has_default () const |
Check if a default value is set. More... | |
virtual std::vector< char > | get_default () const |
Get the default value. More... | |
virtual void | set_default (std::vector< char >default_value) |
Set the default value. More... | |
virtual std::vector< char > | remove_default () |
Remove the default value. More... | |
virtual bool | is_default () const |
Check if this element is at the default value. More... | |
![]() | |
Element (tawara::ids::ID id) | |
Create a new Element. More... | |
virtual | ~Element () |
Destructor. More... | |
uint32_t | id () const |
Get the element's ID. More... | |
std::streampos | offset () const |
Get the element's offset in the byte stream. More... | |
virtual std::streamsize | size () const |
Get the total size of the element. More... | |
virtual std::streamsize | write (std::ostream &output) |
Element writing. More... | |
virtual std::streamsize | read (std::istream &input) |
Element reading. More... | |
Protected Member Functions | |
virtual std::streamsize | body_size () const |
Get the size of the body of this element. More... | |
virtual std::streamsize | read_body (std::istream &input, std::streamsize size) |
Element body loading. More... | |
virtual std::streamsize | write_body (std::ostream &output) |
Element body writing. More... | |
![]() | |
virtual bool | equal_ (PrimitiveElement< std::vector< char > > const &rhs) |
![]() | |
std::streamsize | write_id (std::ostream &output) |
Element ID writing. More... | |
virtual std::streamsize | write_size (std::ostream &output) |
Element size writing. More... | |
Additional Inherited Members | |
![]() | |
std::vector< char > | value_ |
std::vector< char > | default_ |
bool | has_default_ |
![]() | |
tawara::ids::ID | id_ |
std::streampos | offset_ |
Binary primitive element.
This element stores a block of opaque binary data.
Definition at line 57 of file binary_element.h.
tawara::BinaryElement::BinaryElement | ( | uint32_t | id, |
std::vector< char > | value | ||
) |
Create a new binary element with no default.
[in] | id | The element's ID, as an unsigned integer up to 28 bits. |
[in] | value | The element's value. |
tawara::BinaryElement::BinaryElement | ( | uint32_t | id, |
std::vector< char > | value, | ||
std::vector< char > | default_value | ||
) |
Create a new binary element with a default value.
[in] | id | The element's ID, as an unsigned integer up to 28 bits. |
[in] | value | The element's value. |
[in] | default_value | The default value of the element. |
|
protectedvirtual |
Get the size of the body of this element.
Implements tawara::Element.
|
virtual |
Value assignment operator.
Reimplemented from tawara::PrimitiveElement< std::vector< char > >.
|
protectedvirtual |
Element body loading.
Implements tawara::Element.
|
protectedvirtual |
Element body writing.
Implements tawara::Element.