batmat 0.0.14
Batched linear algebra routines
Loading...
Searching...
No Matches
storage.hpp File Reference

Detailed Description

Aligned allocation for matrix storage.

Definition in file storage.hpp.

#include <cstddef>
#include <memory>
#include <new>
#include <tuple>
#include <type_traits>

Go to the source code of this file.

Classes

struct  batmat::matrix::uninitialized_t
struct  batmat::matrix::aligned_deleter< T, A >
 Deleter for aligned memory allocated with operator new(size, align_val). More...
struct  batmat::matrix::aligned_deleter< void, A >

Namespaces

namespace  batmat
namespace  batmat::matrix
namespace  batmat::matrix::detail

Functions

template<class A>
constexpr std::align_val_t batmat::matrix::as_align_val (A a)
template<class T, class A, bool Init>
auto batmat::matrix::detail::make_aligned_unique_ptr (size_t size, A align)
template<class T, class A>
auto batmat::matrix::make_aligned_unique_ptr (size_t size, A align)
 Returns a smart pointer to an array of T that satisfies the given alignment requirements.
template<class T, class A>
auto batmat::matrix::make_aligned_unique_ptr (size_t size, A align, uninitialized_t)
 Returns a smart pointer to an array of T that satisfies the given alignment requirements.

Variables

struct batmat::matrix::uninitialized_t batmat::matrix::uninitialized
 Tag type to indicate that memory should not be initialized.