Home | History | Annotate | Download | only in Core

Lines Matching refs:XprType

21   * \param XprType the type of the expression in which we are taking a block
38 * \note Even though this expression has dynamic size, in the case where \a XprType
50 template<typename XprType, int BlockRows, int BlockCols, bool InnerPanel, bool HasDirectAccess>
51 struct traits<Block<XprType, BlockRows, BlockCols, InnerPanel, HasDirectAccess> > : traits<XprType>
53 typedef typename traits<XprType>::Scalar Scalar;
54 typedef typename traits<XprType>::StorageKind StorageKind;
55 typedef typename traits<XprType>::XprKind XprKind;
56 typedef typename nested<XprType>::type XprTypeNested;
59 MatrixRows = traits<XprType>::RowsAtCompileTime,
60 MatrixCols = traits<XprType>::ColsAtCompileTime,
65 : int(traits<XprType>::MaxRowsAtCompileTime),
68 : int(traits<XprType>::MaxColsAtCompileTime),
69 XprTypeIsRowMajor = (int(traits<XprType>::Flags)&RowMajorBit) != 0,
76 ? int(inner_stride_at_compile_time<XprType>::ret)
77 : int(outer_stride_at_compile_time<XprType>::ret),
79 ? int(outer_stride_at_compile_time<XprType>::ret)
80 : int(inner_stride_at_compile_time<XprType>::ret),
86 FlagsLvalueBit = is_lvalue<XprType>::value ? LvalueBit : 0,
88 Flags0 = traits<XprType>::Flags & ( (HereditaryBits & ~RowMajorBit) |
97 template<typename XprType, int BlockRows, int BlockCols, bool InnerPanel, bool HasDirectAccess> class Block
98 : public internal::dense_xpr_base<Block<XprType, BlockRows, BlockCols, InnerPanel, HasDirectAccess> >::type
109 inline Block(XprType& xpr, Index i)
111 // It is a row if and only if BlockRows==1 and BlockCols==XprType::ColsAtCompileTime,
112 // and it is a column if and only if BlockRows==XprType::RowsAtCompileTime and BlockCols==1,
115 m_startRow( (BlockRows==1) && (BlockCols==XprType::ColsAtCompileTime) ? i : 0),
116 m_startCol( (BlockRows==XprType::RowsAtCompileTime) && (BlockCols==1) ? i : 0),
121 ((BlockRows==1) && (BlockCols==XprType::ColsAtCompileTime) && i<xpr.rows())
122 ||((BlockRows==XprType::RowsAtCompileTime) && (BlockCols==1) && i<xpr.cols())));
127 inline Block(XprType& xpr, Index startRow, Index startCol)
138 inline Block(XprType& xpr,
157 EIGEN_STATIC_ASSERT_LVALUE(XprType)
175 EIGEN_STATIC_ASSERT_LVALUE(XprType)
232 const typename internal::remove_all<typename XprType::Nested>::type& nestedExpression() const
249 const typename XprType::Nested m_xpr;
250 const internal::variable_if_dynamic<Index, XprType::RowsAtCompileTime == 1 ? 0 : Dynamic> m_startRow;
251 const internal::variable_if_dynamic<Index, XprType::ColsAtCompileTime == 1 ? 0 : Dynamic> m_startCol;
257 template<typename XprType, int BlockRows, int BlockCols, bool InnerPanel>
258 class Block<XprType,BlockRows,BlockCols, InnerPanel,true>
259 : public MapBase<Block<XprType, BlockRows, BlockCols, InnerPanel, true> >
270 inline Block(XprType& xpr, Index i)
272 (BlockRows==1) && (BlockCols==XprType::ColsAtCompileTime) ? i : 0,
273 (BlockRows==XprType::RowsAtCompileTime) && (BlockCols==1) ? i : 0)),
279 ((BlockRows==1) && (BlockCols==XprType::ColsAtCompileTime) && i<xpr.rows())
280 ||((BlockRows==XprType::RowsAtCompileTime) && (BlockCols==1) && i<xpr.cols())));
286 inline Block(XprType& xpr, Index startRow, Index startCol)
296 inline Block(XprType& xpr,
309 const typename internal::remove_all<typename XprType::Nested>::type& nestedExpression() const
336 inline Block(XprType& xpr, const Scalar* data, Index blockRows, Index blockCols)
351 typename XprType::Nested m_xpr;