Интерфейс прикладного программирования загрузки данных

Спецификация API загрузки данных

Можно использовать API загрузки данных (интерфейс прикладного программирования), чтобы записать собственную функцию загрузки данных, подключить эти функции к тулбоксу и впоследствии использовать данные, загруженные этими функциями в тулбоксе. Для этого существует несколько этапов, которые необходимо выполнить, как описано ниже. Для получения примера см. xregReadConcerto.mmbctools директория).

Прототип функции данных

Функция для успешной загрузки данных имеет следующий прототип:

[OK, msg, out] = dataLoadingFcn(filename, protoOut)

Входные параметры

filename - полный путь к загружаемому файлу.

protoOut - пустая структура с полями, ожидаемыми в возвращаемом аргументе out. Это позволяет легко расширить API загрузки данных без необходимости изменения функций загрузки данных при изменении тулбокса.

Выходные аргументы

Первый возвращаемый аргумент, OK, позволяет функции сигнализировать, что она успешно загрузила файл данных. Значение 1 сигнализирует об успехе и 0 об отказе. Если функция прекращает работать, она может вернуть сообщение, msg, указать причину отказа. Это сообщение отображается в диалоговом окне предупреждения в случае сбоя функции. Если функция успешна, возвращаемый аргумент out содержит данные, необходимые для тулбокса.

out.varNames - массив ячеек из строк, которые содержат имена переменных в данных (1 x n или n x 1).

out.varUnits - массив ячеек из строк, в которых хранятся модули, сопоставленные с переменными в varNames (1 x n или n x 1). Этот массив может быть пустым, в этом случае никакие модули не заданы.

out.data - массив, который содержит значения переменных (m x n).

out.comment - необязательная строка, содержащая комментарии к данным.

Проверка функции данных

Как только вы написали функцию, необходимо проверить ее в тулбокс, используя mbccheckindataloadingfcn функция. Эта функция имеет следующий прототип:

OK= mbccheckindataloadingfcn(fun, filterSpec, fileType, filename)

fun - строка, которая является функцией, вызываемой для загрузки данных. Эта функция должна быть на MATLAB® путь.

filterSpec является 1 x 2 массив ячеек элемента, который содержит расширения, которые загружает эта функция, и описания этих файлов. Этот массив ячеек используется в uigetfile функция, для примера, {'*.m;*.fig;*.mat;', 'All MATLAB Files'} или {'*.m', 'M-files (*.m)'}. MBC пытается автоматически решить, какой тип файла загружается, на основе расширения. В случае повторяющихся расширений выбирается первый в списке; однако всегда можно переопределить автоматический выбор пользователем. Вы увидите предупреждающее сообщение, если есть какая-либо неоднозначность.

fileType - строка, которая описывает тип файла, например 'MATLAB file' или 'Excel file'.

Похожие темы