Создайте возвращаемый аргумент реализации из заданных свойств и добавьте к реализации для заменяющей записи таблицы кода
создает возвращаемый аргумент реализации из заданных свойств и добавляет аргумент в реализацию для заменяющей таблицы кода.arg
= createAndSetCImplementationReturn(hEntry
,argType
,varargin
)
Возвращаемые аргументы реализации должны описать основные типы числовых данных, такие как double
единственный
int32
int16
int8
uint32
uint16
uint8
, или boolean
(не типы данных с фиксированной точкой).
В этом примере показано, как использовать createAndSetCImplementationReturn
функция с createAndAddImplementationArg
функция, чтобы задать выходные аргументы и входные параметры для реализации оператора.
op_entry = RTW.TflCOperationEntry; . . . createAndSetCImplementationReturn(op_entry, 'RTW.TflArgNumeric', ... 'Name', 'y1', ... 'IOType', 'RTW_IO_OUTPUT', ... 'IsSigned', true, ... 'WordLength', 32, ... 'FractionLength', 0); createAndAddImplementationArg(op_entry, 'RTW.TflArgNumeric',... 'Name', 'u1', ... 'IOType', 'RTW_IO_INPUT',... 'IsSigned', true,... 'WordLength', 32, ... 'FractionLength', 0 ); createAndAddImplementationArg(op_entry, 'RTW.TflArgNumeric',... 'Name', 'u2', ... 'IOType', 'RTW_IO_INPUT',... 'IsSigned', true,... 'WordLength', 32, ... 'FractionLength', 0 );
Эти примеры показывают некоторые технические требования общего типа с помощью createAndSetCImplementationReturn
.
hEntry = RTW.TflCOperationEntry; . . . % uint8: createAndSetCImplementationReturn(hEntry, 'RTW.TflArgNumeric', ... 'Name', 'y1', ... 'IOType', 'RTW_IO_OUTPUT', ... 'IsSigned', false, ... 'WordLength', 8, ... 'FractionLength', 0 ); % single: createAndSetCImplementationReturn(hEntry, 'RTW.TflArgNumeric', ... 'Name', 'y1', ... 'IOType', 'RTW_IO_OUTPUT', ... 'DataTypeMode', 'single' ); % double: createAndSetCImplementationReturn(hEntry, 'RTW.TflArgNumeric', ... 'Name', 'y1', ... 'IOType', 'RTW_IO_OUTPUT', ... 'DataTypeMode', 'double' ); % boolean: createAndSetCImplementationReturn(hEntry, 'RTW.TflArgNumeric', ... 'Name', 'y1', ... 'IOType', 'RTW_IO_OUTPUT', ... 'DataTypeMode', 'boolean' );
hEntry
— Обработайте к заменяющей записи таблицы кодаhEntry
указатель на заменяющую запись таблицы кода, ранее возвращенную путем инстанцирования заменяющего класса записи кода, такого как
или hEntry
= RTW.TflCFunctionEntry
.hEntry
= RTW.TflCOperationEntry
Пример: op_entry
argType
— Задает тип аргумента, чтобы создать'RTW.TflArgNumeric'
| вектор символов | строковый скалярargType
вектор символов или строковый скаляр, который задает тип аргумента, чтобы создать. Используйте 'RTW.TflArgNumeric'
для числового.
Пример: 'RTW.TflArgNumeric'
varargin
— Пары "имя-значение", которые задают возвращаемый аргумент реализацииПример: 'Name','y1'
Задайте дополнительные разделенные запятой пары Name,Value
аргументы. Name
имя аргумента и Value
соответствующее значение. Name
должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN
.
'Name','y1'
'Name'
— Задает имя аргументаПример: 'Name','y1'
'IOType'
— Задает тип ввода-вывода аргумента'RTW_IO_OUTPUT'
| вектор символов | строковый скалярИспользуйте 'RTW_IO_OUTPUT'
для выхода.
Пример: 'IOType','RTW_IO_OUTPUT'
'IsSigned'
— Указывает, подписывается ли аргументtrue
(значение по умолчанию) | false
Булево значение, что, когда установлено в true
, указывает, что аргумент подписывается. Значением по умолчанию является true
.
Пример: 'IsSigned',true
'WordLength'
— Задает размер слова, в битах, аргумента
(значение по умолчанию) | целое числоПример: 'WordLength',16
'DataTypeMode'
— Задает режим типа данных аргумента 'Fixed-point: binary point scaling'
(значение по умолчанию) | 'Fixed-point: slope and bias scaling'
| 'boolean'
| 'double'
| 'single'
Можно задать любой DataType
(с Scaling
) или DataTypeMode
, но не задавайте обоих.
Пример: 'DataTypeMode','Fixed-point: binary point scaling'
'DataType'
— Задает тип данных аргумента'Fixed'
(значение по умолчанию) | 'boolean'
| 'double'
| 'single'
Пример: 'DataType','Fixed'
'Scaling'
— Задает масштабирование типа данных аргумента'BinaryPoint'
(значение по умолчанию) | 'SlopeBias'
Используйте 'BinaryPoint'
для масштабирования двоичной точки или 'SlopeBias'
для наклона и масштабирования смещения.
Пример: 'Scaling','BinaryPoint'
'Slope'
— Задает наклон для аргумента фиксированной точки
(значение по умолчанию) | значение с плавающей точкойМожно опционально задать или этот параметр или комбинацию SlopeAdjustmentFactor
и FixedExponent
параметры, но не задают обоих.
Пример: 'Slope',1.0
'SlopeAdjustmentFactor'
— Задает наклонный поправочный коэффициент (F
) часть наклона, F
2E
, из аргумента
(значение по умолчанию) | значение с плавающей точкойМожно опционально задать любого Slope
параметр или комбинация этого параметра и FixedExponent
параметр, но не задают обоих.
Пример: 'SlopeAdjustmentFactor',1.0
'FixedExponent'
— Задает фиксированную экспоненту (E
) часть наклона, F
2E
, из аргумента
(значение по умолчанию) | целочисленное значениеМожно опционально задать любого Slope
параметр или комбинация этого параметра и SlopeAdjustmentFactor
параметр, но не задают обоих.
Пример: 'FixedExponent',0
'Bias'
— Задает смещение аргумента
(значение по умолчанию) | значение с плавающей точкойПример: 'Bias',0.0
'FractionLength'
— Задает дробную длину аргумента
(значение по умолчанию) | целочисленное значениеПример: 'FractionLength',0
arg
— Обработайте к созданному возвращаемому аргументу реализацииОпределение возвращаемого аргумента в createAndSetCImplementationReturn
вызов функции является дополнительным.
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.