External vector type generator. More...
#include <vector.h>
Public Types | |
typedef IF< Pager_==lru, lru_pager< Pages_ > , random_pager< Pages_ > >::result | PagerType |
typedef vector< Tp_, PgSz_, PagerType, BlkSize_, AllocStr_ > | result |
External vector type generator.
Parameters:
Tp_
type of contained objects (POD with no references to internal memory)PgSz_
number of blocks in a pagePages_
number of pagesBlkSize_
external block size in bytes, default is 2 MiBAllocStr_
one of allocation strategies: striping
, RC
, SR
, or FR
default is RCPager_
pager type:random
,lru
, is defaultMemory consumption of constructed vector is BlkSize_*Pages_*PgSz_ bytes Configured vector type is available as STACK_GENERATOR<>::result
.
Examples:
VECTOR_GENERATOR<double>::result
external vector of double's
,VECTOR_GENERATOR<double,8>::result
external vector of double's
, with 8 blocks per page,VECTOR_GENERATOR<double,8,2,512*1024,RC,lru>::result
external vector of double's
, with 8 blocks per page, 2 pages, 512 KiB blocks, Random Cyclic allocation and lru cache replacement strategy