registerCPPFunctionEntry

Создайте запись функции C++ на основе заданных параметров и регистра в заменяющей таблице кода

Описание

пример

entry = registerCPPFunctionEntry(hTable,priority,numInputs,functionName,inputType,implementationName,outputType,headerFile,genCallback,genFileName,nameSpace) обеспечивает быстрый способ создать и указать замену кода запись функции C++.

Эта функция может использоваться, только если ваша запись функции C++ отвечает следующим условиям:

  • Входные параметры имеют тот же тип.

  • Имена входного параметра и имя возвращаемого аргумента следуют соглашению о присвоении имен Simulink® по умолчанию:

    • Для имен входного параметра, u1, u2..., un

    • Для возвращаемого аргумента, y1

Когда вы указываете заменяющую библиотеку кода, содержащую записи функции C++, необходимо задать значение {'C++'} для LanguageConstraint свойство ключа реестра библиотеки. Для получения дополнительной информации смотрите Заменяющую Библиотеку Регистра Кода.

Примеры

свернуть все

В этом примере показано, как использовать registerCPPFunctionEntry функция, чтобы создать запись функции C++ для sin в заменяющей таблице кода.

hLib = RTW.TflTable;

hLib.registerCPPFunctionEntry(100, 1, 'sin', 'single', 'sin', ...
                              'single', 'cmath', '', '', 'std');

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

свернуть все

hTable указатель на заменяющую таблицу кода, ранее возвращенную hTable = RTW.TflTable.

Пример: hLib

priority задает поисковый приоритет для функциональной записи, относительно других записей того же имени функции и концептуального списка аргументов в рамках этой таблицы. Самый высокий приоритет 0, и самый низкий приоритет равняется 100. Если таблица обеспечивает две реализации для функции, реализацию с более высокими приоритетными тенями та с более низким приоритетом.

Пример: 100

Пример 1

functionName задает имя функции, чтобы заменить. Имя должно совпадать с функцией, перечисленной в Коде, который Можно Заменить из кода MATLAB или Кода, который Можно Заменить Из Моделей Simulink.

Пример: 'sin'

Эта функция требует, чтобы входные параметры имели тот же тип.

Пример: 'double'

implementationName задает имя реализации. Например, если functionName 'sqrt', implementationName может быть 'sqrt' или другое имя.

Пример: 'sqrt'

Пример: 'double'

Пример: '<math.h>'

genCallback задает коллбэк, который следует за генерацией кода. Если вы задаете 'RTW.copyFileToBuildDir', и если эта функциональная запись является соответствующей и используется, функция вызовов генератора кода RTW.copyFileToBuildDir после генерации кода. Эта функция обратного вызова копирует дополнительный заголовок, источник или объектные файлы, которые вы задали для этой функциональной записи в папку сборки.

Пример: ''

Этот аргумент резервируется для разработчиков MathWorks.

Пример: ''

nameSpace задает пространство имен C++, в котором задана функция реализации. Если эта функциональная запись является соответствующей, программное обеспечение испускает пространство имен в сгенерированном функциональном коде (например, std::sin(tfl_cpp_U.In1)). Если вы задаете '', программное обеспечение не испускает обозначение пространства имен в сгенерированном коде.

Пример: 'std'

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

свернуть все

entry указатель на созданную запись функции C++. Определение возвращаемого аргумента в registerCPPFunctionEntry вызов функции является дополнительным.

Введен в R2010a

Для просмотра документации необходимо авторизоваться на сайте