createAndAddConceptualArg

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

Описание

пример

arg = createAndAddConceptualArg(hEntry,argType, varargin) создает концептуальный аргумент из заданных свойств и добавляет аргумент к концептуальным аргументам для записи таблицы замещения кода.

Примеры

свернуть все

В этом примере показано, как использовать createAndAddConceptualArg функция для задания концептуальных выходов и входных параметров для записи оператора замены кода.

Для примеров аргументов с фиксированной точкой, которые используют относительное масштабирование или относительные значения наклона/смещения, смотрите Замену кода масштабирования Net Slope и Равный уклон и Нулевая замена кода смещения Nero Net.

op_entry = RTW.TflCOperationEntry;
.
.
.
createAndAddConceptualArg(op_entry, 'RTW.TflArgNumeric', ...
    'Name',       'y1', ...
    'IOType',     'RTW_IO_OUTPUT', ...
    'IsSigned',   true, ...
    'WordLength', 32, ...
    'FractionLength', 0);
                                  
createAndAddConceptualArg(op_entry, 'RTW.TflArgNumeric',...
    'Name',       'u1', ...
    'IOType',     'RTW_IO_INPUT',...
    'IsSigned',   true,...
    'WordLength', 32, ...
    'FractionLength', 0 );
                               
createAndAddConceptualArg(op_entry, 'RTW.TflArgNumeric',...
    'Name',       'u2', ...
    'IOType',     'RTW_IO_INPUT',...
    'IsSigned',   true,...
    'WordLength', 32, ...
    'FractionLength', 0 );

Эти примеры показывают некоторые общие спецификации типов, использующие createAndAddConceptualArg.

hEntry = RTW.TflCOperationEntry;
.
.
.
% uint8:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',           'u1', ... 
    'IOType',         'RTW_IO_INPUT', ...
    'IsSigned',       false, ...
    'WordLength',     8, ...
    'FractionLength', 0 );

% single:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',         'u1', ... 
    'IOType',       'RTW_IO_INPUT', ...
    'DataTypeMode', 'single' );

% double:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',         'y1', ... 
    'IOType',       'RTW_IO_OUTPUT', ...
    'DataTypeMode', 'double' );

% boolean:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',         'u1', ... 
    'IOType',       'RTW_IO_INPUT', ...
    'DataTypeMode', 'boolean' );

% Fixed-point using binary-point-only scaling:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',           'y1', ... 
    'IOType',         'RTW_IO_OUTPUT', ...
    'CheckSlope',     true, ...
    'CheckBias',      true, ...
    'DataTypeMode',   'Fixed-point: binary point scaling', ...
    'IsSigned',       true, ...
    'WordLength',     32, ...
    'FractionLength', 28);

% Fixed-point using [slope bias] scaling:
createAndAddConceptualArg(hEntry, 'RTW.TflArgNumeric', ...
    'Name',           'y1', ... 
    'IOType',         'RTW_IO_OUTPUT', ...
    'CheckSlope',     true, ...
    'CheckBias',      true, ...
    'DataTypeMode',   'Fixed-point: slope and bias scaling', ...
    'IsSigned',       true, ...
    'WordLength',     16, ...
    'Slope',          15, ...
    'Bias',           2);

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

свернуть все

The hEntry - указатель на запись таблицы замещения кода, ранее возвращенный путем создания экземпляра класса записи таблицы замещения кода, такого как hEntry = RTW.TflCFunctionEntry или hEntry = RTW.TflCOperationEntry.

Пример: op_entry

The argType - вектор символов или строковый скаляр, который задает тип аргумента для создания. Использование 'RTW.TflArgNumeric' для числа или 'RTW.TflArgMatrix' для матрицы.

Пример: 'RTW.TflArgNumeric'

Пример: 'Name','y1'

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'Name','y1'

Пример: 'Name','y1'

Используйте значение 'RTW_IO_INPUT' для входа или 'RTW_IO_OUTPUT' значения.

Пример: 'IOType','RTW_IO_INPUT'

Логическое значение, которое, когда установлено в true, указывает, что аргумент подписан.

Пример: 'IsSigned',true

Целое число, указывающее размер слова, в битах, аргумента. Значение по умолчанию является 16.

Пример: 'WordLength',16

Логический флаг, который, когда установлен на true для аргумента с фиксированной точкой приводит к тому, что обработка запроса на замену кода проверяет, что значение наклона аргумента в точности соответствует значению наклона узла вызова.

Задайте true если вы совпадаете с определенной комбинацией масштабирования [смещение наклона] или с определенной комбинацией масштабирования только для двоичных точек на входах оператора с фиксированной точкой и выходе. Задайте false если вы совпадаете с относительным масштабированием или значениями относительного наклона и смещения через входы и выход оператора с фиксированной точкой.

Пример: 'CheckSlope',true

Логический флаг, который, когда установлен на true для аргумента с фиксированной точкой приводит к тому, что обработка запроса на замену кода проверяет, что значение смещения аргумента в точности соответствует значению смещения узла вызова.

Задайте true если вы совпадаете с определенной комбинацией масштабирования [смещение наклона] или с определенной комбинацией масштабирования только для двоичных точек на входах оператора с фиксированной точкой и выходе. Задайте false если вы совпадаете с относительным масштабированием или значениями относительного наклона и смещения через входы и выход оператора с фиксированной точкой.

Пример: 'CheckBias',true

Можно задать любой из DataTypeScaling) или DataTypeMode, но не уточняйте оба.

Пример: 'DataTypeMode','Fixed-point: binary point scaling'

Пример: 'DataType','Fixed'

Задайте масштабирование типа данных аргумента следующим 'BinaryPoint' для двоичного масштабирования или 'SlopeBias' для масштабирования откоса и смещения.

Пример: 'Scaling','BinaryPoint'

Если вы совпадаете с определенной комбинацией масштабирования [смещение наклона] на входах оператора с фиксированной точкой и выходе, задайте или этот параметр, или комбинацию SlopeAdjustmentFactor и FixedExponent параметры.

Пример: 'Slope',1.0

Если вы совпадаете с определенной комбинацией масштабирования [смещение наклона] на входах оператора с фиксированной точкой и выходе, задайте Slope параметр или комбинация этого параметра и FixedExponent параметр.

Пример: 'SlopeAdjustmentFactor',1.0

Если вы совпадаете с определенной комбинацией масштабирования [смещение наклона] на входах оператора с фиксированной точкой и выходе, задайте Slope параметр или комбинация этого параметра и SlopeAdjustmentFactor параметр.

Пример: 'FixedExponent',-15

Задайте этот параметр, если вы совпадаете с определенной комбинацией масштабирования [смещение уклона] на входах оператора с фиксированной точкой и выходе.

Пример: 'Bias',2.0

Задайте этот параметр, если вы совпадаете с определенной комбинацией масштабирования только для двоичных точек на входах оператора с фиксированной точкой и выходе.

Пример: 'FractionLength',15

Пример: 'BaseType','double'

Можно также задать область значений размерностей, заданную в формате [Dim1Min Dim2Min ... DimNMin; Dim1Max Dim2Max ... DimNMax]. Для примера, [2 2; inf inf] означает двумерную матрицу размера 2x2 или больше.

Пример: 'DimRange',[2 2]

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

свернуть все

The arg является указателем на созданный концептуальный аргумент. Задание возвращаемого аргумента в createAndAddConceptualArg вызов функции опциональен.

Введенный в R2007b