Main Content

set

AUTOSAR アーキテクチャ要素のプロパティの設定

説明

set(archElement,property,value) は、AUTOSAR アーキテクチャ要素 archElement の指定したプロパティを value に設定します。archElement 引数は、addComponentaddCompositionaddPortconnect または find への以前の呼び出しにより返されるコンポーネント、コンポジション、ポートまたはコネクタ ハンドルです。

すべて折りたたむ

AUTOSAR アーキテクチャ モデルで、関数 set を使用して次を実行します。

  • 2 つの AUTOSAR コンポジション ポートの Name プロパティの変更。

  • AUTOSAR コンポーネント ポートの Name プロパティの変更。これにより、対応する Simulink® 実装モデル端子の名前も変更されます。

  • AUTOSAR コンポーネントの Kind プロパティと Name プロパティの変更。

次に、ポートの名前の変更を反映したモデル端子の Name の値をリスト表示します。

% Create AUTOSAR architecture model
modelName = 'myArchModel';
archModel = autosar.arch.createModel(modelName);

% Add composition and component at architecture model top level
composition = addComposition(archModel,'Sensors');
addComponent(archModel,'Controller1');

% Add composition ports
addPort(composition,'Receiver',{'TPS_Hw','APP_Hw'});
addPort(composition,'Sender',{'TPS_Perc','APP_Perc'});

% Add component ports
controller = find(archModel,'Component','Name','Controller1');
addPort(controller,'Receiver',{'TPS_Perc','APP_Perc'});
addPort(controller,'Sender','ThrCmd_Perc');

% Connect composition and component based on matching port names
connect(archModel,composition,controller);

% Create implementation model for component
createModel(controller);

layout(archModel);  % Auto-arrange layout

% Set properties
set(composition.Ports(1),'Name','NewPortName1');  % Rename 2 composition ports
set(composition.Ports(3),'Name','NewPortName2');
set(find(controller,'Port','Name','TPS_Perc'),...
    'Name','NewPortName3');  % Rename port for Controller1 component & implementation
set(controller,'Kind','ServiceProxy');  % Component type for Controller1 component
set(controller,'Name','Instance1');     % Name for Controller1 component

% Find ports in architecture model hierarchy
ports_in_hierarchy = find(archModel,'Port','AllLevels',true)
% List Kind and Name property values for each port
for ii=1:length(ports_in_hierarchy)
    port = ports_in_hierarchy(ii);
    portName = get(port,'Name');
    portKind = get(port,'Kind');
    fprintf('%s port %s\n',portKind,portName);
end
ports_in_hierarchy = 
  7×1 CompPort array with properties:
    Kind
    Connected
    Name
    Parent
    SimulinkHandle

Receiver port NewPortName1
Receiver port APP_Hw
Sender port NewPortName2
Sender port APP_Perc
Sender port ThrCmd_Perc
Receiver port NewPortName3
Receiver port APP_Perc

入力引数

すべて折りたたむ

プロパティの値を設定する AUTOSAR アーキテクチャ要素。この引数は、addComponentaddCompositionaddPortconnect または find への以前の呼び出しにより返されるコンポーネント、コンポジション、ポートまたはコネクタ ハンドルです。

例: port

AUTOSAR アーキテクチャ要素の有効なプロパティのうち、値を設定するプロパティ。

例: 'Name'

指定した AUTOSAR アーキテクチャ要素の指定したプロパティに設定する値。

例: 'NewPortName1'

バージョン履歴

R2020a で導入