10 #ifndef EIGEN_FORCEALIGNEDACCESS_H
11 #define EIGEN_FORCEALIGNEDACCESS_H
31 template<
typename ExpressionType>
32 struct traits<ForceAlignedAccess<ExpressionType> > :
public traits<ExpressionType>
37 :
public internal::dense_xpr_base< ForceAlignedAccess<ExpressionType> >::type
41 typedef typename internal::dense_xpr_base<ForceAlignedAccess>::type
Base;
72 return m_expression.const_cast_derived().coeffRef(index);
75 template<
int LoadMode>
81 template<
int LoadMode>
87 template<
int LoadMode>
93 template<
int LoadMode>
96 m_expression.const_cast_derived().template writePacket<Aligned>(index,
x);
111 template<
typename Derived>
121 template<
typename Derived>
122 inline ForceAlignedAccess<Derived>
125 return ForceAlignedAccess<Derived>(derived());
131 template<
typename Derived>
132 template<
bool Enable>
133 inline add_const_on_value_type_t<std::conditional_t<Enable,ForceAlignedAccess<Derived>,Derived&>>
142 template<
typename Derived>
143 template<
bool Enable>
144 inline std::conditional_t<Enable,ForceAlignedAccess<Derived>,Derived&>
RowXpr row(Index i)
This is the const version of row(). */.
ColXpr col(Index i)
This is the const version of col().
#define EIGEN_DEVICE_FUNC
#define EIGEN_DENSE_PUBLIC_INTERFACE(Derived)
Enforce aligned packet loads and stores regardless of what is requested.
const CoeffReturnType coeff(Index index) const
Scalar & coeffRef(Index index)
EIGEN_CONSTEXPR Index rows() const EIGEN_NOEXCEPT
const PacketScalar packet(Index row, Index col) const
void writePacket(Index row, Index col, const PacketScalar &x)
void writePacket(Index index, const PacketScalar &x)
const CoeffReturnType coeff(Index row, Index col) const
const PacketScalar packet(Index index) const
EIGEN_CONSTEXPR Index outerStride() const EIGEN_NOEXCEPT
Scalar & coeffRef(Index row, Index col)
ForceAlignedAccess & operator=(const ForceAlignedAccess &)
EIGEN_CONSTEXPR Index innerStride() const EIGEN_NOEXCEPT
internal::dense_xpr_base< ForceAlignedAccess >::type Base
const ExpressionType & m_expression
EIGEN_CONSTEXPR Index cols() const EIGEN_NOEXCEPT
const Derived & forceAlignedAccessIf() const
const Derived & forceAlignedAccess() const
EIGEN_DEFAULT_DENSE_INDEX_TYPE Index
The Index type as used for the API.