Constant macros - Customize generated constant macro identifiers - MATLAB (original) (raw)
Main Content
Customize generated constant macro identifiers
Model Configuration Pane: Code Generation / Identifiers
Description
Customize generated constant macro identifiers. Constant macros appear in the generated code for parameters that use the storage class Auto
when you set > > to Inlined
and > > to Macros
.
Dependencies
This parameter:
- Appears only for ERT-based targets.
- Requires Embedded Coder® when generating code.
Settings
$R$N$M
(default) | string
Enter a macro that specifies whether, and in what order, certain text is to be included in the generated identifier. The macro can include a combination of the following format tokens.
Token | Description |
---|---|
$M | Insert name-mangling text if required to avoid naming collisions.Required. |
$N | Insert name of object (block, signal or signal object, state, parameter or parameter object) for which identifier is being generated. |
$R | Insert root model name into identifier, replacing unsupported characters with the underscore (_) character.Required for model referencing. |
U∣InserttextthatyouspecifyfortheU | Insert text that you specify for the U∣InserttextthatyouspecifyfortheU token. Use the Custom token text parameter to specify this text. |
Note
This option does not apply to objects (such as signals and parameters) that have a storage class other than Auto
(such asImportedExtern
or ExportedGlobal
).
Tips
- Avoid name collisions in general. One way is to avoid using default block names (for example,
Gain1
,Gain2
...) when your model has many blocks of the same type. - Where possible, increase the Maximum identifier length to accommodate the length of the identifiers you expect to generate. Reserve at least three characters for name-mangling text.
- To control the case (upper or lower case) of the text that each token represents, include decorators such as
[U_]
in your macro. See Control Case of Identifiers by Using Basic Token Decorators. - If you specify
$R
, the value you specify for Maximum identifier length must be large enough to accommodate full expansions of the$R
and$M
tokens. - When a name conflict occurs between an identifier within the scope of a higher-level model and an identifier within the scope of a referenced model, the code generator preserves the identifier from the referenced model. Name mangling is performed on the identifier in the higher-level model.
- For referenced models, if the Constant macros parameter does not contain a
$R
token (which represents the name of the reference model), code generation prepends the$R
token to the identifier format.
You can use the Model Advisor to identify models in a model referencing hierarchy for which code generation changes configuration parameter settings.- On the tab, select .
- Select .
- Run the Check code generation identifier formats used for model reference check.
Recommended Settings
Application | Setting |
---|---|
Debugging | No impact |
Traceability | Use default |
Efficiency | No impact |
Safety precaution | No recommendation |
Programmatic Use
Parameter: CustomSymbolStrMacro |
---|
Type: character vector |
Value: valid combination of tokens |
Default: RRRN$M |
Version History
Introduced in R2006b