private void InternalCallback(uint number, uint inputCount, uint outputCount, global::System.IntPtr inputs, global::System.IntPtr outputs)
{
float[] callbackInput = new float[inputCount];
float[] callbackOutput = new float[outputCount];
Callback(number, inputCount, outputCount, callbackInput, callbackOutput);
using (floatArray inputArray = new floatArray(inputs, false))
using (floatArray outputArray = new floatArray(outputs, false))
{
for (int i = 0; i < inputCount; i++)
{
inputArray.setitem(i, callbackInput[i]);
}
for (int i = 0; i < outputCount; i++)
{
outputArray.setitem(i, callbackOutput[i]);
}
}
}