Hauptinhalt

ssGetInputPortRealSignalPtrs

Get pointers to signals of type double connected to an input port

Starting in R2026a, S-Function blocks support only contiguous inputs. It is recommended to use the contiguous input functions ssGetInputPortSignal and ssGetInputPortRealSignal instead of ssGetInputPortSignalPtrs and ssGetInputPortRealSignalPtrs, respectively. The contiguous input functions provide faster access and improved performance by removing the need for double pointer to access signals.

Syntax

InputRealPtrsType ssGetInputPortRealSignalPtrs(SimStruct *S,
 int_T port)

Arguments

S

SimStruct that represents an S-Function block.

port

Index of the port whose signal is required.

Returns

Pointers to the elements of a signal of type double connected to the input port specified by the index port.

Description

This macro returns a pointer to an array of pointers to the real_T input signal elements. The length of the array of pointers is equal to the width of the input port. The input port index starts at 0 and ends at the number of input ports minus 1.

Note

The ssGetInputPortRealSignalPtrs macro becomes a function when you compile your S-function in debug mode (mex -g).

Languages

C, C++

Examples

The following example reads all input port signals.

int_T i,j;
int_T nInputPorts = ssGetNumInputPorts(S);
for (i = 0; i < nInputPorts; i++) {
  InputRealPtrsType uPtrs = 
                ssGetInputPortRealSignalPtrs(S,i);
  int_T nu = ssGetInputPortWidth(S,i);
  for (j = 0; j < nu; j++) {
    SomeFunctionToUseInputSignalElement(*uPtrs[j]);
  }
}

See the S-function sfun_atol.c used in sfcndemo_sfun_atol for a complete example using this function.

Version History

Introduced before R2006a