25 #ifndef EIGEN_ARRAYWRAPPER_H
26 #define EIGEN_ARRAYWRAPPER_H
42 template<
typename ExpressionType>
43 struct traits<ArrayWrapper<ExpressionType> >
44 :
public traits<typename remove_all<typename ExpressionType::Nested>::type >
46 typedef ArrayXpr XprKind;
50 template<
typename ExpressionType>
58 typedef typename internal::conditional<
59 internal::is_lvalue<ExpressionType>::
value,
83 return m_expression.const_cast_derived().coeffRef(row, col);
88 return m_expression.const_cast_derived().coeffRef(row, col);
98 return m_expression.const_cast_derived().coeffRef(index);
103 return m_expression.const_cast_derived().coeffRef(index);
106 template<
int LoadMode>
112 template<
int LoadMode>
118 template<
int LoadMode>
124 template<
int LoadMode>
127 m_expression.const_cast_derived().template writePacket<LoadMode>(index, x);
130 template<
typename Dest>
133 const typename internal::remove_all<NestedExpressionType>::type&
155 template<
typename ExpressionType>
156 struct traits<MatrixWrapper<ExpressionType> >
157 :
public traits<typename remove_all<typename ExpressionType::Nested>::type >
163 template<
typename ExpressionType>
171 typedef typename internal::conditional<
172 internal::is_lvalue<ExpressionType>::
value,
196 return m_expression.const_cast_derived().coeffRef(row, col);
211 return m_expression.const_cast_derived().coeffRef(index);
216 return m_expression.const_cast_derived().coeffRef(index);
219 template<
int LoadMode>
225 template<
int LoadMode>
231 template<
int LoadMode>
237 template<
int LoadMode>
240 m_expression.const_cast_derived().template writePacket<LoadMode>(index, x);
243 const typename internal::remove_all<NestedExpressionType>::type&
255 #endif // EIGEN_ARRAYWRAPPER_H