setDefaultElementStereotype - Set default stereotype for elements - MATLAB (original) (raw)
Set default stereotype for elements
Since R2021b
Syntax
Description
setDefaultElementStereotype([stereotype](#mw%5F93a697f1-373c-4e7b-b282-13ce4025e34b%5Fsep%5Fmw%5F7965c94c-9a05-44d8-b9cb-6969fea14317),[elementType](#mw%5F93a697f1-373c-4e7b-b282-13ce4025e34b%5Fsep%5Fmw%5Fb134ab37-496a-4d12-bfb0-23d77ab31022),[stereotypeName](#mw%5F6c236704-8817-4aba-bf73-20137269f26f))
specifies the default stereotype stereotypeName
of the child elements whose parent element of type elementType
has the stereotypestereotype
applied.
Examples
Create a profile for latency characteristics and save it.
profile = systemcomposer.profile.Profile.createProfile("LatencyProfile");
latencybase = profile.addStereotype("LatencyBase"); latencybase.addProperty("latency",Type="double"); latencybase.addProperty("dataRate",Type="double",DefaultValue="10");
connLatency = profile.addStereotype("ConnectorLatency",... Parent="LatencyProfile.LatencyBase"); connLatency.addProperty("secure",Type="boolean"); connLatency.addProperty("linkDistance",Type="double");
nodeLatency = profile.addStereotype("NodeLatency",... Parent="LatencyProfile.LatencyBase"); nodeLatency.addProperty("resources",Type="double",DefaultValue="1");
portLatency = profile.addStereotype("PortLatency",... Parent="LatencyProfile.LatencyBase"); portLatency.addProperty("queueDepth",Type="double"); portLatency.addProperty("dummy",Type="int32");
profile.save
Specify the LatencyProfile.NodeLatency
stereotype as a component stereotype. Set the default component stereotype.
nodeLatency.AppliesTo = "Component"; nodeLatency.setDefaultElementStereotype("Component","LatencyProfile.NodeLatency")
Create a model, apply the profile to the model, and add a component. Apply the stereotype on the component. Then, open the Profile Editor.
modelName = "archModel"; arch = systemcomposer.createModel(modelName); systemcomposer.openModel(modelName); arch.applyProfile("LatencyProfile"); newComponent = addComponent(arch.Architecture,"Component"); newComponent.applyStereotype("LatencyProfile.NodeLatency"); systemcomposer.profile.editor(profile)
Create a child component and get the stereotypes on the child component.
childComponent = addComponent(newComponent.Architecture,"Child"); stereotypes = getStereotypes(childComponent)
stereotypes =
1×1 cell array
{'LatencyProfile.NodeLatency'}
Create a profile for latency characteristics and save it.
profile = systemcomposer.profile.Profile.createProfile("LatencyProfile");
latencybase = profile.addStereotype("LatencyBase"); latencybase.addProperty("latency",Type="double"); latencybase.addProperty("dataRate",Type="double",DefaultValue="10");
connLatency = profile.addStereotype("ConnectorLatency",... Parent="LatencyProfile.LatencyBase"); connLatency.addProperty("secure",Type="boolean"); connLatency.addProperty("linkDistance",Type="double");
nodeLatency = profile.addStereotype("NodeLatency",... Parent="LatencyProfile.LatencyBase"); nodeLatency.addProperty("resources",Type="double",DefaultValue="1");
portLatency = profile.addStereotype("PortLatency",... Parent="LatencyProfile.LatencyBase"); portLatency.addProperty("queueDepth",Type="double"); portLatency.addProperty("dummy",Type="int32");
profile.save
Specify the LatencyProfile.NodeLatency
stereotype as a component stereotype. Set the default port stereotype.
nodeLatency.AppliesTo = "Component"; nodeLatency.setDefaultElementStereotype("Port","LatencyProfile.PortLatency");
Create a model, apply the profile to the model, and add a component. Apply the stereotype on the component. Then, open the Profile Editor.
modelName = "archModel"; arch = systemcomposer.createModel(modelName); systemcomposer.openModel(modelName); arch.applyProfile("LatencyProfile"); newComponent = addComponent(arch.Architecture,"Component"); newComponent.applyStereotype("LatencyProfile.NodeLatency"); systemcomposer.profile.editor(profile)
Create an architecture port on the component and get the stereotypes on the port.
port = addPort(newComponent.Architecture,"testSig","out"); stereotypes = getStereotypes(port)
stereotypes =
1×1 cell array
{'LatencyProfile.PortLatency'}
Create a profile for latency characteristics and save it.
profile = systemcomposer.profile.Profile.createProfile("LatencyProfile");
latencybase = profile.addStereotype("LatencyBase"); latencybase.addProperty("latency",Type="double"); latencybase.addProperty("dataRate",Type="double",DefaultValue="10");
connLatency = profile.addStereotype("ConnectorLatency",... Parent="LatencyProfile.LatencyBase"); connLatency.addProperty("secure",Type="boolean"); connLatency.addProperty("linkDistance",Type="double");
nodeLatency = profile.addStereotype("NodeLatency",... Parent="LatencyProfile.LatencyBase"); nodeLatency.addProperty("resources",Type="double",DefaultValue="1");
portLatency = profile.addStereotype("PortLatency",... Parent="LatencyProfile.LatencyBase"); portLatency.addProperty("queueDepth",Type="double"); portLatency.addProperty("dummy",Type="int32");
profile.save
Specify the LatencyProfile.NodeLatency
stereotype as a component stereotype. Set the default connector stereotype.
nodeLatency.AppliesTo = "Component"; nodeLatency.setDefaultElementStereotype("Connector","LatencyProfile.ConnectorLatency");
Create a model, apply the profile to the model, and add a component. Apply the stereotype on the component. Then, open the Profile Editor.
modelName = "archModel"; arch = systemcomposer.createModel(modelName); systemcomposer.openModel(modelName); arch.applyProfile("LatencyProfile"); newComponent = addComponent(arch.Architecture,"Component"); newComponent.applyStereotype("LatencyProfile.NodeLatency"); systemcomposer.profile.editor(profile)
Create two child components. Add ports. Then, create a connection between the ports and get stereotypes on the connector.
childComponent1 = addComponent(newComponent.Architecture,"Child1"); childComponent2 = addComponent(newComponent.Architecture,"Child2");
outPort1 = addPort(childComponent1.Architecture,"testSig","out"); inPort1 = addPort(childComponent2.Architecture,"testSig","in"); srcPort = getPort(childComponent1,"testSig"); destPort = getPort(childComponent2,"testSig");
connector = connect(srcPort,destPort); stereotypes = getStereotypes(connector)
stereotypes =
1×1 cell array
{'LatencyProfile.ConnectorLatency'}
Input Arguments
Data Types: char
| string
Default stereotype name for child elements, specified as a character vector or string in the form "<profile>.<stereotype>"
.
Data Types: char
| string
More About
Term | Definition | Application | More Information |
---|---|---|---|
Architecture | A System Composer™ architecture represents a system of components and how they interface with each other structurally and behaviorally. | Different types of architectures describe different aspects of systems. You can use views to visualize a subset of components in an architecture. You can define parameters on the architecture level using the Parameter Editor. | Compose Architectures VisuallyAuthor Parameters in System Composer Using Parameter Editor |
Root | A root is at the top of an architecture hierarchy. A root architecture has a boundary defined by its architecture ports that surround the system of interest. | The root architecture has a system boundary surrounding your architecture model. You can add architecture ports that define interfaces across the boundary. | Compose Architectures Visually |
Model | A System Composer model is the file that contains architectural information, such as components, ports, connectors, interfaces, and behaviors. | Perform operations on a model including extracting root-level architecture, applying profiles, linking interface data dictionaries, or generating 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 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, another 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. Transfer information between components with port interfaces using the Interface Editor, and parameters using the Parameter Editor. | Compose Architectures Visually |
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. | 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. The root architecture has a boundary defined by its ports. | Compose Architectures Visually |
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. | Compose Architectures Visually |
Version History
Introduced in R2021b
See Also
Tools
Blocks
Objects
- systemcomposer.profile.Profile | systemcomposer.profile.Stereotype | systemcomposer.profile.Property
Functions
- systemcomposer.profile.Profile.createProfile | systemcomposer.loadProfile | applyProfile | removeProfile | renameProfile | systemcomposer.profile.editor | systemcomposer.profile.Profile.find | systemcomposer.profile.Profile.load | save | open | close | systemcomposer.profile.Profile.closeAll | systemcomposer.profile.Stereotype.find | getDefaultStereotype | setDefaultStereotype | getDefaultElementStereotype | addStereotype | removeStereotype | getStereotype | applyStereotype | batchApplyStereotype | getStereotypes | changeStereotype | removeStereotype | hasStereotype | addProperty | removeProperty | hasProperty | setProperty | getProperty | getPropertyValue | getEvaluatedPropertyValue | getStereotypeProperties | applyStereotypeOrder | getStereotypeNamesByOrder | increaseStereotypeOrder | decreaseStereotypeOrder