Embedded Template Library 1.0
etl::variant_pool_ext< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 > Class Template Reference

Public Types

typedef etl::generic_pool_ext< etl::largest< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 >::size, etl::largest< T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16 >::alignment > base_t
 
- Public Types inherited from etl::generic_pool_ext< etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::size, etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::alignment >
typedef etl::aligned_storage< sizeof(element_internal), etl::alignment_of< element_internal >::value >::type element
 
- Public Types inherited from etl::ipool
typedef size_t size_type
 

Public Member Functions

 variant_pool_ext (typename base_t::element *buffer, size_t size)
 Default constructor.
 
template<typename T >
T * create ()
 Creates the object. Default constructor.
 
template<typename T , typename TP1 >
T * create (const TP1 &p1)
 Creates the object. One parameter constructor.
 
template<typename T , typename TP1 , typename TP2 >
T * create (const TP1 &p1, const TP2 &p2)
 Creates the object. Two parameter constructor.
 
template<typename T , typename TP1 , typename TP2 , typename TP3 >
T * create (const TP1 &p1, const TP2 &p2, const TP3 &p3)
 Creates the object. Three parameter constructor.
 
template<typename T , typename TP1 , typename TP2 , typename TP3 , typename TP4 >
T * create (const TP1 &p1, const TP2 &p2, const TP3 &p3, const TP4 &p4)
 Creates the object. Four parameter constructor.
 
template<typename T >
void destroy (const T *const p)
 Destroys the object.
 
size_t max_size () const
 Returns the maximum number of items in the variant_pool.
 
- Public Member Functions inherited from etl::generic_pool_ext< etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::size, etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::alignment >
 generic_pool_ext (element *buffer, size_t size)
 Constructor.
 
U * allocate ()
 
U * create ()
 
U * create (const T1 &value1)
 
U * create (const T1 &value1, const T2 &value2)
 
U * create (const T1 &value1, const T2 &value2, const T3 &value3)
 
U * create (const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4)
 
void destroy (const U *const p_object)
 
- Public Member Functions inherited from etl::ipool
template<typename T >
T * allocate ()
 
template<typename T >
T * create ()
 
template<typename T , typename T1 >
T * create (const T1 &value1)
 
template<typename T , typename T1 , typename T2 >
T * create (const T1 &value1, const T2 &value2)
 
template<typename T , typename T1 , typename T2 , typename T3 >
T * create (const T1 &value1, const T2 &value2, const T3 &value3)
 
template<typename T , typename T1 , typename T2 , typename T3 , typename T4 >
T * create (const T1 &value1, const T2 &value2, const T3 &value3, const T4 &value4)
 
template<typename T >
void destroy (const T *const p_object)
 
void release (const void *const p_object)
 
void release_all ()
 Release all objects in the pool.
 
bool is_in_pool (const void *const p_object) const
 
size_t max_size () const
 Returns the maximum number of items in the pool.
 
size_t capacity () const
 Returns the maximum number of items in the pool.
 
size_t available () const
 Returns the number of free items in the pool.
 
size_t size () const
 Returns the number of allocated items in the pool.
 
bool empty () const
 
bool full () const
 

Additional Inherited Members

- Static Public Attributes inherited from etl::generic_pool_ext< etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::size, etl::largest< T1, void, void, void, void, void, void, void, void, void, void, void, void, void, void, void >::alignment >
static ETL_CONSTANT size_t ALIGNMENT
 
static ETL_CONSTANT size_t TYPE_SIZE
 
- Protected Member Functions inherited from etl::ipool
 ipool (char *p_buffer_, uint32_t item_size_, uint32_t max_size_)
 Constructor.
 
 ~ipool ()
 Destructor.
 

The documentation for this class was generated from the following file: