У меня есть .net DLL (C#), которая получает в реальном времени (и много) данные по TCP от датчика. Данные поступают как массивы пользовательских объектов. (назовите это SensorPacket, который имеет около 20 полей, в основном float и int).return struct from .net dll (C#)
Я отправлял это в Matlab через события (отлично работает). Но Matlab рассматривает их как массив объектов .NET. Я бы предпочел отправить это как массив структуры. Как?
да, можно преобразовать этот массив в массив ячеек с помощью:
http://www.mathworks.com/help/matlab/matlab_external/net-arrays-to-cell-arrays.html
, но это все еще оставляет это как массив ячеек .net объектов. Можно ли отбросить объекты, чтобы я мог получить значения?
и лучше было бы отправить ячейку/массив структуры.
Я попытался преобразовать это в JSON, и с помощью MatLab JSON читателя преобразовать структур, но это очень и очень медленно: http://www.mathworks.com/matlabcentral/fileexchange/33381-jsonlab--a-toolbox-to-encode-decode-json-files
Не смейтесь, но я имею в виду с помощью DLL для напишите файл .MAT, а затем отправьте дескриптор в Matlab. Этот писатель может работать: http://www.mathworks.com/matlabcentral/fileexchange/16319-csmatio--mat-file-i-o-api-for-net-2-0
На следующей странице, он говорит, что я могу вернуться структуры или класса, но мой опыт показывает, что это возвращает System.Object
http://www.mathworks.com/help/matlab/matlab_external/handling-net-data-in-matlab_bte9owt-1.html