SUNphi
1.0
|
#include <TensStor.hpp>
Public Types | |
using | Tk = TK |
Tensor Kind mapped. | |
Public Member Functions | |
template<class... Args, class = ConstrainAreSame<int,Args...>> | |
T & | eval (const Args &...args) |
template<class... Args, class = ConstrainAreSame<int,Args...>> | |
const T & | eval (const Args &...args) const |
template<typename TC , TypeIf<(isDynamic< TC >), void * > = nullptr> | |
constexpr int | compSize () const |
Returns the size of a given component in the case it is Dynamic. | |
template<typename TC , TypeIf<(not isDynamic< TC >), void * > = nullptr> | |
int | compSize () const |
Returns the size of a given component in the case it is not Dynamic. | |
template<int Beg, int End> | |
int | compsRangeSize () const |
Returns the total size of the range [Beg, End) | |
template<int... Delims, int... DynComps> | |
decltype(auto) | compsRangeGroupsSize (const IntSeq< Delims... > &, const IntSeq< DynComps... > &mergedDynCompPos) const |
Creat the full list of dynamical sizes of the grouped comps. | |
template<typename Is > | |
decltype(auto) | mergedComps () const |
Returns a components-merged version of the TensStor. More... | |
void | alloc () |
Allocator. | |
template<class... DynSizes, typename = EnableIf<areIntegrals<Unqualified<DynSizes>...>>, class = ConstrainNTypes<TK::nDynamic,DynSizes...>> | |
TensStor (DynSizes &&...extDynSizes) | |
Constructor (test) | |
TensStor (const DynSizes< TK::nDynamic > &dynSizes, T *v) | |
Constructor taking dynSizes and pointer (test) | |
TensStor (const TensStor &oth) | |
~TensStor () | |
Destructor. | |
Public Attributes | |
T *& | _v |
Debug access to internal storage. More... | |
int | totSize |
Debug store size. | |
DynSizes< TK::nDynamic > | dynSizes |
Dynamic sizes. | |
Private Types | |
using | type = typename TK::types |
Tuple containg all mapped type. | |
Private Attributes | |
T * | v |
Internal storage. | |
bool | created |
Store whether this has been created or is a reference. More... | |
Tensor Storage holding the resources for a tensor
The tensor storage allocates and deallocates the memory location where a tensor is materially stored, keeping track of the amount of memory allocated. Facilities to reallocate the memory are provided.
Definition at line 29 of file TensStor.hpp.
|
inlineexplicit |
Copy constructor (test)
Definition at line 205 of file TensStor.hpp.
|
inline |
Returns a reference to a TensStor given a set of components
args | Components to extract |
Definition at line 69 of file TensStor.hpp.
|
inline |
Returns a const reference to a TensStor given a set of components
< Components to extract
Definition at line 70 of file TensStor.hpp.
|
inline |
Returns a components-merged version of the TensStor.
Returned TensKind
Returned type
Position of the merged dynamical components
Dynamic sizes after merge
Definition at line 135 of file TensStor.hpp.
T* & SUNphi::TensStor< TK, T >::_v |
|
private |
Store whether this has been created or is a reference.
Definition at line 40 of file TensStor.hpp.