Thrill  0.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
BID< Size > Class Template Reference

Detailed Description

template<size_t Size>
class foxxll::BID< Size >

Block identifier class.

Stores block identity, given by file and offset within the file

Definition at line 39 of file bid.hpp.

+ Inheritance diagram for BID< Size >:
+ Collaboration diagram for BID< Size >:

#include <bid.hpp>

Public Member Functions

 BID ()=default
 
 BID (file *s, const external_size_type &o)
 
template<size_t BlockSize>
 BID (const BID< BlockSize > &obj)
 construction from another block size More...
 
bool is_managed () const
 
bool operator!= (const BID< Size > &b) const
 
template<size_t BlockSize>
BIDoperator= (const BID< BlockSize > &obj)
 assignment from another block size More...
 
bool operator== (const BID< Size > &b) const
 
request_ptr read (void *data, size_t data_size, completion_handler on_complete=completion_handler())
 Reads data from the disk(s). More...
 
bool valid () const
 
request_ptr write (void *data, size_t data_size, completion_handler on_complete=completion_handler())
 Writes data to the disk(s). More...
 

Public Attributes

external_size_type offset = 0
 offset within the file of the block (uint64_t) More...
 
filestorage = nullptr
 pointer to the file of the block More...
 

Static Public Attributes

static constexpr size_t size = Size
 Block size. More...
 
static constexpr size_t t_size = Size
 Blocks size, given by the parameter. More...
 

Constructor & Destructor Documentation

BID ( )
default
BID ( file s,
const external_size_type o 
)
inline

Definition at line 54 of file bid.hpp.

BID ( const BID< BlockSize > &  obj)
inlineexplicit

construction from another block size

Definition at line 58 of file bid.hpp.

Member Function Documentation

bool is_managed ( ) const
inline

Definition at line 75 of file bid.hpp.

Referenced by block_manager::delete_block().

bool operator!= ( const BID< Size > &  b) const
inline

Definition at line 99 of file bid.hpp.

BID& operator= ( const BID< BlockSize > &  obj)
inline

assignment from another block size

Definition at line 63 of file bid.hpp.

bool operator== ( const BID< Size > &  b) const
inline

Definition at line 94 of file bid.hpp.

Referenced by BID< raw_size >::operator!=(), and BID< 0 >::operator!=().

request_ptr read ( void *  data,
size_t  data_size,
completion_handler  on_complete = completion_handler() 
)
inline

Reads data from the disk(s).

Definition at line 88 of file bid.hpp.

bool valid ( ) const
inline

Definition at line 70 of file bid.hpp.

Referenced by block_manager::delete_block().

request_ptr write ( void *  data,
size_t  data_size,
completion_handler  on_complete = completion_handler() 
)
inline

Writes data to the disk(s).

Definition at line 81 of file bid.hpp.

Member Data Documentation

constexpr size_t size = Size
static

Block size.

Definition at line 43 of file bid.hpp.

Referenced by block_manager::delete_block(), disk_block_allocator::delete_block(), and BID< 0 >::operator==().

constexpr size_t t_size = Size
static

Blocks size, given by the parameter.

Definition at line 45 of file bid.hpp.


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