Layouts

BLAS memory layouts.

Usage

var layouts = require( '@stdlib/blas/base/layouts' );

layouts()

Returns a list of BLAS memory layouts.

var out = layouts();
// e.g., returns [ 'row-major', 'column-major' ]

The output array contains the following layouts:

  • row-major: row-major (C-style) order.
  • column-major: column-major (Fortran-style) order.

Examples

var contains = require( '@stdlib/array/base/assert/contains' ).factory;
var layouts = require( '@stdlib/blas/base/layouts' );

var isLayout = contains( layouts() );

var bool = isLayout( 'row-major' );
// returns true

bool = isLayout( 'column-major' );
// returns true

bool = isLayout( 'beep' );
// returns false

C APIs

Usage

#include "stdlib/blas/base/layouts.h"

STDLIB_BLAS_LAYOUT

An enumeration of BLAS memory layouts with the following fields:

  • STDLIB_BLAS_ROW_MAJOR: row-major (C-style) order.
  • STDLIB_BLAS_COLUMN_MAJOR: column-major (Fortran-style) order.
#include "stdlib/blas/base/layouts.h"

const enum STDLIB_BLAS_LAYOUT layout = STDLIB_BLAS_ROW_MAJOR;

Notes

  • Enumeration constants should be considered opaque values, and one should not rely on specific integer values.
Did you find this page helpful?