#include <bit/fieldvector.h>
Public Types | |
typedef BitPointer< Element > | pointer |
Public Member Functions | |
virtual | ~Element () |
virtual size_t | length () const |
virtual size_t | length (size_t units) const |
virtual size_t | length_units () const |
virtual int | offset () const |
virtual int | offset (size_t units) const |
virtual size_t | offset_units () const |
The offset units of an element are always specified in the length units of elements. | |
virtual std::string | name () const |
Returns the string name associated with this object. | |
virtual std::string | name (int depth) const |
virtual std::string | description () const |
Returns the string description of this object. | |
virtual const FieldType & | type () const |
virtual void | set_type (const FieldType &) |
virtual Encoding | encoding () const |
Returns the data encoding of the parent container. | |
virtual void | set_encoding (Encoding en) |
Sets the data encoding of the parent container. | |
virtual const std::string & | xml () |
size_t | index () const |
virtual FieldBase::pointer | clone () |
virtual Container | container_type () |
Protected Member Functions | |
Element (size_t index) | |
Static Protected Member Functions | |
static Element::pointer | create (size_t index) |
Protected Attributes | |
size_t | m_index |
Friends | |
class | FieldVector |
typedef BitPointer<Element> bit::FieldVector::Element::pointer |
Reimplemented from bit::FieldBase.
bit::FieldVector::Element::Element | ( | size_t | index | ) | [protected] |
Referenced by create().
virtual bit::FieldVector::Element::~Element | ( | ) | [inline, virtual] |
FieldVector::Element::pointer bit::FieldVector::Element::create | ( | size_t | index | ) | [static, protected] |
size_t bit::FieldVector::Element::length | ( | ) | const [virtual] |
Implements bit::FieldBase.
References bit::FieldVector::element_length(), and bit::FieldBase::m_parent.
size_t bit::FieldVector::Element::length | ( | size_t | units | ) | const [virtual] |
size_t bit::FieldVector::Element::length_units | ( | ) | const [virtual] |
Implements bit::FieldBase.
References bit::FieldBase::length_units(), and bit::FieldBase::m_parent.
Referenced by xml().
int bit::FieldVector::Element::offset | ( | ) | const [virtual] |
Implements bit::FieldBase.
References bit::FieldVector::element_length(), m_index, bit::FieldBase::m_parent, and bit::FieldBase::offset().
Referenced by xml().
int bit::FieldVector::Element::offset | ( | size_t | units | ) | const [virtual] |
size_t bit::FieldVector::Element::offset_units | ( | ) | const [virtual] |
The offset units of an element are always specified in the length units of elements.
In this way the offset is always specified as a multiple of length.
Implements bit::FieldBase.
References bit::FieldBase::length_units(), and bit::FieldBase::m_parent.
Referenced by xml().
std::string bit::FieldVector::Element::name | ( | ) | const [virtual] |
Returns the string name associated with this object.
This pure virtual method is reimplemented by children to provide the proper notation, such as the array notation of elements, by children.
Implements bit::FieldBase.
References m_index, bit::FieldBase::m_parent, and bit::FieldBase::name().
Referenced by xml().
std::string bit::FieldVector::Element::name | ( | int | depth | ) | const [virtual] |
std::string bit::FieldVector::Element::description | ( | ) | const [virtual] |
Returns the string description of this object.
Implements bit::FieldBase.
References bit::FieldBase::description(), and bit::FieldBase::m_parent.
const FieldType & bit::FieldVector::Element::type | ( | ) | const [virtual] |
Implements bit::FieldBase.
References bit::FieldBase::m_parent, and bit::FieldBase::type().
Referenced by xml().
void bit::FieldVector::Element::set_type | ( | const FieldType & | type | ) | [virtual] |
Encoding bit::FieldVector::Element::encoding | ( | ) | const [virtual] |
Returns the data encoding of the parent container.
Implements bit::FieldBase.
References bit::FieldBase::encoding(), and bit::FieldBase::m_parent.
void bit::FieldVector::Element::set_encoding | ( | Encoding | en | ) | [virtual] |
Sets the data encoding of the parent container.
Implements bit::FieldBase.
References bit::FieldBase::m_parent, and bit::FieldBase::set_encoding().
const std::string & bit::FieldVector::Element::xml | ( | ) | [virtual] |
Implements bit::FieldBase.
References length(), length_units(), bit::FieldBase::m_xml, name(), offset(), offset_units(), type(), bit::TYPE_NONE, and bit::FieldType::xml().
size_t bit::FieldVector::Element::index | ( | ) | const |
References m_index.
FieldBase::pointer bit::FieldVector::Element::clone | ( | ) | [virtual] |
virtual Container bit::FieldVector::Element::container_type | ( | ) | [inline, virtual] |
friend class FieldVector [friend] |
size_t bit::FieldVector::Element::m_index [protected] |