Copying and Transferring Module Hierarchies

 

There are two somewhat related methods available for copying and transferring entire module hierarchies. Of the two, Copy Transfer is the recommended and most convenient method.

Copying Module Definitions with Dependents

Copy with Dependents enables a module definition to be copied, including all of its dependent definitions.  In other words, if a module contains other modules as part of its definition, and perhaps these modules have other modules inside, and so on, all module definitions will be included in the definition copy.  When the definition is pasted, either in the same project or another project, copies of all the dependent definitions will also be included, along with all of the hierarchal linking information.  When any of these pasted definitions are instantiated on the canvas, all child modules (i.e. modules defining its definition) will be instantiated as well, in the proper order.

 

This feature is provided mainly for inter-project transfer of modules, alleviating the need to manually reconstruct the module and its hierarchy.  Copy with Dependents may also be used for copying and pasting within the same project, provided that no definitions exist in the target project that have the same name as any of the definitions being copied.

 

Copy with Dependents will also include custom component definitions that happen to reside on any of the dependent modules.

Inter-Project

To copy a module definition with its dependent from one project to another:  Select the source project in the workspace primary window and expand the definitions list.  Right-click on the definition and select Copy with Dependents from the popup menu.

 

 

Next, select the destination project, right-click on the definition list and select Paste.

 

 

Lastly, instantiate the definition and paste it on the canvas (see Creating the First Instance of a Definition in this chapter).

Intra-Project

The same process as described above can also be used for copying and pasting a module definition within the same project, except the source and destination projects are the same.  

Copy Transfer

This feature builds on the foundation provided by the Copy with Dependents feature. Copy with Dependents is a simple definition copy of an entire module hierarchy, including all dependent module definitions. Copy Transfer addresses the two major shortcomings of its predecessor:  Instance information (i.e. parameter values) of the top-most module is included in the copy; and the module hierarchy is automatically re-linked together on paste, even if some or all of the definition need to be renamed. In addition to these, Copy Transfer also provides the convenience of copying directly from the component instance, as opposed to having to use the definition tree.

 

To copy transfer a module definition with its dependents, simply right-click on the top-level module instance and select Copy Transfer.

 

 

This action copies all module definitions that are part of this module hierarchy, along with the instance information (i.e. entered parameter data)  of the top-level module. To paste the new hierarchy, right-click on a schematic canvas in any loaded project and select Paste Transfer.

 

NOTE: A module hierarchy that has been paste transferred is completely unique from and exclusive of the copied original.