Configure block signal data for code generation
setSignal(
configures signals specified by block output ports for code generation. Use this function
to map specified block output ports to the storage class and storage class property settings
that the code generator uses to produce C code for the corresponding signal data.myCodeMappingObj
,portHandle
,Name,Value
)
This function does not apply to signals that originate from root-level
Inport blocks. For signals that originate from root-level
Inport blocks, see setInport
.
In the model code mappings for model
myConfigModel
, set the storage class for output signals of lookup table
blocks Table1D
and Table2D
to
ExportedGlobal
. After creating the object cm
by
calling function coder.mapping.api.get
, get handles to the output
ports for lookup table blocks. Set the storage class for the output signals by calling
setSignal
.
cm = coder.mapping.api.get('myConfigModel'); lut1D_ports = get_param('myConfigModel/Table1D','PortHandles'); lut2D_ports = get_param('myConfigModel/Table2D','PortHandles'); lut1D_outPort = lut1D_ports.Outport; lut2D_outPort = lut2D_ports.Outport; setSignal(cm,[lut1D_outPort,lut2D_outPort],'StorageClass','ExportedGlobal');
Model default
In the model code mappings for model
myConfigModel
, set the storage class for block output signals to
Model default
. After creating the object cm
by
calling function coder.mapping.api.get
, get the port handles of the
signal data in the code mappings. Set the storage class for the signals by calling
setSignal
.
cm = coder.mapping.api.get('myConfigModel
');
portHandles = find(cm,'Signals')
setSignal(cm,portHandles,'StorageClass','Model default');
In the model code mappings for model
myConfigModel
, set the code identifiers for output signals of lookup
table blocks Table1D
and Table2D
to
dout_Table1D
and dout_Table2D
. After creating the
object cm
by calling function
coder.mapping.api.get
, get handles to the output ports for lookup
table blocks. Set the code identifiers for the output signals by calling
setSignal
.
cm = coder.mapping.api.get('myConfigModel'); lut1D_ports = get_param('myConfigModel/Table1D','PortHandles'); lut2D_ports = get_param('myConfigModel/Table2D','PortHandles'); lut1D_outPort = lut1D_ports.Outport; lut2D_outPort = lut2D_ports.Outport; setSignal(cm,lut1D_outPort,'Identifier','dout_Table1D'); setSignal(cm,lut2D_outPort,'Identifier','dout_Table2D');
myCodeMappingObj
— Code mapping objectCodeMapping
objectCode mapping object (model code mappings) returned by a call to function
coder.mapping.api.get
.
Example: myCM
portHandle
— Output port handle of signal source blockSignal to add to the code mappings, specified as a handle of an output port of the signal's source block. To specify multiple port handles, use an array.
Example: portHandle
Data Types: port_handle
| array
Specify comma-separated pairs of Name,Value
arguments.
Name
is the argument name and Value
is the
corresponding value. Name
must appear inside quotes. You can specify
several name and value pair arguments as Name1,Value1,…,NameN,ValueN
. The
order of the name and value pair arguments does not matter.
'StorageClass'
— Name of storage classAuto
| Bitfield
| Dictionary default
| ExportedGlobal
| ExportToFile
| FileScope
| GetSet
| ImportedExtern
| ImportedExternPointer
| ImportFromFile
| Localizable
| Model default
| Struct
| Volatile
| storage class nameStorage class to set for the specified signals. The name of a predefined storage class or storage class that is defined in the Embedded Coder Dictionary associated with the model. See Configure Signal Data for C Code Generation.
'Identifier'
— Name of variableName for the variable that represents the signal data in the generated code.
Data Types: char
| string
'DefinitionFile'
— C source fileFile name for a C source file that contains definitions for global data read by
data elements and external code. Applies to storage classes
ExportToFile
and Volatile
.
Data Types: char
| string
'GetFunction'
— Name of get functionName of a get
function that a data element calls in the
generated code. Applies to storage class GetSet
.
Data Types: char
| string
'HeaderFile'
— C header fileFile name for a C header file that contains declarations for global data read by
data elements and external code. Applies to storage classes
ExportToFile
, GetSet
,
ImportFromFile
, and Volatile
.
Data Types: char
| string
'Owner'
— Owner of global dataName of the model that owns global data used by other models in the same model
hierarchy. The code generated for the model that owns the data includes the global
data definition. Applies to storage classes ExportToFile
and
Volatile
.
Data Types: char
| string
'PreserveDimensions'
— Boolean flag indicating whether to preserve dimensions of multidimensional arraysTrue
| False
When model configuration parameter Array layout is set to
Row-major
, a flag that indicates whether to preserve
dimensions of a data element represented in generated code as a multidimensional
array. Applies to storage classes ExportToFile
,
ImportFromFile
, Localizable
, and
Volatile
.
Data Types: logical
'SetFunction'
— Name of set functionName of a set
function that a data element calls in the
generated code. Applies to storage class GetSet
.
Data Types: char
| string
'StructName'
— Name of structureName that the code generator uses to identify the structure for a data element in
the generated code. Applies to storage classes Bitfield
and
Struct
.
'storageClassPropertyName'
— Value of storage class propertyStorage class property defined in the Embedded Coder Dictionary. Values that you can specify vary depending on the storage class definition.
Data Types: char
| string
addSignal
| coder.mapping.api.CodeMapping
| coder.mapping.api.get
| find
| getDataDefault
| getSignal
| removeSignal
| setDataDefault
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.