2.4. Requesting a specific data layout

The DDA API allows to express a very rich set of layout requirements. An aligned unit-stride (but not necessarily dense) row-major matrix can be requested like this:

typedef dda::Layout<2, row2_type, dda::Stride_unit_align<32> > layout_type;
dda::Ext_data<block_type, layout_type> ext(view.block(), dda::SYNC_IN);

And a dense column-major matrix may be requested like this:

typedef dda::Layout<2, col2_type, dda::Stride_unit_dense> layout_type;
dda::Ext_data<block_type, layout_type> ext(view.block(), dda::SYNC_IN);

For details on the Layout class template, see Section 5.2, “The Layout template”