xentara-plugin v1.2.1
The Xentara Plugin Framework
Loading...
Searching...
No Matches
xentara::memory Namespace Reference

Namespaces

namespace  memoryResources
 

Classes

class  Array
 A helper class used to describe structure of memory containing a heterogenious array. More...
 
class  ArrayAccessor
 A class used to access the elements of an array. More...
 
class  Bit
 An empty placeholder class used as structure of memory containing a single bit. More...
 
class  BitField
 An empty placeholder class used as structure of memory containing an unsigned integer bit field. More...
 
class  ConstArrayAccessor
 A class used to access the elements of an array as const. More...
 
struct  CopyOldValuesTag
 Type used to specify that a write sentinel should copy the old values. More...
 
class  Initializer
 A sentinel used for the initialization of memory in a memory resource. More...
 
class  Initializer< Array >
 An accessor used for the initialization of memory containing a heterogenious array. More...
 
class  Initializer< Object< Type > >
 An accessor used for the initialization of memory containing a single C++ object. More...
 
class  Initializer< RawMemory >
 An accessor used for the initialization raw memory. More...
 
class  MemoryBlock
 A memory block within a memory resource. More...
 
class  MemoryBlock< Array >
 A memory block containing an array of elements. More...
 
class  MemoryBlock< Object< Type > >
 A memory block containing a single C++ object. More...
 
class  MemoryBlock< RawMemory >
 A raw memory block. More...
 
class  MemoryHandle
 A handle to memory located in a memory resource. More...
 
class  MemoryHandle< Bit >
 A handle to a single bit of a byte located in a memory resource. More...
 
class  MemoryHandle< BitField< Type > >
 A handle to a bit field object located in a memory resource. More...
 
class  MemoryHandle< Object< Type > >
 A handle to a single C++ value object located in a memory resource. More...
 
class  MemoryHandle< RawMemory >
 A handle to raw data located in a memory resource. More...
 
class  MemoryResource
 A concept used for classes that can be used as memory resources. More...
 
struct  Object
 An empty placeholder class used as structure of memory containing a single C++ object. More...
 
struct  RawMemory
 An empty placeholder class used the structure of memory containing raw data. More...
 
class  ReadSentinel
 A sentinel that protects read access to memory in a memory resource. More...
 
class  ReadSentinel< Array >
 A sentinel that protects read access to memory containing a heterogenious array. More...
 
class  ReadSentinel< Bit >
 A sentinel that protects read access to memory containing a bit field. More...
 
class  ReadSentinel< BitField< Type > >
 A sentinel that protects read access to memory containing a bit field. More...
 
class  ReadSentinel< Object< Type > >
 A sentinel that protects read access to memory containing a single C++ object. More...
 
class  ReadSentinel< RawMemory >
 A sentinel that protects read access to a raw memory. More...
 
class  WriteSentinel
 A sentinel that protects write access to memory in a memory resource. More...
 
class  WriteSentinel< Array >
 A sentinel that protects write access to memory containing a heterogenious array. More...
 
class  WriteSentinel< Object< Type > >
 A sentinel that protects write access to memory containing a single C++ object. More...
 
class  WriteSentinel< RawMemory >
 A sentinel that protects write access to raw memory. More...
 

Concepts

concept  ObjectType
 A concept describing specializations of Object.
 
concept  BitFieldType
 A concept describing specializations of BitField.
 
concept  MemoryBlockType
 A concept describing raw memory blocks.
 
concept  ObjectBlockType
 A concept describing memory blocks containing a single C++ object.
 
concept  ArrayBlockType
 A concept describing memory blocks containing an array of elements.
 

Typedefs

using RawMemoryBlock = MemoryBlock< RawMemory >
 A type alias for a memory block containing raw data.
 
template<typename Type >
using ObjectBlock = MemoryBlock< Object< Type > >
 A type alias for a memory block containing a single object.
 
using ArrayBlock = MemoryBlock< Array >
 A type alias for a memory block containing a heterogeneous array.
 
using RawMemoryHandle = MemoryHandle< RawMemory >
 A type alias for a handle to raw memory.
 
template<typename Type >
using ObjectHandle = MemoryHandle< Object< Type > >
 A type alias for a handle to memory containing a single C++ object.
 
template<ObjectType Object>
using ObjectHandleFor = MemoryHandle< Object >
 A type alias that gets the handle type that corresponds to an object type.
 
using BitHandle = MemoryHandle< Bit >
 A type alias for a handle to memory containing a bit.
 
template<utils::tools::UnsignedIntegral Type>
using BitFieldHandle = MemoryHandle< BitField< Type > >
 A type alias for a handle to memory containing a bit field.
 
template<BitFieldType BitField>
using BitFieldHandleFor = MemoryHandle< BitField >
 A type alias that gets the handle type that corresponds to an bit field type.
 

Functions

template<typename Structure >
 ReadSentinel (const MemoryBlock< Structure > &) -> ReadSentinel< Structure >
 Template deduction guide generating a read sentinel from a memory block.
 
template<typename Structure >
 ReadSentinel (const MemoryHandle< Structure > &) -> ReadSentinel< Structure >
 Template deduction guide generating a read sentinel from a memory handle.
 
template<typename Structure >
 WriteSentinel (MemoryBlock< Structure > &) -> WriteSentinel< Structure >
 Template deduction guide generating a write sentinel from a memory block.
 
template<typename Structure >
 WriteSentinel (MemoryBlock< Structure > &, CopyOldValuesTag) -> WriteSentinel< Structure >
 Template deduction guide generating a write sentinel from a memory block.
 

Typedef Documentation

◆ ArrayBlock

A type alias for a memory block containing a heterogeneous array.

◆ BitFieldHandle

template<utils::tools::UnsignedIntegral Type>
using xentara::memory::BitFieldHandle = typedef MemoryHandle<BitField<Type> >

A type alias for a handle to memory containing a bit field.

Template Parameters
TypeThe unsigned integer type that holds the bits

◆ BitFieldHandleFor

template<BitFieldType BitField>
using xentara::memory::BitFieldHandleFor = typedef MemoryHandle<BitField>

A type alias that gets the handle type that corresponds to an bit field type.

◆ BitHandle

A type alias for a handle to memory containing a bit.

◆ ObjectBlock

template<typename Type >
using xentara::memory::ObjectBlock = typedef MemoryBlock<Object<Type> >

A type alias for a memory block containing a single object.

Template Parameters
TypeThe type of the C++ object contained in the block

◆ ObjectHandle

template<typename Type >
using xentara::memory::ObjectHandle = typedef MemoryHandle<Object<Type> >

A type alias for a handle to memory containing a single C++ object.

Template Parameters
TypeThe type of the C++ object contained in the memory

◆ ObjectHandleFor

template<ObjectType Object>
using xentara::memory::ObjectHandleFor = typedef MemoryHandle<Object>

A type alias that gets the handle type that corresponds to an object type.

◆ RawMemoryBlock

A type alias for a memory block containing raw data.

◆ RawMemoryHandle

A type alias for a handle to raw memory.

Function Documentation

◆ ReadSentinel() [1/2]

template<typename Structure >
xentara::memory::ReadSentinel ( const MemoryBlock< Structure > &  ) -> ReadSentinel< Structure >

Template deduction guide generating a read sentinel from a memory block.

◆ ReadSentinel() [2/2]

template<typename Structure >
xentara::memory::ReadSentinel ( const MemoryHandle< Structure > &  ) -> ReadSentinel< Structure >

Template deduction guide generating a read sentinel from a memory handle.

◆ WriteSentinel() [1/2]

template<typename Structure >
xentara::memory::WriteSentinel ( MemoryBlock< Structure > &  ) -> WriteSentinel< Structure >

Template deduction guide generating a write sentinel from a memory block.

◆ WriteSentinel() [2/2]

template<typename Structure >
xentara::memory::WriteSentinel ( MemoryBlock< Structure > &  ,
CopyOldValuesTag   
) -> WriteSentinel< Structure >

Template deduction guide generating a write sentinel from a memory block.