NIST Biometric Evaluation Framework
Software components for biometric technology evaluations
Namespaces | Classes | Typedefs | Functions
BiometricEvaluation::Memory Namespace Reference

Support for memory-related operations. More...

Namespaces

namespace  AutoArrayUtility
 Convenience functions for AutoArrays.
 

Classes

class  AutoArray
 A C-style array wrapped in the facade of a C++ STL container. More...
 
class  AutoArrayIterator
 RandomAccessIterator for any AutoArray. More...
 
class  AutoBuffer
 
class  IndexedBuffer
 Wrap a memory buffer with an index. More...
 
class  MutableIndexedBuffer
 Mutable version of an IndexedBuffer. More...
 
class  OrderedMap
 A map where insertion order is preserved and elements are unique. More...
 
class  OrderedMapConstIterator
 Const Iterator for OrderedMaps. More...
 
class  OrderedMapIterator
 Iterator for OrderedMaps. More...
 
struct  unique_if
 Define a type that is visible when T is not an array. More...
 
struct  unique_if< T[]>
 Define a type that is visible when T is an unknown-bound array. More...
 
struct  unique_if< T[S]>
 Define a type that is visible when T is an known-bound array. More...
 

Typedefs

using uint8Array = AutoArray< uint8_t >
 
using uint16Array = AutoArray< uint16_t >
 
using uint32Array = AutoArray< uint32_t >
 

Functions

template<typename T , typename... Ts>
unique_if< T >::unique_single make_unique (Ts &&... params)
 Framework version of std::make_unique for non-array types. More...
 
template<class T >
unique_if< T >::unique_array_unknown_bound make_unique (size_t size)
 Framework version of std::make_unique for unknown-bound arrays. More...
 
template<class T , class... Ts>
unique_if< T >::unique_array_known_bound make_unique (Ts &&...)=delete
 Framework version of std::make_unique for known-bound arrays. More...
 
bool isLittleEndian ()
 Determine endianess of current platform. More...
 
template<typename T >
bool operator== (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 
template<typename T >
bool operator!= (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 
template<typename T >
bool operator< (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 
template<typename T >
bool operator<= (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 
template<typename T >
bool operator> (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 
template<typename T >
bool operator>= (const AutoArray< T > &lhs, const AutoArray< T > &rhs)
 

Detailed Description

Support for memory-related operations.

The Memory package contains templates and classes that are used to manage memory, auto-sizing arrays, for example.

Typedef Documentation

◆ uint8Array

Definition at line 443 of file be_memory_autoarray.h.

◆ uint16Array

Definition at line 444 of file be_memory_autoarray.h.

◆ uint32Array

Definition at line 445 of file be_memory_autoarray.h.

Function Documentation

◆ make_unique() [1/3]

template<typename T , typename... Ts>
unique_if< T >::unique_single BiometricEvaluation::Memory::make_unique ( Ts &&...  params)

Framework version of std::make_unique for non-array types.

Note
Coming in C++14. This implementation is taken from "Effective Modern C++" by Scott Meyers, modified to participate in the overload resolution only when T is not an array.
This function shall not participate in overload resolution unless T is not an array.

Definition at line 88 of file be_memory.h.

◆ make_unique() [2/3]

template<class T >
unique_if< T >::unique_array_unknown_bound BiometricEvaluation::Memory::make_unique ( size_t  size)

Framework version of std::make_unique for unknown-bound arrays.

Note
Coming in C++14. This implementation is taken from the LLVM implementation.
This function shall not participate in overload resolution unless T is an array of unknown bound.

Definition at line 109 of file be_memory.h.

◆ make_unique() [3/3]

template<class T , class... Ts>
unique_if< T >::unique_array_known_bound BiometricEvaluation::Memory::make_unique ( Ts &&  ...)
delete

Framework version of std::make_unique for known-bound arrays.

Note
Coming in C++14. This implementation is taken from the LLVM implementation.
This function shall not participate in overload resolution unless T is an array of known bound.

◆ isLittleEndian()

bool BiometricEvaluation::Memory::isLittleEndian ( )
inline

Determine endianess of current platform.

Returns
true if current platform is little endian. false otherwise.

Definition at line 139 of file be_memory.h.

◆ operator==()

template<typename T >
bool BiometricEvaluation::Memory::operator== ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Equivalence of all accessible entries and size.

◆ operator!=()

template<typename T >
bool BiometricEvaluation::Memory::operator!= ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Whether size or any accessible entries differ.

◆ operator<()

template<typename T >
bool BiometricEvaluation::Memory::operator< ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Lexicographical comparison of accessible entries.

◆ operator<=()

template<typename T >
bool BiometricEvaluation::Memory::operator<= ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Lexicographical comparison of accessible entries.

◆ operator>()

template<typename T >
bool BiometricEvaluation::Memory::operator> ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Lexicographical comparison of accessible entries.

◆ operator>=()

template<typename T >
bool BiometricEvaluation::Memory::operator>= ( const AutoArray< T > &  lhs,
const AutoArray< T > &  rhs 
)
Returns
Lexicographical comparison of accessible entries.