Lumiera 0.pre.04~rc.1
»edit your freedom«
Loading...
Searching...
No Matches
Block Class Reference

#include "steam/engine/tracking-heap-block-provider.hpp"

Description

Helper for implementing a diagnostic BufferProvider: A block of heap allocated storage, with the capability to store some additional tracking information.

Definition at line 64 of file tracking-heap-block-provider.hpp.

Public Member Functions

 Block (size_t bufferSize)
 
bool was_used () const
 
bool was_closed () const
 
void * accessMemory () const
 
void markReleased ()
 

Private Attributes

unique_ptr< char[]> storage_
 
bool was_released_
 

Additional Inherited Members

- Private Member Functions inherited from NonCopyable
 ~NonCopyable ()=default
 
 NonCopyable ()=default
 
 NonCopyable (NonCopyable const &)=delete
 
NonCopyableoperator= (NonCopyable const &)=delete
 

Constructor & Destructor Documentation

◆ Block()

Block ( size_t  bufferSize)
inlineexplicit

Definition at line 73 of file tracking-heap-block-provider.hpp.

Member Function Documentation

◆ was_used()

bool was_used ( ) const
inline

Definition at line 79 of file tracking-heap-block-provider.hpp.

References Block::storage_.

Referenced by BlockPool::is_in_sane_state(), DiagnosticOutputSlot::output_was_emitted(), TrackingHeapBlockProvider_test::verifyTestProtocol(), and steam::engine::test::anonymous_namespace{tracking-heap-block-provider-test.cpp}::verifyUsedBlock().

+ Here is the caller graph for this function:

◆ was_closed()

bool was_closed ( ) const
inline

Definition at line 85 of file tracking-heap-block-provider.hpp.

References Block::was_released_.

Referenced by BlockPool::is_in_sane_state(), TrackingHeapBlockProvider::mark_emitted(), DiagnosticOutputSlot::output_was_closed(), TrackingHeapBlockProvider_test::verifyTestProtocol(), and steam::engine::test::anonymous_namespace{tracking-heap-block-provider-test.cpp}::verifyUsedBlock().

+ Here is the caller graph for this function:

◆ accessMemory()

void * accessMemory ( ) const
inline

◆ markReleased()

void markReleased ( )
inline

Definition at line 98 of file tracking-heap-block-provider.hpp.

References Block::was_released_.

Referenced by TrackingHeapBlockProvider::detachBuffer().

+ Here is the caller graph for this function:

Member Data Documentation

◆ storage_

unique_ptr<char[]> storage_
private

Definition at line 67 of file tracking-heap-block-provider.hpp.

Referenced by Block::accessMemory(), and Block::was_used().

◆ was_released_

bool was_released_
private

Definition at line 69 of file tracking-heap-block-provider.hpp.

Referenced by Block::markReleased(), and Block::was_closed().

+ Inheritance diagram for Block:
+ Collaboration diagram for Block:

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