Main Content


Remove inherited check from objective



removeInheritedCheck(objective, checkID) removes the specified check that the objective inherited from the objective that you used to create it. Use this method when you create a new objective from an existing objective. If you select multiple objectives in the Code Generation advisor, if another selected objective includes this check, the advisor includes the check.


collapse all

Create a custom objective based on the Traceability objective.

Create a file sl_customization.m to contain a callback function that creates the custom objective.

function sl_customization(cm)
%SL_CUSTOMIZATION objective customization callback

objCustomizer = cm.ObjectiveCustomizer;
index = objCustomizer.addCallbackObjFcn(@addObjectives);


Create and configure the objective in the addObjectives function. Set the name of the objective and modify the list of checks, parameters, and values to verify. Then register the objective in the Code Generation Advisor.

function addObjectives

% Create the custom objective
obj = rtw.codegenObjectives.Objective('ex_trace',, 'Traceability');
setObjectiveName(obj, 'Custom Traceability Example');

% Remove inherited parameters from the objective
removeInheritedParam(obj, 'MATLABFcnDesc');
removeInheritedParam(obj, 'MATLABSourceComments');

% Remove the inherited code instrumentation check
removeInheritedCheck(obj, 'mathworks.codegen.CodeInstrumentation');

% Modify the inherited parameter 'ConvertIfToSwitch' and set the value to 'on'
modifyInheritedParam(obj, 'ConvertIfToSwitch', 'on');

% Exclude the inherited check for the software environment
excludeCheck(obj, 'mathworks.codegen.SWEnvironmentSpec');

%Register the objective


Input Arguments

collapse all

Code generation objective, specified as a rtw.codegenObjectives.Objective object.

Identifier of check that you want to remove, specified as a character vector or string scalar.

Example: 'mathworks.codegen.CodeInstrumentation'

Version History

Introduced in R2009a