Delegate ChooseFlatKernel
Flat np.choose kernel: every operand is C-contiguous at the result shape, so element
flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
public delegate long ChooseFlatKernel(byte** choiceBases, byte* idxBase, byte* dstBase, long totalSize, long nChoices)
Parameters
choiceBasesbyte**- Flat np.choose kernel: every operand is C-contiguous at the result shape, so element flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
idxBasebyte*- Flat np.choose kernel: every operand is C-contiguous at the result shape, so element flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
dstBasebyte*- Flat np.choose kernel: every operand is C-contiguous at the result shape, so element flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
totalSizelong- Flat np.choose kernel: every operand is C-contiguous at the result shape, so element flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
nChoiceslong- Flat np.choose kernel: every operand is C-contiguous at the result shape, so element flat is at choiceBases[mi] + flatelem and ((long)idxBase)[flat].
Returns
- long
totalSizeon success, or the flat position of the first out-of-bounds index (raise mode only; clip/wrap kernels always returntotalSize).