Go to the documentation of this file.
10 #ifndef EIGEN_CXX11_TENSOR_TENSOR_MAP_H
11 #define EIGEN_CXX11_TENSOR_TENSOR_MAP_H
23 template<
typename PlainObjectType,
int Options_,
template <
class>
class MakePointer_>
class TensorMap :
public TensorBase<TensorMap<PlainObjectType, Options_, MakePointer_> >
85 #if EIGEN_HAS_VARIADIC_TEMPLATES
110 EIGEN_STRONG_INLINE TensorMap(
StoragePointerType dataPtr,
Index dim1,
Index dim2,
Index dim3,
Index dim4,
Index dim5) :
m_data(dataPtr),
m_dimensions(dim1, dim2, dim3, dim4, dim5) {
119 template <
typename Dimensions>
145 if (PlainObjectType::Options&
RowMajor) {
168 #if EIGEN_HAS_VARIADIC_TEMPLATES
174 if (PlainObjectType::Options&
RowMajor) {
186 if (PlainObjectType::Options&
RowMajor) {
197 if (PlainObjectType::Options&
RowMajor) {
208 if (PlainObjectType::Options&
RowMajor) {
219 if (PlainObjectType::Options&
RowMajor) {
233 if (PlainObjectType::Options&
RowMajor) {
256 #if EIGEN_HAS_VARIADIC_TEMPLATES
260 static_assert(
sizeof...(otherIndices) + 2 ==
NumIndices ||
NumIndices ==
Dynamic,
"Number of indices used to access a tensor coefficient must be equal to the rank of the tensor.");
262 const std::size_t NumDims =
sizeof...(otherIndices) + 2;
263 if (PlainObjectType::Options&
RowMajor) {
275 if (PlainObjectType::Options&
RowMajor) {
286 if (PlainObjectType::Options&
RowMajor) {
297 if (PlainObjectType::Options&
RowMajor) {
308 if (PlainObjectType::Options&
RowMajor) {
327 #endif // EIGEN_CXX11_TENSOR_TENSOR_MAP_H
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index rank() const
#define EIGEN_DEVICE_FUNC
Eigen::internal::nested< Self >::type Nested
Namespace containing all symbols from the Eigen library.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()()
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()() const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3, Index i4)
internal::conditional< bool(internal::is_lvalue< PlainObjectType >::value), Scalar &, const Scalar & >::type StorageRefType
internal::traits< PlainObjectType >::StorageKind StorageKind
MakePointer_< Scalar >::ConstType PointerConstType
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index index) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3, Index dim4)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3, Index dim4, Index dim5)
static const Index NumIndices
#define eigen_internal_assert(x)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(PlainObjectType &tensor)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, const array< Index, NumIndices > &dimensions)
internal::conditional< bool(internal::is_lvalue< PlainObjectType >::value), PointerType, PointerConstType >::type StoragePointerType
static const Eigen::internal::all_t all
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StoragePointerType data()
#define EIGEN_STRONG_INLINE
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3, Index i4) const
PlainObjectType::Base::CoeffReturnType CoeffReturnType
TensorMap< PlainObjectType, Options_, MakePointer_ > Self
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index dimension(Index n) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE Index size() const
A tensor expression mapping an existing array of data.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index index)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index firstDimension)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2)
TensorBase< TensorMap< PlainObjectType, Options_, MakePointer_ > > Base
internal::traits< PlainObjectType >::Scalar Scalar
#define EIGEN_TENSOR_INHERIT_ASSIGNMENT_OPERATORS(Derived)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, const Dimensions &dimensions)
#define EIGEN_STATIC_ASSERT(CONDITION, MSG)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(const array< Index, NumIndices > &indices) const
NumTraits< Scalar >::Real RealScalar
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1) const
EIGEN_DEVICE_FUNC const EIGEN_STRONG_INLINE Dimensions & dimensions() const
MakePointer_< Scalar >::Type PointerType
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2, Index i3) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StoragePointerType data() const
PlainObjectType::Dimensions Dimensions
StoragePointerType m_data
internal::traits< PlainObjectType >::Index Index
Holds information about the various numeric (i.e. scalar) types allowed by Eigen.
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(Index i0, Index i1, Index i2) const
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE TensorMap(StoragePointerType dataPtr, Index dim1, Index dim2, Index dim3)
EIGEN_DEVICE_FUNC EIGEN_STRONG_INLINE StorageRefType operator()(const array< Index, NumIndices > &indices)
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.
gtsam
Author(s):
autogenerated on Fri Nov 1 2024 03:38:08