coder.dictionary.copy - Copy code generation definitions between models and data

        dictionaries - MATLAB ([original](https://www.mathworks.com/help/ecoder/ref/coder.dictionary.copy.html)) ([raw](?raw))

Main Content

Copy code generation definitions between models and data dictionaries

Syntax

Description

copy([sourceName](#d126e7935),[destinationName](#d126e7989)) copies code generation definitions, such as storage classes, from the Embedded Coder Dictionary in sourceName to the Embedded Coder Dictionary indestinationName. The source and destination dictionaries must use the same code interface configuration type.

If a code generation definition in sourceName has the same name as a definition in destinationName, copy copies the source entry into the destination, and then renames the copy.

To share code definitions between models, use a SimulinkĀ® data dictionary, as described in Share Code Interface Configuration Between Models. To copy individual code definitions, use the Embedded Coder Dictionary dialog box or copyEntry. For general information about Embedded Coder Dictionaries and code generation definitions, see Define Service Interfaces, Storage Classes, Memory Sections, and Function Templates for Software Architecture.

example

Examples

collapse all

In the Embedded Coder Dictionary of the example modelRollAxisAutopilot, create a storage class. Then, copy the storage class to the Embedded Coder Dictionary inEmbeddedCoderIntro.

Open the model RollAxisAutopilot and represent the Embedded Coder Dictionary by using a coder.Dictionary object. Use this object to access the Storage Classes section of the dictionary and represent the section by using acoder.dictionary.Section object.

openExample('RollAxisAutopilot') coderDictionary = coder.dictionary.open('RollAxisAutopilot'); storageClassesSect = getSection(coderDictionary, 'StorageClasses');

Add a storage class definition named MyStorageClass to the Storage Classes section. The storage class definition uses the default property settings.

newEntry = addEntry(storageClassesSect,'MyStorageClass')

newEntry =

Entry with properties:

      Name: 'MyStorageClass'
DataSource: 'RollAxisAutopilot'

Save a copy of RollAxisAutopilot in your current folder. Saving the model saves the storage class in the Embedded Coder Dictionary.

Open the other model, EmbeddedCoderIntro.

openExample('EmbeddedCoderIntro')

Copy the contents of the Embedded Coder Dictionary inRollAxisAutopilot to the Embedded Coder Dictionary inEmbeddedCoderIntro.

coder.dictionary.copy('RollAxisAutopilot','EmbeddedCoderIntro')

Open the Embedded Coder Dictionary forEmbeddedCoderIntro.

In the Embedded Coder Dictionary window, on the Storage Classes tab, the storage classMyStorageClass appears.

Input Arguments

collapse all

Source model file or data dictionary, specified as a character vector or string scalar.

Example: 'myLoadedModel'

Example: 'myDictionary.sldd'

Data Types: char

Destination model file or data dictionary, specified as a character vector or string scalar.

Example: 'myLoadedModel'

Example: 'myDictionary.sldd'

Data Types: char

Version History

Introduced in R2018a

expand all

Copy code interface definitions between Embedded Coder Dictionaries that use the service interface configuration. You can still copy code definitions between Embedded Coder Dictionaries that use the data interface configuration.