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.
| Tp_ | type of contained objects (POD with no references to internal memory) | |
| PgSz_ | number of blocks in a page | |
| Pages_ | number of pages | |
| BlkSize_ | external block size in bytes, default is 2 MiB | |
| AllocStr_ | one of allocation strategies: striping , RC , SR , or FR default is RC | |
| Pager_ | pager type:
|
Memory 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
1.7.1