Diligent Engine  v.2.4.g
Classes | Public Types | Public Member Functions | Public Attributes | List of all members
Diligent::STDAllocator< T, AllocatorType > Struct Template Reference

#include <STDAllocator.hpp>

Classes

struct  rebind
 

Public Types

using value_type = T
 
using pointer = value_type *
 
using const_pointer = const value_type *
 
using reference = value_type &
 
using const_reference = const value_type &
 
using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 

Public Member Functions

 STDAllocator (AllocatorType &Allocator, const Char *Description, const Char *FileName, const Int32 LineNumber) noexcept
 
template<class U >
 STDAllocator (const STDAllocator< U, AllocatorType > &other) noexcept
 
template<class U >
 STDAllocator (STDAllocator< U, AllocatorType > &&other) noexcept
 
template<class U >
STDAllocatoroperator= (STDAllocator< U, AllocatorType > &&other) noexcept
 
T * allocate (std::size_t count)
 
pointer address (reference r)
 
const_pointer address (const_reference r)
 
void deallocate (T *p, std::size_t count)
 
size_type max_size () const
 
template<class U , class... Args>
void construct (U *p, Args &&... args)
 
void destroy (pointer p)
 

Public Attributes

AllocatorType & m_Allocator
 

Member Typedef Documentation

◆ const_pointer

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::const_pointer = const value_type*

◆ const_reference

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::const_reference = const value_type&

◆ difference_type

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::difference_type = std::ptrdiff_t

◆ pointer

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::pointer = value_type*

◆ reference

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::reference = value_type&

◆ size_type

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::size_type = std::size_t

◆ value_type

template<typename T , typename AllocatorType >
using Diligent::STDAllocator< T, AllocatorType >::value_type = T

Constructor & Destructor Documentation

◆ STDAllocator() [1/3]

template<typename T , typename AllocatorType >
Diligent::STDAllocator< T, AllocatorType >::STDAllocator ( AllocatorType &  Allocator,
const Char Description,
const Char FileName,
const Int32  LineNumber 
)
inlinenoexcept

◆ STDAllocator() [2/3]

template<typename T , typename AllocatorType >
template<class U >
Diligent::STDAllocator< T, AllocatorType >::STDAllocator ( const STDAllocator< U, AllocatorType > &  other)
inlinenoexcept

◆ STDAllocator() [3/3]

template<typename T , typename AllocatorType >
template<class U >
Diligent::STDAllocator< T, AllocatorType >::STDAllocator ( STDAllocator< U, AllocatorType > &&  other)
inlinenoexcept

Member Function Documentation

◆ address() [1/2]

template<typename T , typename AllocatorType >
const_pointer Diligent::STDAllocator< T, AllocatorType >::address ( const_reference  r)
inline

◆ address() [2/2]

template<typename T , typename AllocatorType >
pointer Diligent::STDAllocator< T, AllocatorType >::address ( reference  r)
inline

◆ allocate()

template<typename T , typename AllocatorType >
T* Diligent::STDAllocator< T, AllocatorType >::allocate ( std::size_t  count)
inline

◆ construct()

template<typename T , typename AllocatorType >
template<class U , class... Args>
void Diligent::STDAllocator< T, AllocatorType >::construct ( U *  p,
Args &&...  args 
)
inline

◆ deallocate()

template<typename T , typename AllocatorType >
void Diligent::STDAllocator< T, AllocatorType >::deallocate ( T *  p,
std::size_t  count 
)
inline

◆ destroy()

template<typename T , typename AllocatorType >
void Diligent::STDAllocator< T, AllocatorType >::destroy ( pointer  p)
inline

◆ max_size()

template<typename T , typename AllocatorType >
size_type Diligent::STDAllocator< T, AllocatorType >::max_size ( ) const
inline

◆ operator=()

template<typename T , typename AllocatorType >
template<class U >
STDAllocator& Diligent::STDAllocator< T, AllocatorType >::operator= ( STDAllocator< U, AllocatorType > &&  other)
inlinenoexcept

Member Data Documentation

◆ m_Allocator

template<typename T , typename AllocatorType >
AllocatorType& Diligent::STDAllocator< T, AllocatorType >::m_Allocator

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