Создайте аналитический экземпляр из спецификации
Инстанцируйте всех свойств стереотипа, который будет применен к определенным элементам во время инстанцирования.
Создайте профиль для характеристик задержки.
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;
Инстанцируйте всех свойств стереотипа.
model = systemcomposer.createModel('archModel'); NodeLatency = struct('elementKinds',['Component']); ConnectorLatency = struct('elementKinds',['Connector']); LatencyBase = struct('elementKinds',['Connector','Port','Component']); PortLatency = struct('elementKinds',['Port']); LatencyAnalysis = struct('NodeLatency',NodeLatency, ... 'ConnectorLatency',ConnectorLatency, ... 'PortLatency',PortLatency, ... 'LatencyBase',LatencyBase); properties = struct('LatencyProfile',LatencyAnalysis); instantiate(model.Architecture,properties,'NewInstance')
Инстанцируйте определенных свойств стереотипа, который будет применен к определенным элементам во время инстанцирования.
NodeLatency = struct('elementKinds',["Component"], ... 'properties',struct('resources',true)); ConnectorLatency = struct('elementKinds',["Connector"], ... 'properties',struct('secure',true,'linkDistance',true)); LatencyBase = struct('elementKinds',[], ... 'properties',struct('dataRate',true,'latency',false)); PortLatency = struct('elementKinds',["Port"], ... 'properties',struct('queueDepth',true)); LatencyAnalysis = struct('NodeLatency',NodeLatency, ... 'ConnectorLatency',ConnectorLatency, ... 'PortLatency',PortLatency, ... 'LatencyBase',LatencyBase); properties = struct('LatencyProfile',LatencyAnalysis); instantiate(model.Architecture,properties,'NewInstance')
Инстанцируйте всех стереотипов уже в профиле, который будет применен к элементам во время инстанцирования.
instantiate(model.Architecture,'LatencyProfile','NewInstance')
model
— Архитектура моделиАрхитектура модели, от которой экземпляр сгенерирован в виде systemcomposer.arch.Architecture
объект.
Пример: model.Architecture
properties
— Стереотипируйте свойстваstruct
Структура, содержащая профиль, стереотип и информацию о свойстве, через которую пользователь может задать, какие стереотипы и свойства нужно инстанцировать.
name
— Имя экземпляраИмя экземпляра сгенерировано из модели в виде вектора символов.
Пример: 'NewInstance'
Типы данных: char
profile
— Профилируйте имяПрофилируйте имя в виде вектора символов.
Пример: 'LatencyProfile'
Типы данных: char
instance
— Экземпляр элементаЭкземпляр элемента, возвращенный как systemcomposer.analysis.ArchitectureInstance
, systemcomposer.analysis.ComponentInstance
, systemcomposer.analysis.PortInstance
, или systemcomposer.analysis.ConnectorInstance
объект. Эта функция является частью API экземпляра, который можно использовать, чтобы анализировать модель итеративно, поэлементно. Значение относится к экземпляру элемента, на котором выполняется итерация.
deleteInstance
| loadInstance
| saveInstance
| systemcomposer.analysis.Instance
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.