slreq.structToObj

Преобразуйте источник ссылки или целевую информацию от структуры до типа объекта модели

Описание

ot = slreq.structToObj(linkinfo) преобразует источник или целевую информацию о ссылке в linkinfo к ot соответствующий тип объекта. Примеры типов объектов включают блоки Simulink® и тесты Simulink Test™.

Примеры

свернуть все

В этом примере показано, как получить структуру, содержащую уникальный источник требования и целевую информацию, затем преобразуйте информацию о структуре в определенный источник и сущность целевой модели.

Модель загрузки, набор требования и ссылки

load_system('reqs_validation_property_proving_original_model');
rq = slreq.load('original_thrust_reverser_requirements.slreqx');
lk = slreq.load('reqs_validation_property_proving_original_model.slmx');

Для LinkSet

Получите источники от LinkSet, получите один источник и преобразуйте структуру в сущность модели.

lksrcs = sources(lk);
lksrc1 = lksrcs(1)
lksrc1 = struct with fields:
      domain: 'linktype_rmi_simulink'
    artifact: '/tmp/BR2020ad_1302590_239645/mlx_to_docbook1/tpfe55f34b/slrequirements-ex49678366/reqs_validation_property_proving_original_model.slx'
          id: ':16:151'

ot1 = slreq.structToObj(lksrc1)
ot1 =

                         Path: 'reqs_validation_property_proving_original_model/ThrustReverserDeployLogic'
                           Id: 180
                      Machine: [1x1 Stateflow.Machine]
                   SSIdNumber: 151
                         Name: 'closeEnough'
                  Description: ''
                  LabelString: 'isclose = closeEnough(n1,n2,tol)'
                     FontSize: 12
                    ArrowSize: 8
                        Chart: [1x1 Stateflow.Chart]
              BadIntersection: 0
                    Subviewer: [1x1 Stateflow.Chart]
                     Document: ''
                          Tag: []
              RequirementInfo: ''
                     Position: [185.9681 288.5187 196.9130 44.0190]
                       Script: 'function isclose = closeEnough(n1,n2,tol)...'
                  InputFimath: 'fimath(......'
             EmlDefaultFimath: 'Other:UserSpecified'
    SaturateOnIntegerOverflow: 1
       ConstantFoldingTimeOut: 40000
                 InlineOption: 'Auto'
        IsExplicitlyCommented: 0
        IsImplicitlyCommented: 0
                  CommentText: ''

Для ссылки

Получите ссылку от набора ссылки и получите источник и место назначения для той ссылки. Преобразуйте источник и целевую структуру к сущности модели.

sl = getLinks(lk);
sl2 = sl(2);
sl2src = source(sl2)
sl2src = struct with fields:
      domain: 'linktype_rmi_simulink'
    artifact: '/tmp/BR2020ad_1302590_239645/mlx_to_docbook1/tpfe55f34b/slrequirements-ex49678366/reqs_validation_property_proving_original_model.slx'
          id: ':16:31'

sl2dest = destination(sl2)
sl2dest = struct with fields:
      reqSet: 'original_thrust_reverser_requirements.slreqx'
         sid: 2
     summary: 'Thrust Reverser Undeployment Conditions'
     details: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">...'
      domain: 'linktype_rmi_slreq'
    artifact: '/tmp/BR2020ad_1302590_239645/mlx_to_docbook1/tpfe55f34b/slrequirements-ex49678366/original_thrust_reverser_requirements.slreqx'
          id: 'R2'

ot2s = slreq.structToObj(sl2src)
ot2s =

                     Path: 'reqs_validation_property_proving_original_model/ThrustReverserDeployLogic/thrustReversers'
                       Id: 30
                  Machine: [1x1 Stateflow.Machine]
               SSIdNumber: 31
                IsVariant: 0
              Description: ''
              LabelString: '[!throttleOK(SensorData.throttlePositions)]'
            LabelPosition: [69 293 276 15]
                 FontSize: 12
                ArrowSize: 8
                 MidPoint: [182.9860 245.0717]
                    Chart: [1x1 Stateflow.Chart]
                Subviewer: [1x1 Stateflow.State]
           ExecutionOrder: 1
                    Debug: [1x1 Stateflow.TransDebug]
                 Document: ''
                      Tag: []
           SourceEndpoint: [313.6784 279.3770]
      DestinationEndpoint: [120.3894 150.1259]
                   Source: [1x1 Stateflow.State]
             SourceOClock: 9.4825
              Destination: [1x1 Stateflow.State]
        DestinationOClock: 6.1593
          RequirementInfo: ''
    IsExplicitlyCommented: 0
    IsImplicitlyCommented: 0
              CommentText: ''
ot2d = slreq.structToObj(sl2dest)
ot2d = 
  Requirement with properties:

            Type: 'Functional'
              Id: 'R2'
         Summary: 'Thrust Reverser Undeployment Conditions'
     Description: '<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">...'
        Keywords: {}
       Rationale: ''
       CreatedOn: 25-Mar-2019 14:52:41
       CreatedBy: 'asriram'
      ModifiedBy: 'asriram'
             SID: 2
    FileRevision: 1
      ModifiedOn: 25-Mar-2019 14:58:14
           Dirty: 0
        Comments: [0x0 struct]

Закройте файлы

slreq.discardLinkSet('reqs_validation_property_proving_original_model.slmx');
close_system('reqs_validation_property_proving_original_model')

Входные параметры

свернуть все

linkinfo содержит исходный артефакт и уникальную идентификационную информацию для конкретных ссылок, как возвращено

Пример: struct with fields

Типы данных: struct

Выходные аргументы

свернуть все

ot требование, модель или сущность данных, соответствующая исходному артефакту и уникальной идентификации в linkinfo. Значение ot зависит от типа сущности Link имеет как источник или место назначения.