#include <bit/fieldvector.h>
Inheritance diagram for bit::FieldVector:
This class extends FieldBase by including a name and a description.
Public Types | |
typedef boost::shared_ptr< FieldVector > | pointer |
Public Member Functions | |
FieldVector (std::string name="", size_t size=0, size_t element_length=0, size_t element_length_units=BITS, int offset=0, size_t offset_units=BITS, std::string descr="") | |
Contains a vector of fields. | |
size_t | length () const |
size_t | length (size_t units) const |
size_t | element_length () const |
size_t | size () const |
void | set_size (size_t size) |
virtual iterator | begin () |
virtual iterator | end () |
virtual FieldBase::pointer | field (size_t i) |
virtual FieldBase::pointer | clone () |
Static Public Member Functions | |
static FieldVector::pointer | create (std::string name="", size_t size=0, size_t element_length=0, size_t element_length_units=BITS, int offset=0, size_t offset_units=BITS, std::string descr="") |
Protected Types | |
typedef std::vector< Element::pointer > | Elements |
Protected Member Functions | |
virtual FieldBase::pointer | previous_field (FieldBase::pointer current_field) throw (error::invalid_container_op) |
virtual FieldBase::pointer | next_field (FieldBase::pointer current_field) throw (error::invalid_container_op) |
Protected Attributes | |
size_t | m_size |
Elements | m_elements |
Classes | |
class | Element |
Element is an base element in a field vector. More... |
|
Contains a vector of fields. This class is provided to allow for efficient implementation of large arrays without allocating a field instance for each element of the vector.
|