Skip to content

Class cubbase::DMRBMemoryPool

ClassList > cubbase > DMRBMemoryPool

  • #include <DMRBMemoryPool.hpp>

Inherits the following classes: cubbase::DMRB

Public Functions

Type Name
DMRBMemoryPool (std::size_t capacity)
DMRBMemoryPool ()
cubbase::span< std::byte > buffer ()
virtual void commit (std::size_t length)
virtual void consume (std::size_t length)
bool is_in (cubbase::span< std::byte > & span)
bool is_in (std::byte * ptr)
virtual cubbase::span< const std::byte > peek () const
virtual cubbase::span< std::byte > reserve (std::size_t length)
void reset ()
void restore (cubbase::span< std::byte > & span)
~DMRBMemoryPool ()

Public Functions inherited from cubbase::DMRB

See cubbase::DMRB

Type Name
DMRB (std::size_t capacity)
DMRB ()
DMRB (const DMRB & other) = delete
DMRB (DMRB && other) = delete
std::size_t available () noexcept const
std::size_t capacity () noexcept const
virtual void commit (std::size_t length) = 0
virtual void consume (std::size_t length) = 0
bool empty () noexcept const
DMRB & operator= (const DMRB & other) = delete
DMRB & operator= (DMRB && other) = delete
virtual cubbase::span< const std::byte > peek () const = 0
std::size_t readable () noexcept const
virtual cubbase::span< std::byte > reserve (std::size_t length) = 0
virtual ~DMRB ()

Protected Types inherited from cubbase::DMRB

See cubbase::DMRB

Type Name
typedef std::conditional_t< ThreadSafe, std::atomic< std::uint64_t >, std::uint64_t > type_t

Protected Attributes inherited from cubbase::DMRB

See cubbase::DMRB

Type Name
void * m_base
int m_fd
type_t m_head = { 0 }
std::size_t m_mask
std::size_t m_size
type_t m_tail = { 0 }

Protected Static Functions inherited from cubbase::DMRB

See cubbase::DMRB

Type Name
void value_add (type_t & value, std::uint64_t n, std::memory_order order=std::memory_order_release)
std::uint64_t value_load (const type_t & value, std::memory_order order=std::memory_order_release)
void value_store (type_t & value, std::uint64_t n, std::memory_order order=std::memory_order_release)

Public Functions Documentation

function DMRBMemoryPool [1/2]

cubbase::DMRBMemoryPool::DMRBMemoryPool (
    std::size_t capacity
) 

function DMRBMemoryPool [2/2]

cubbase::DMRBMemoryPool::DMRBMemoryPool () 

function buffer

cubbase::span < std::byte > cubbase::DMRBMemoryPool::buffer () 

function commit

virtual void cubbase::DMRBMemoryPool::commit (
    std::size_t length
) 

Implements cubbase::DMRB::commit


function consume

virtual void cubbase::DMRBMemoryPool::consume (
    std::size_t length
) 

Implements cubbase::DMRB::consume


function is_in [1/2]

bool cubbase::DMRBMemoryPool::is_in (
    cubbase::span < std::byte > & span
) 

function is_in [2/2]

bool cubbase::DMRBMemoryPool::is_in (
    std::byte * ptr
) 

function peek

virtual cubbase::span < const std::byte > cubbase::DMRBMemoryPool::peek () const

Implements cubbase::DMRB::peek


function reserve

virtual cubbase::span < std::byte > cubbase::DMRBMemoryPool::reserve (
    std::size_t length
) 

Implements cubbase::DMRB::reserve


function reset

void cubbase::DMRBMemoryPool::reset () 

function restore

void cubbase::DMRBMemoryPool::restore (
    cubbase::span < std::byte > & span
) 

function ~DMRBMemoryPool

cubbase::DMRBMemoryPool::~DMRBMemoryPool () 


The documentation for this class was generated from the following file cubrid/src/base/DMRBMemoryPool.hpp