• 検索結果がありません。

P ポート

ドキュメント内 ASCET V6.1 AUTOSAR ユーザーズガイド (ページ 49-52)

6.1 ポート

6.1.1 P ポート

A

「Pポート」(PPort: 提供ポート)は、ソフトウェアコンポーネントが他のソフトウェアコンポーネントにデータまた はサービスを提供するために使用するものです。Pポートには「センダポート」と「サーバーポート」とがあります。

センダポートを作成する:

ƒ “Software Component Editor for: Swc”ウィンドウの Insert → Compo-nent を選択します。

“Select item…”ダイアログボックスが開きます。

ƒ ツリーペインをナビゲートし、インターフェースSRInterfaceを選択してOK をクリックします。

図25: ソフトウェアコンポーネント“Swc”内のアイテム“SRInterface”を選択する

“Properties for complex element: SRInterface”ダイアログボックスが開きま す。

ƒ このポートの名前をSenderにし、内部アクセスプロパティ(“Internal Access”フィールド)で“Provided”を選択して OK をクリックします。

ƒ ツリーペインの“Outline”タブにあるエレメントSender::SRInterfaceを 選択し、それをソフトウェアコンポーネントのブロックダイアグラム上に配置し ます。

エレメントSpeedを持つPポートSenderが、下図のようなグラフィックで表 現されます。

図27: ソフトウェアコンポーネントのブロックダイアグラムエディタに表示されるPポート“Sender”

ソフトウェアコンポーネントの型定義内で、Pポートの名前は<SHORT-NAME>エレメントで定義されます。この 名前は、このソフトウェアコンポーネント型を参照する他のエレメントの中で使用されます。

Pポートのショート名は有効なC識別子である必要があります。

また<REQUIRED-INTERFACE-TREF>エレメントでは他のポートとの通信に使用する定義済みインターフェ ース型への参照が定義されます。

この<PROVIDED-INTERFACE-TREF>エレメントには要求されるインターフェースを明記する必要があります。

サーバーポートを作成する:

ƒ “Software Component Editor for: Swc”ウィンドウの Insert Compo-nent を選択します。

“Select item…”ダイアログボックスが開きます。

ƒ ツリーペインをナビゲートし、インターフェースCSInterface を選択して OK をクリックします。

“Properties for complex element: CSInterface”ダイアログボックスが開きま す。

ƒ このポートの名前を Serverにし、内部アクセスプロパティ(“Internal Access”フィールド)で“Provided”を選択して OK をクリックします。

28: CSInterface”型のPポート“Server

ASCETによって以下のものが生成されます。

ƒ サーバーノードServer::CSInterface (Realized Interfaces フォルダの下)

ƒ ダイアグラムServer_CSInterface

ƒ クライアント/サーバーインターフェースCSInterface内の各オペレー ション用のサーバーランナブル。下図ではServer_MaximumValueお よびServer_Notificationという2つのランナブルが作成されてい ます。

図29: ソフトウェアコンポーネント“Swc”のツリーペイン内のPポート“Server”

サーバーランナブルのエントリ関数の戻り値の型は、そのサーバーがアプリケーションエラーを返す場合は Std_ReturnType、返さない場合はvoidです。

Pポートの場合、<PROVIDED-INTERFACE-TREF>エレメント内で、他のポートとの通信に使用する定義済み インターフェース型への参照が定義されます。

さらに、ASCETはソフトウェアコンポーネントSwcの内部ビヘイビアに情報を追加します。1つのオペレーショ ンが呼び出すイベントがサーバーポート内の各オペレーション用に作成され、ランナブルエンティティも同様に 1つずつ作成されます。詳細は第 7章「内部ビヘイビア」を参照してください。

注記

クライアント/サーバーインターフェースは、サーバーがソフトウェアコンポーネントに挿入される際に変更さ れるると編集される可能性があります。この場合、メニューコマンド 、ユーザーはBuild → Update Inter-faces メニューオプションを実行使用して、ソフトウェアコンポーネント内のサーバーインターフェースを更新 する必要があります。

ドキュメント内 ASCET V6.1 AUTOSAR ユーザーズガイド (ページ 49-52)