createAndAddImplementationArg

Create implementation argument from specified properties and add to implementation arguments for TFL table entry

Syntax

void createAndAddImplementationArg(hEntry, argType, varargin)

Arguments

hEntry

Handle to a TFL table entry previously returned by hEntry = RTW.TflCFunctionEntry or hEntry = RTW.TflCOperationEntry.

argType

String specifying the argument type to create: 'RTW.TflArgNumeric' for numeric.

varargin

Parameter/value pairs for the implementation argument. See varargin Parameters.

varargin Parameters

The following argument properties can be specified to the createAndAddImplementationArg function using parameter/value argument pairs. For example,

createAndAddImplementationArg(..., 'DataTypeMode', 'double', ...);
Name

String specifying the argument name, for example, 'u1'.

IOType

String specifying the I/O type of the argument: 'RTW_IO_INPUT' for input.

IsSigned

Boolean value that, when set to true, indicates that the argument is signed. The default is true.

WordLength

Integer specifying the word length, in bits, of the argument. The default is 16.

DataTypeMode

String specifying the data type mode of the argument: 'boolean', 'double', 'single', 'Fixed-point: binary point scaling', or 'Fixed-point: slope and bias scaling'. The default is 'Fixed-point: binary point scaling'.

DataType

String specifying the data type of the argument: 'boolean', 'double', 'single', or 'Fixed'. The default is 'Fixed'.

Scaling

String specifying the data type scaling of the argument: 'BinaryPoint' for binary-point scaling or 'SlopeBias' for slope and bias scaling. The default is 'BinaryPoint'.

Slope

Floating-point value specifying the slope of the argument, for example, 15.0. The default is 1.

You can optionally specify either this parameter or a combination of the SlopeAdjustmentFactor and FixedExponent parameters, but do not specify both.

SlopeAdjustmentFactor

Floating-point value specifying the slope adjustment factor (F) part of the slope, F2E, of the argument. The default is 1.0.

You can optionally specify either the Slope parameter or a combination of this parameter and the FixedExponent parameter, but do not specify both.

FixedExponent

Integer value specifying the fixed exponent (E) part of the slope, F2E, of the argument. The default is -15.

You can optionally specify either the Slope parameter or a combination of this parameter and the SlopeAdjustmentFactor parameter, but do not specify both.

Bias

Floating-point value specifying the bias of the argument, for example, 2.0. The default is 0.0.

FractionLength

Integer value specifying the fraction length of the argument, for example, 3. The default is 15.

Description

The createAndAddImplementationArg function creates an implementation argument from specified properties and adds the argument to the implementation arguments for a TFL table entry.

Example

In the following example, thecreateAndAddImplementationArg function is used along with the createAndSetCImplementationReturn function to specify the output and input arguments for an operator implementation.

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 );

The following examples show some common type specifications using createAndAddImplementationArg.

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

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

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

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

See Also

createAndSetCImplementationReturn

Creating Function Replacement Tables in the Real-Time Workshop® Embedded Coder™ documentation

Target Function Libraries in the Real-Time Workshop Embedded Coder documentation

  


 © 1984-2008- The MathWorks, Inc.    -   Site Help   -   Patents   -   Trademarks   -   Privacy Policy   -   Preventing Piracy   -   RSS