1#ifndef HEFFTE_STOCK_ALLOCATOR_H
2#define HEFFTE_STOCK_ALLOCATOR_H
8#include "heffte_stock_complex.h"
28 typedef std::ptrdiff_t difference_type;
43 #ifdef Heffte_ENABLE_AVX
69template<
typename F,
int L>
73template<
typename F,
int L>
Allocator to use with heffte::stock::Complex types Class to properly allocate heffte::stock::Complex<...
Definition heffte_stock_allocator.h:19
pointer allocate(size_type n, void const *=nullptr)
Define allocation for complex type.
Definition heffte_stock_allocator.h:42
void construct(pointer p, const_reference value)
Copy into pointer.
Definition heffte_stock_allocator.h:55
bool operator!=(const complex_allocator_t &rhs)
Define != operator.
Definition heffte_stock_allocator.h:65
void deallocate(pointer p, size_type)
Define deallocation for complex type.
Definition heffte_stock_allocator.h:50
size_type max_size() const noexcept
Define maximum size of an array of this.
Definition heffte_stock_allocator.h:60
void destroy(pointer p)
Destroy a pointer to this type.
Definition heffte_stock_allocator.h:57
F value_type
Mandatory aliases.
Definition heffte_stock_allocator.h:22
bool operator==(const complex_allocator_t &)
Define == operator.
Definition heffte_stock_allocator.h:63
const_pointer address(const_reference r) const
Get address from a const reference.
Definition heffte_stock_allocator.h:39
pointer address(reference r)
Get address from a reference.
Definition heffte_stock_allocator.h:37
Namespace containing all HeFFTe methods and classes.
Definition heffte_backend_cuda.h:38
Wrapper around cufftHandle plans, set for float or double complex.
Definition heffte_backend_cuda.h:346
Defining rebind for the allocator.
Definition heffte_stock_allocator.h:32