setDefaultElementStereotype
Description
setDefaultElementStereotype(
specifies the default stereotype stereotype
,elementType
,stereotypeName
)stereotypeName
of the child elements
whose parent element of type elementType
has the stereotype
stereotype
applied.
Examples
Set Default Component Stereotype
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'}
Set Default Port Stereotype
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'}
Set Default Connector Stereotype
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
stereotype
— Stereotype
stereotype object
Stereotype, specified as a systemcomposer.profile.Stereotype
object.
elementType
— Element type
"Component"
| "Port"
| "Connector"
| "Interface"
| "Function"
Element type, specified as:
"Component"
."Port"
."Connector"
."Interface"
."Function"
, which is only available for software architectures. For more information, see Apply Stereotypes to Functions of Software Architectures.
Data Types: char
| string
stereotypeName
— Default stereotype name
character vector | 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
Definitions
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. | |
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. | |
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:
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 | 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. |
| |
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. |
Term | Definition | Application | More Information |
---|---|---|---|
stereotype | Stereotypes provide a mechanism to extend the core language elements and add domain-specific metadata. | Apply stereotypes to core element types. An element can have multiple stereotypes. Stereotypes allow you to style different elements. Stereotypes provide elements with a common set of properties, such as mass, cost, and power. | |
property | A property is a field in a stereotype. You can specify property values for each element to which the stereotype is applied. | Use properties to store quantitative characteristics, such as weight or speed, that are associated with a model element. Properties can also be descriptive or represent a status. You can view and edit the properties of each element in the architecture model using the Property Inspector. For more information, see Use Property Inspector in System Composer. | |
profile | A profile is a package of stereotypes. | You can use profiles to create a domain of specialized element types. Author profiles and apply profiles to a model using the Profile Editor. You can store stereotypes for a project in one or several profiles. When you save profiles, they are stored in XML files. |
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
MATLAB Command
You clicked a link that corresponds to this MATLAB command:
Run the command by entering it in the MATLAB Command Window. Web browsers do not support MATLAB commands.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)