主要内容

本页采用了机器翻译。点击此处可查看最新英文版本。

HasConnector

创建查询,根据指定的子约束条件选择带有连接器的架构元素

    说明

    query = HasConnector(subconstraint) 创建了一个查询 queryfindcreateView 函数利用该查询选择具有满足给定子约束 subconstraint 的连接器的架构元素。

    示例

    示例

    全部折叠

    导入包含所有 System Composer™ 查询的命名空间。

    import systemcomposer.query.*

    创建延迟特性配置文件并保存。

    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

    LatencyProfile.NodeLatency 构造型指定为组件构造型。设置默认连接器构造型。

    nodeLatency.AppliesTo = "Component";
    nodeLatency.setDefaultElementStereotype("Connector","LatencyProfile.ConnectorLatency");

    创建模型,将配置文件应用于模型,然后添加一个组件。在组件上应用构造型。然后,打开配置文件编辑器

    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)

    创建两个子组件。添加端口。然后,在端口之间创建一个连接,并在连接器上获取构造型。

    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'}

    为所有带有 ConnectorLatency 构造型连接器的元素创建一个查询,并运行该查询。

    constraint = HasConnector(HasStereotype(Property("Name") == "ConnectorLatency"));
    baseComp = find(arch,constraint,Recurse=true,IncludeReferenceModels=true)
    baseComp =
    
      1×1 cell array
    
        {'archModel/Component'}

    输入参数

    全部折叠

    限制查询的条件,指定为 systemcomposer.query.Constraint 对象。

    输出参量

    全部折叠

    查询,以 systemcomposer.query.Constraint 对象的形式返回。

    详细信息

    全部折叠

    版本历史记录

    在 R2020a 中推出