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
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
Stereotype, specified as a systemcomposer.profile.Stereotype object.
Element type, specified as:
"Component"."Port"."Connector"."Interface"."InterfaceElement""Function", which is only available for software architectures. For more information, see Apply Stereotypes to Functions of Software Architectures.
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. | |
| 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 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. | |
| 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. | |
| 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.
Seleccione un país/idioma
Seleccione un país/idioma para obtener contenido traducido, si está disponible, y ver eventos y ofertas de productos y servicios locales. Según su ubicación geográfica, recomendamos que seleccione: .
También puede seleccionar uno de estos países/idiomas:
Cómo obtener el mejor rendimiento
Seleccione China (en idioma chino o inglés) para obtener el mejor rendimiento. Los sitios web de otros países no están optimizados para ser accedidos desde su ubicación geográfica.
América
- América Latina (Español)
- Canada (English)
- United States (English)
Europa
- 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)