3 #include "g_cont_lst_base.h"
10 template <
class T ,
class IT = it<T> ,
class IT_C = it_const<T> >
class lst :
public lst_base<T,T,const T,IT,IT_C>
16 typedef typename Base_t::It_t It_t;
17 typedef typename Base_t::ItConst_t ItConst_t;
19 lst (
AllocationPolicyAbstract* = AllocationPolicyAbstract::get_FromStandardPolicy() ,
int = G_LST_PAGE_MASK_BITS ,
int = G_VECT_AL_DELTA_MASK_BITS );
20 lst (
const T* ,
size_t ,
AllocationPolicyAbstract* = AllocationPolicyAbstract::get_FromStandardPolicy() ,
int = G_LST_PAGE_MASK_BITS ,
int = G_VECT_AL_DELTA_MASK_BITS );
21 lst (
const lst& ,
AllocationPolicyAbstract* = AllocationPolicyAbstract::get_FromStandardPolicy() ,
int = G_LST_PAGE_MASK_BITS ,
int = G_VECT_AL_DELTA_MASK_BITS );
25 void setContentFromVector (
const T* ,
size_t );
31 Ref(
const Ref& other ){ G_VERBOSE_MSG_L5(
"vect::Ref::Ref(Ref& other )"); this->mRefTake(other); }
35 Lst_t& operator *() { G_VERBOSE_MSG_L5(
"T& vect::Ref::operator *()");
return *this->mGetObjP(); }
36 Lst_t* operator ->() { G_VERBOSE_MSG_L5(
"T& vect::Ref::operator ->()");
return this->mGetObjP(); }
37 const Lst_t& operator *()
const { G_VERBOSE_MSG_L5(
"const T& vect::Ref::operator *()");
return *this->mGetObjP(); }
38 const Lst_t* operator ->()
const { G_VERBOSE_MSG_L5(
"const T* vect::Ref::operator ->()");
return this->mGetObjP(); }
40 Ref& operator = (
const Ref& other ) { this->mRefTake(*
this);
return *
this; }
46 new ( result.mAllocateMemForObject(aAllocPolicyP) )
lst<T,IT,IT_C>(aAllocPolicyP);
55 Base_t(aAllocPolicyP, aListPageRightBits , aVectorAllocDeltaRightBits ) { }
57 template <
class T ,
class IT,
class IT_C> lst<T,IT,IT_C>::lst (
const T* aVectorP ,
size_t aSize , AllocationPolicyAbstract* aAllocPolicyP ,
int aListPageRightBits ,
int aVectorAllocDeltaRightBits ) :
58 Base_t(aAllocPolicyP, aListPageRightBits , aVectorAllocDeltaRightBits )
60 this->setContentFromVector (aVectorP, aSize);
63 template <
class T ,
class IT,
class IT_C> lst<T,IT,IT_C>::lst(
const lst<T,IT,IT_C>& other , AllocationPolicyAbstract* aAllocPolicyP ,
int aListPageRightBits ,
int aVectorAllocDeltaRightBits ) :
64 Base_t(aAllocPolicyP, aListPageRightBits , aVectorAllocDeltaRightBits )
66 this->setContent(other);
69 template <
class T ,
class IT,
class IT_C>
void lst<T,IT,IT_C>::setContentFromVector (
const T* aVectorP ,
size_t aSize )
73 for (
size_t i = 0 ; i < aSize ; i++ )
75 this->pushTail ( aVectorP[i] );
Definition: g_cont_ref_base.h:37
Definition: g_cont_lst_priv.h:412
Definition: g_cont_lst.h:27
Definition: g_cont_lst_base.h:12
Definition: g_cont_AllocationPolicyAbstract.h:16
Definition: g_cont_lst.h:10
Definition: g.mthread.ThreadSimpleEvent.h:5