Main Content

getFunction

Get AUTOSAR mapping information for Simulink entry-point function

Description

example

arRunnableName = getFunction(slMap,slEntryPointFunction) returns the name of the AUTOSAR runnable arRunnableName mapped to Simulink® entry-point function slEntryPointFunction.

example

[arRunnableName,arRunnableSwAddrMethod,arInternalDataSwAddrMethod] = getFunction(slMap,slEntryPointFunction) returns the names of function and internal data software address methods (SwAddrMethods) defined for the mapped AUTOSAR runnable. If a SwAddrMethod is not defined, the function returns '<None>'.

Examples

collapse all

Get the name of the AUTOSAR runnable mapped to a Simulink entry-point function in the example model autosar_swc. The model has an initialize entry-point function named Runnable_Init and periodic entry-point functions named Runnable_1s and Runnable_2s.

hModel = 'autosar_swc';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);
slMap=autosar.api.getSimulinkMapping(hModel);
arRunnableName=getFunction(slMap,'Initialize')
arRunnableName =
    'Runnable_Init'

Get AUTOSAR SwAddrMethod names for a Simulink entry-point function in the example model autosar_swc_counter. The model has a single-tasking periodic entry-point function.

hModel = 'autosar_swc_counter';
addpath(fullfile(matlabroot,'/examples/autosarblockset/main'));
open_system(hModel);

% Add SwAddrMethods myCODE and myVAR to the AUTOSAR component
arProps = autosar.api.getAUTOSARProperties(hModel);
addPackageableElement(arProps,'SwAddrMethod',...
    '/Company/Powertrain/DataTypes/SwAddrMethods','myCODE',...
    'SectionType','Code')
swAddrPaths = find(arProps,[],'SwAddrMethod','PathType','FullyQualified',...
    'SectionType','Code')
addPackageableElement(arProps,'SwAddrMethod',...
    '/Company/Powertrain/DataTypes/SwAddrMethods','myVAR',...
    'SectionType','Var')
swAddrPaths = find(arProps,[],'SwAddrMethod','PathType','FullyQualified',...
    'SectionType','Var')

% Set code generation parameter for runnable internal data SwAddrMethods
set_param(hModel,'GroupInternalDataByFunction','on')

% Map periodic function and internal data to myCODE and myVAR SwAddrMethods
slMap = autosar.api.getSimulinkMapping(hModel);
mapFunction(slMap,'Periodic','Runnable_Step',...
    'SwAddrMethod','myCODE','SwAddrMethodForInternalData','myVAR')

% Return AUTOSAR mapping information for periodic function
[arRunnableName,arRunnableSwAddrMethod,arInternalDataSwAddrMethod] = ...
    getFunction(slMap,'Periodic')
swAddrPaths =
  1×2 cell array
    {'/Company/Powertrain/DataTypes/SwAddrMethods/CODE'}
    {'/Company/Powertrain/DataTypes/SwAddrMethods/myCODE'}

swAddrPaths =
  1×2 cell array
    {'/Company/Powertrain/DataTypes/SwAddrMethods/VAR'}
    {'/Company/Powertrain/DataTypes/SwAddrMethods/myVAR'}

arRunnableName =
    'Runnable_Step'

arRunnableSwAddrMethod =
    'myCODE'

arInternalDataSwAddrMethod =
    'myVAR'

Input Arguments

collapse all

Simulink to AUTOSAR mapping information for a model, previously returned by slMap = autosar.api.getSimulinkMapping(model). model is a handle, character vector, or string scalar representing the model name.

Example: slMap

Simulink entry-point function for which to return AUTOSAR mapping information. The value format is based on the function type.

Function TypeValue
Initialize'Initialize'.
Reset'Reset:slIdentifier', where slIdentifier is the name of a reset function in the model.
Terminate'Terminate'.
Single-tasking periodic'Periodic'.
Periodic (implicit task)'Periodic:slIdentifier', where slIdentifier is the corresponding period annotation, as displayed in the Timing Legend. For example, 'Periodic:D1'.
Partition (explicit task)'Partition:slIdentifier', where slIdentifier is the partition name, as displayed in the Schedule Editor. For example, 'Partition:P1'.
Exported

'ExportedFunction:slIdentifier', where slIdentifier is the name of the Inport block that drives the control port of the function-call subsystem. For example:

  • 'ExportedFunction:Trigger_1s' in example model autosar_swc_slfcns

  • 'ExportedFunction:FunctionTrigger' in example model autosar_swc_fcncalls

Simulink function in client-server configuration'SimulinkFunction:slIdentifier', where slIdentifier is the name of a global Simulink function in the model. For example, 'SimulinkFunction:readData' in the example model in Configure AUTOSAR Server.

Example: 'Periodic:D1'

Output Arguments

collapse all

Variable that returns the name of the AUTOSAR runnable mapped to the specified Simulink entry-point function object.

Example: arRunnableName

Variable that returns the name of the SwAddrMethod defined for the AUTOSAR runnable function.

Example: arRunnableSwAddrMethod

Variable that returns the name of the SwAddrMethod defined for the AUTOSAR runnable internal data.

Example: arInternalDataSwAddrMethod

Introduced in R2013b