Wolfram Language

NumericArray en LibraryLink

Los objetos NumericArray y ByteArray en Wolfram Language pueden ser transmitidos desde o hacia una LibraryFunction, donde aparecen como argumentos o resultados de tipo MNumericArrary. MNumericArray es un indicador a una estructura de datos, y se transmite por referencia. El manejo de memoria para MNumericArray es muy similar al manejo de memoria de MTensor.

La familia de funciones de devolución de llamada MNumericArray se encuentra en el campo de numericarrayLibraryFunctions de WolframLibraryData, y se declara en WolframNumericArrayLibrary.h.

A continuación un ejemplo de uso habitual.

#include "WolframNumericArrayLibrary.h" .... MNumericArray na_in = NULL, na_out = NULL; errcode_t err = 0; numericarray_data_t type = MNumericArray_Type_Undef; WolframNumericArrayLibrary_Functions naFuns = libData->numericarrayLibraryFunctions; ... na_in = MArgument_getMNumericArray(Args[0]); type = naFuns->MNumericArray_getType(na_in); if(type != MNumericArray_Type_Real32) { err = naFuns->MNumericArray_convertType(&na_out, na_in, MNumericArray_Type_Real32, MNumericArray_Convert_Coerce, 1); ... } ...

Los ejemplos en la biblioteca demo_numericarray muestran cómo usar argumentos MNumericArray y resultados con objetos NumericArray y ByteArray en Wolfram Language.

Este ejemplo muestra cómo calcular el conjugado complejo de elementos almacenados en un NumericArray.

La función readBytesFromFile de la demostración muestra cómo leer datos de un archivo y almacenarlos en un objeto ByteArray.

Ejemplos relacionados

de en fr ja ko pt-br zh