tetengo 1.8.1
A multipurpose library set
Loading...
Searching...
No Matches
tetengo::trie::mmap_storage Class Reference

An mmap storage. More...

#include <mmap_storage.hpp>

+ Inheritance diagram for tetengo::trie::mmap_storage:
+ Collaboration diagram for tetengo::trie::mmap_storage:

Public Member Functions

 mmap_storage (const boost::interprocess::file_mapping &file_mapping_, std::size_t content_offset, std::size_t file_size, value_deserializer value_deserializer_, std::size_t value_cache_capacity=default_value_cache_capacity())
 Creates an mmap storage.
 
virtual ~mmap_storage ()
 Destroys the mmap storage.
 
- Public Member Functions inherited from tetengo::trie::storage
 storage ()
 Creates a storage.
 
virtual ~storage ()
 Destroys the storage.
 
std::size_t base_check_size () const
 Returns the base-check size.
 
std::int32_t base_at (std::size_t base_check_index) const
 Returns the base value.
 
void set_base_at (std::size_t base_check_index, std::int32_t base)
 Sets a base value.
 
std::uint8_t check_at (std::size_t base_check_index) const
 Returns the check value.
 
void set_check_at (std::size_t base_check_index, std::uint8_t check)
 Sets a check value.
 
std::size_t value_count () const
 Returns the value count.
 
const std::any * value_at (std::size_t value_index) const
 Returns the value object.
 
void add_value_at (std::size_t value_index, std::any value)
 Adds a value object.
 
double filling_rate () const
 Returns the filling rate.
 
void serialize (std::ostream &output_stream, const value_serializer &value_serializer_) const
 Serializes this storage.
 
std::unique_ptr< storageclone () const
 Clones this storage.
 

Static Public Member Functions

static std::size_t default_value_cache_capacity ()
 Returns the default value cache capacity.
 

Detailed Description

An mmap storage.

Constructor & Destructor Documentation

◆ mmap_storage()

tetengo::trie::mmap_storage::mmap_storage ( const boost::interprocess::file_mapping &  file_mapping_,
std::size_t  content_offset,
std::size_t  file_size,
value_deserializer  value_deserializer_,
std::size_t  value_cache_capacity = default_value_cache_capacity() 
)

Creates an mmap storage.

Parameters
file_mapping_A file mapping.
content_offsetA content offset in the file.
file_sizeThe file size.
value_deserializer_A deserializer for value objects.
value_cache_capacityA value cache capacity.
Exceptions
std::invalid_argumentWhen content_offset is greater than file_size, or the value size is not fixed.

Member Function Documentation

◆ default_value_cache_capacity()

static std::size_t tetengo::trie::mmap_storage::default_value_cache_capacity ( )
static

Returns the default value cache capacity.

Returns
The default value cache capacity.

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