Main Content

ssRegisterDataTypeFxpBinaryPoint

Register fixed-point data type with binary-point-only scaling and return its data type ID

Syntax

extern DTypeId ssRegisterDataTypeFxpBinaryPoint
                                 (SimStruct *S,
                                  int isSigned,
                                  int wordLength,
                                  int fractionLength,
                                  int obeyDataTypeOverride)

Arguments

S

SimStruct representing an S-function block.

isSigned

TRUE if the data type is signed.

FALSE if the data type is unsigned.

wordLength

Total number of bits in the data type, including any sign bit.

fractionLength

Number of bits in the data type to the right of the binary point.

obeyDataTypeOverride

TRUE indicates that the Data Type Override setting for the subsystem is to be obeyed. Depending on the value of Data Type Override, the resulting data type could be Double, Single, Scaled double, or the fixed-point data type specified by the other arguments of the function.

FALSE indicates that the Data Type Override setting is to be ignored.

Description

This function fully registers a fixed-point data type with the Simulink® software and returns a data type ID. Note that unlike the standard Simulink function ssRegisterDataType, you do not need to take any additional registration steps. The data type ID can be used to specify the data types of input and output ports, run-time parameters, and DWork states. It can also be used with all the standard data type access methods in simstruc.h, such as ssGetDataTypeSize.

Use this function if you want to register a fixed-point data type with binary-point-only scaling. Alternatively, you can use one of the other fixed-point registration functions:

If the registered data type is not one of the Simulink built-in data types, a Fixed-Point Designer™ software license is checked out. To prevent a Fixed-Point Designer software license from being checked out when you simply open or view a model, protect registration calls with

if (ssGetSimMode(S) != SS_SIMMODE_SIZES_CALL_ONLY )
	ssRegisterDataType...

Note

Because of the nature of the assignment of data type IDs, you should always use API functions to extract information from a data type ID about a data type in your S-function. For more information, refer to Data Type IDs.

Requirement

To use this function, you must include fixedpoint.h and fixedpoint.c. For more information, see Structure of the S-Function.

Languages

C

TLC Functions

None. Data types should be registered in the Simulink software. Registration of data types is not supported in TLC.

Version History

Introduced before R2006a