utDataOp

binary operation between untyped buffers

pure
void
utDataOp
(
string op
)
(,
void* dst
,
void* utb
)
if (
(
op == "+" ||
op == "-"
||
op == "*"
||
op == "/"
)
)

Parameters

info ElemInfo

common to all buffers information

dst void*

result buffer ptr

utb void*

buffer ptr B

Examples

ubyte[] a = [ 10, 20, 30, 40 ];
ubyte[] b = [ 60, 70, 40, 20 ];

utDataOp!"+"( ElemInfo( DataType.UNORM_QUART, 4 ), a.ptr, b.ptr );

assert( eq( a, [70,90,70,60] ) );

utDataOp!"+"( ElemInfo( DataType.UBYTE, 2 ), a.ptr, a.ptr + 2 );

assert( eq( a, [140,150,70,60] ) );

Meta