packet
A homogeneous container that can contain one of several types that are all inherited from the same base class.
etl::packet<typename TBase, size_t SIZE, size_t ALIGNMENT>Template parameters
TBase
The base class for all objects. The destructor must be virtual.
SIZE
The size of the largest type.
ALIGNMENT
The largest alignment of all of the types.
Member types
base_t = TBase
Contructors
C++03
template <typename T>
explicit packet(const T& value)C++11
template <typename T>
explicit packet(T&& value)Description
Constructs an object of type T with the supplied value.
Static asserts on any type that does not derive from TBase.
Static asserts on any type that does not conform to the maximum size and alignment.
Destructor
~packet()Description
Destructs the contained object
Operators
C++03
template <typename T>
packet& operator =(const T& value)C++11
template <typename T>
packet& operator =(T&& value)Description
Assigns a new object to the packet.
The previous object is destructed.
Access
const TBase& get() constDescription
Returns a const reference to the contained object.