Stxxl
1.2.1
|
Block containing elements of fixed length. More...
#include <mng.h>
Public Types | |
enum | { raw_size = RawSize_, size = block_w_info<T_, RawSize_, NRef_, InfoType_>::size } |
![]() | |
typedef InfoType_ | info_type |
Type of per block information element. |
Public Member Functions | |
request_ptr | write (const BID< raw_size > &bid, completion_handler on_cmpl=default_completion_handler()) |
Writes block to the disk(s) ! | |
request_ptr | read (const BID< raw_size > &bid, completion_handler on_cmpl=default_completion_handler()) |
Reads block from the disk(s) ! |
Additional Inherited Members | |
![]() | |
info_type | info |
Per block information element. | |
![]() | |
bid_type | ref [nbids] |
Array of BID references. | |
![]() | |
T_ | elem [size] |
Array of elements of type T. |
Block containing elements of fixed length.
Template parameters:
RawSize_
size of block in bytesT_
type of block's recordsNRef_
number of block references (BIDs) that can be stored in the block (default is 0)InfoType_
type of per block information (default is no information - void)The data array of type T_ is contained in the parent class stxxl::element_block
, see related information there. The BID array of references is contained in the parent class stxxl::block_w_bids
, see related information there. The "per block information" is contained in the parent class stxxl::block_w_info
, see related information there.
RawSize_
> 2MB object(s) of this type can not be allocated on the stack (as a function variable for example), because Linux POSIX library limits the stack size for the main thread to (2MB - system page size) anonymous enum |
|
inline |
Reads block from the disk(s) !
bid | block identifier, points the file(disk) and position ! |
on_cmpl | completion handler ! |
pointer_ptr
object to track status I/O operation after the call
|
inline |
Writes block to the disk(s) !
bid | block identifier, points the file(disk) and position ! |
on_cmpl | completion handler ! |
pointer_ptr
object to track status I/O operation after the call