LArSoft
v09_90_00
Liquid Argon Software toolkit - https://larsoft.org/
|
#include "TensorIndices.h"
Public Types | |
using | Index_t = TensorIndicesBasicTypes::Index_t |
using | DimSize_t = TensorIndicesBasicTypes::DimSize_t |
using | LinIndex_t = TensorIndicesBasicTypes::LinIndex_t |
Public Member Functions | |
TensorIndices (DimSize_t dim) | |
template<typename ITER , typename = std::enable_if_t<std::is_convertible<decltype(*(ITER())), DimSize_t>::value, void>> | |
TensorIndices (ITER dimIter) | |
LinIndex_t | operator() (Index_t index) const |
template<typename ITER > | |
std::enable_if_t< std::is_convertible< decltype(*(ITER())), DimSize_t >::value, LinIndex_t > | operator() (ITER indexIter) const |
LinIndex_t | at (Index_t index) const |
template<typename ITER > | |
std::enable_if_t< std::is_convertible< decltype(*(ITER())), DimSize_t >::value, LinIndex_t > | at (ITER indexIter) const |
bool | has (Index_t index) const |
template<typename ITER > | |
std::enable_if_t< std::is_convertible< decltype(*(ITER())), DimSize_t >::value, bool > | has (ITER indexIter) const |
template<unsigned int DIM = 0> | |
DimSize_t | size () const |
template<unsigned int DIM> | |
DimSize_t | dim () const |
template<unsigned int DIM> | |
bool | hasIndex (Index_t index) const |
bool | hasLinIndex (LinIndex_t linIndex) const |
bool | operator== (TensorIndices< 1U > const &t) const |
bool | operator!= (TensorIndices< 1U > const &t) const |
Static Public Member Functions | |
static constexpr unsigned int | rank () |
Protected Member Functions | |
Index_t | checkOuterIndex (Index_t index) const |
DimSize_t | dim0 () const |
Returns the size of the outer dimension. More... | |
Private Member Functions | |
DimSize_t | totalSize () const |
Returns the total size of this tensor. More... | |
Private Attributes | |
DimSize_t | dimSize |
size of the largest dimension More... | |
Friends | |
template<unsigned int R, unsigned int D> | |
struct | details::ExtractTensorDimension |
Specialisation for vector index (rank 1).
Documentation is in the general template. No public methods are added respect to it (but the minor()
method is removed).
Definition at line 58 of file TensorIndices.h.
using util::TensorIndices< 1U >::DimSize_t = TensorIndicesBasicTypes::DimSize_t |
Definition at line 62 of file TensorIndices.h.
using util::TensorIndices< 1U >::Index_t = TensorIndicesBasicTypes::Index_t |
Definition at line 60 of file TensorIndices.h.
using util::TensorIndices< 1U >::LinIndex_t = TensorIndicesBasicTypes::LinIndex_t |
Definition at line 64 of file TensorIndices.h.
|
inline |
Definition at line 68 of file TensorIndices.h.
References value.
|
inline |
Definition at line 73 of file TensorIndices.h.
|
inline |
Definition at line 85 of file TensorIndices.h.
|
inline |
Definition at line 88 of file TensorIndices.h.
|
inlineprotected |
|
inline |
Definition at line 110 of file TensorIndices.h.
|
inlineprotected |
Returns the size of the outer dimension.
Definition at line 138 of file TensorIndices.h.
|
inline |
Definition at line 94 of file TensorIndices.h.
References util::size().
|
inline |
Definition at line 97 of file TensorIndices.h.
References util::size().
|
inline |
Definition at line 117 of file TensorIndices.h.
|
inline |
Definition at line 123 of file TensorIndices.h.
|
inline |
|
inline |
|
inline |
Definition at line 80 of file TensorIndices.h.
|
inline |
|
inlinestatic |
Definition at line 66 of file TensorIndices.h.
|
inline |
Definition at line 104 of file TensorIndices.h.
Referenced by operator!=(), and operator==().
|
inlineprivate |
Returns the total size of this tensor.
Definition at line 147 of file TensorIndices.h.
|
friend |
Definition at line 142 of file TensorIndices.h.
|
private |
size of the largest dimension
Definition at line 144 of file TensorIndices.h.