Main Content

addVariantComponent

Add variant components to architecture

Description

example

variantList = addVariantComponent(architecture,variantComponents) adds a set of variant components specified by the array of names.

To remove a variant component, use the destroy function.

variantList = addVariantComponent(architecture,variantComponents,'Position',position) creates variant components in the architecture at a given position.

Examples

collapse all

Create a model, get its root architecture, and create two variant components.

model = systemcomposer.createModel("archModel",true);
arch = get(model,"Architecture");
names = ["Component1","Component2"];
variantComps = addVariantComponent(arch,names)
variantComps=1×2 object
  1x2 VariantComponent array with properties:

    Architecture
    Name
    Parent
    Ports
    OwnedPorts
    OwnedArchitecture
    Position
    Model
    SimulinkHandle
    SimulinkModelHandle
    UUID
    ExternalUID

Input Arguments

collapse all

Parent architecture, specified as a systemcomposer.arch.Architecture object.

Names of variant components, specified as a cell array of character vectors or an array of strings.

Data Types: char | string

Vector that specifies location of top corner and bottom corner of component, specified as a 1x4 numeric array. The array denotes the top corner in terms of its x and y coordinates followed by the x and y coordinates of the bottom corner. When adding more than one variant component, a matrix of size [Nx4] may be specified where N is the number of variant components being added.

Data Types: double

Output Arguments

collapse all

Variant components, returned as an array of systemcomposer.arch.VariantComponent objects. This array is the same size as variantComponents.

More About

collapse all

Definitions

TermDefinitionApplicationMore Information
architecture

A System Composer™ architecture represents a system of components and how they interface with each other structurally and behaviorally. You can represent specific architectures using alternate views.

Different types of architectures describe different aspects of systems:

  • Functional architecture describes the flow of data in a system.

  • Logical architecture describes the intended operation of a system.

  • Physical architecture describes the platform or hardware in a system.

Compose Architecture Visually
model

A System Composer model is the file that contains architectural information, including components, ports, connectors, interfaces, and behaviors.

Perform operations on a model:

  • Extract the root-level architecture contained in the model.

  • Apply profiles.

  • Link interface data dictionaries.

  • Generate instances from model architecture.

A System Composer model is stored as an SLX file.

Create Architecture Model with Interfaces and Requirement Links
component

A component is a nontrivial, nearly independent, and replaceable part of a system that fulfills a clear function in the context of an architecture. A component defines an architectural element, such as a function, a system, hardware, software, or other conceptual entity. A component can also be a subsystem or subfunction.

Represented as a block, a component is a part of an architecture model that can be separated into reusable artifacts.

Components
port

A port is a node on a component or architecture that represents a point of interaction with its environment. A port permits the flow of information to and from other components or systems.

There are different types of ports:

  • Component ports are interaction points on the component to other components.

  • Architecture ports are ports on the boundary of the system, whether the boundary is within a component or the overall architecture model.

Ports
connector

Connectors are lines that provide connections between ports. Connectors describe how information flows between components or architectures.

A connector allows two components to interact without defining the nature of the interaction. Set an interface on a port to define how the components interact.

Connections

TermDefinitionApplicationMore Information
variant

A variant is one of many structural or behavioral choices in a variant component.

Use variants to quickly swap different architectural designs for a component while performing analysis.

Create Variants
variant control

A variant control is a string that controls the active variant choice.

Set the variant control to programmatically control which variant is active.

Set Variant Control Condition

Version History

Introduced in R2019a