#include <oski/mangle.h>
Go to the source code of this file.
Data Structures | |
struct | oski_vecstruct_t |
Multivector view structure. More... | |
Defines | |
#define | INC_OSKI_VECTOR_H |
oski/vector.h included. | |
#define | MAKE_VECSTRUCT_INIT(m, n, orient, stride, rowinc, colinc, val) {m, n, orient, stride, rowinc, colinc, val} |
Macro for initializing a declared oski_vecstruct_t variable. | |
#define | VECRM_GET(v, i, j, s) (v)[(i)*(s) + (j)] |
Get the (i, j) element from an array v stored in row-major layout with stride s. | |
#define | VECCM_GET(v, i, j, s) (v)[(i) + (j)*(s)] |
Get the (i, j) element from an array v stored in column-major layout with stride s. | |
#define | VECVIEW_GET(x, i, j) |
Get the (i, j) element of an arbitrary vector view. | |
#define | IS_VECVIEW_COLVEC(x) ((x)->num_cols == 1) |
Returns 1 if x is a column vector. | |
#define | IS_VECVIEW_COLVEC_STRIDE1(x) |
Returns 1 if x is a unit stride column vector. |
|
Value: ( \ IS_VECVIEW_COLVEC(x) \ && ( \ (((x)->orient == LAYOUT_ROWMAJ) && ((x)->stride == 1)) \ || (((x)->orient == LAYOUT_COLMAJ)) \ ) \ )
|
|
Get the (i, j) element from an array v stored in column-major layout with stride s.
|
|
Get the (i, j) element from an array v stored in row-major layout with stride s.
|
|
Value: (((x)->orient == LAYOUT_ROWMAJ) \ ? VECRM_GET((x)->val, i, j, (x)->stride) \ : VECCM_GET((x)->val, i, j, (x)->stride) \ )
|