API Spec Review
依頼事項
IC-ServiceのAPI仕様書のレビューをお願い致します。
以下にレビュー対象ドキュメントを添付致します。
指摘/コメントは、Confluenceのコメント機能(Add Inline Commnet)を使用して、以下に直接追記頂けますようお願い致します。
2020/8/7追記
レビューありがとうございました。コメントに基づき、以下添付の通り、修正しました。ご査収ください。
一部コメントについては、口頭で対応協議させて頂いた上で、必要に応じて修正したいと思います。
対応希望納期
7/24(金)
-----------------------------------------------------------------------------------------------------------------------------------------------------------
IC-Service API仕様書
目次
3-1-5 IC_HMI_TRCOM_UNIT_VAL.. 9
3-1-6 IC_HMI_FUEL_ECONOMY_UNIT_VAL.. 10
3-4-18 getAdaptingLighting. 32
3-4-23 getExteriorLightFault. 35
3-4-27 getAutoHiBeamGreen.. 37
3-4-32 getDrivingPowerMode. 40
3-8-18 getFuelEconomyUnitVal 57
1目的
本仕様書は、HMI LayerのCluster UIが、共有メモリにセットされたIC-Serviceのシグナル情報取得APIについて記載する。
2概要
画面描画を行うHMI LayerのCluster UIと機能処理を行うService LayerのIC-Service間におけるAPIを定義する。
Container |
Container Host |
Cluster UI |
IC-Service |
Inter Process Communication |
HMI Layer |
Service Layer |
図2.1 HMI Layerの位置づけ
HMI LayerのCluster UIとService LayerのIC-Service間は、Inter Process Communicationの共有メモリを使用して、通信を行う。
共有メモリの使い方は、Polling方式とEvent方式を用意する。
①Polling方式
IC-Serviceは共有メモリの値に変化があった場合、setData関数などを用いて、値の更新を行う。
Cluster UIは周期的にgetData関数などを実行し、値の変化にかかわらず、共有メモリから値を取得する。
以下に概略図を示す。
図2.2 Polling方式における通信
②Event方式
Cluster UIは通知を受けたい共有メモリをIC-Serviceに登録する。IC-Serviceは共有メモリの値に変化があった場合は、setData関数などを用いて、値の更新を行う。その際、Cluster UIから登録された共有メモリの値が変わった場合は、Notify関数でCluster UIへ通知を行う。
Notify関数では変更したシグナルと状態をClusterUIに通知させ、Cluster UIは値を取得する。
以下に概略図を示す。
図2.3 Event方式における通信
3 API詳細
本項は、各シグナル取得するために使用するAPIの詳細を記述する。
Enum定数定義の詳細については次の1~4で形成される。
1:APIの名前
2:APIの説明
3:定数名、値及び説明
4:特記事項
Macro定数定義の詳細については次の1~4で形成される。
1:APIの名前
2:APIの説明
3:値及び説明
4:特記事項
シグナル取得APIの詳細については次の1~6で形成される。
1:プロトタイプ宣言
2:APIの説明
3:返り値の型種別
4:返り値の詳細
5:引数の詳細
6:特記事項
3-1 Enum Definition
3-1-1 IC_HMI_ON_OFF
1:APIの名前
IC_HMI_ON_OFF
2:APIの説明
TelltaleのON/OFF状態
3:定数名及び値
0:IC_HMI_OFF OFF状態
1:IC_HMI_ON ON状態
4:特記事項
特になし
3-1-2 IC_HMI_GEAR_AT_VAL
1: APIの名前
IC_HMI_GEAR_AT_VAL
2:APIの説明
ギア状態(AT)
3:定数名及び値
0:IC_HMI_AT_OFF ギアが非表示状態
1:IC_HMI_AT_PARKING ギアがParking状態
2:IC_HMI_AT_REVERSE ギアがReverse状態
3:IC_HMI_AT_NEUTRAL ギアがNeutral状態
4:IC_HMI_AT_DRIVE ギアがDrive状態
5:IC_HMI_AT_SECOND ギアがSecond状態
6:IC_HMI_AT_LOW_GEAR ギアがLowGear状態
7:IC_HMI_AT_FIRST ギアがFirst状態
8:IC_HMI_AT_MANUAL ギアがManual状態
9:IC_HMI_AT_BRAKE ギアがBrake状態
10:IC_HMI_AT_ALL_ON 全点灯状態
11:IC_HMI_AT_ALL_OFF 全消灯状態
12:IC_HMI_AT_UNUSED ギアが未使用状態
4:特記事項
特になし
3-1-3 IC_HMI_GEAR_MT_VAL
1: APIの名前
IC_HMI_GEAR_MT_VAL
2:APIの説明
ギア状態(MT)
3:定数名及び値
0:IC_HMI_MT_OFF ギアが非表示状態
1:IC_HMI_MT_FIRST ギアが1速状態
2:IC_HMI_MT_SECOND ギアが2速状態
3:IC_HMI_MT_THIRD ギアが3速状態
4:IC_HMI_MT_FOURTH ギアが4速状態
5:IC_HMI_MT_FIFTH ギアが5速状態
6:IC_HMI_MT_SIXTH ギアが6速状態
7:IC_HMI_MT_SEVENTH ギアが7速状態
8:IC_HMI_MT_EIGHTTH ギアが8速状態
4:特記事項
特になし
3-1-4 IC_HMI_SP_UNIT_VAL
1: APIの名前
IC_HMI_SP_UNIT_VAL
2:APIの説明
車速単位
3:定数名及び値
0:IC_HMI_SP_KM_H 車速単位がkm/h状態
1:IC_HMI_SP_MPH 車速単位がmph状態
4:特記事項
特になし
3-1-5 IC_HMI_TRCOM_UNIT_VAL
1: APIの名前
IC_HMI_TRCOM_UNIT_VAL
2:APIの説明
トリップコンピュータ単位
3:定数名及び値
0:IC_HMI_TRCOM_KM トリップコンピュータ単位がkm状態
1:IC_HMI_TRCOM_MILE トリップコンピュータ単位がmile状態
4:特記事項
特になし
3-1-6 IC_HMI_FUEL_ECONOMY_UNIT_VAL
1:APIの名前
IC_HMI_FUEL_ECONOMY_UNIT_VAL
2:APIの説明
燃費表示単位
・瞬間燃費
・平均燃費A/B
・瞬間電費
・瞬間電費A/B
3:定数名及び値
0:IC_HMI_FUEL_KM_L 燃費表示単位がkm/L状態
1:IC_HMI_FUEL_MPG_US 燃費表示単位がMPG(U.S gallon) 状態
2:IC_HMI_FUEL_MPG_IG 燃費表示単位がMPG(imperial gallon) 状態
3:IC_HMI_FUEL_L_100KM 燃費表示単位がL/100km状態
4:IC_HMI_FUEL_MILE_KWH 燃費表示単位がmile/kwh状態
5:IC_HMI_FUEL_KM_KWH 燃費表示単位がkm/kwh状態
6:IC_HMI_FUEL_MILE_KG 燃費表示単位がmile/kg状態
7:IC_HMI_FUEL_KM_KG 燃費表示単位がkm/kg状態
8:IC_HMI_FUEL_KWH_100KM 燃費表示単位がkwh/100km状態
4:特記事項
特になし
3-2 Macro Definition
3-2-1 TellTale
3-2-1-1 IC_HMI_TT_TURN_R
1: APIの名前
IC_HMI_TT_TURN_R
2:APIの説明
右方向指示器状態のビットフラグ
3:値
0x0000000000000001
4:特記事項
特になし
3-2-1-2 IC_HMI_TT_TURN_L
1: APIの名前
IC_HMI_TT_TURN_L
2:APIの説明
左方向指示器状態のビットフラグ
3:値
0x0000000000000002
4:特記事項
特になし
3-2-1-3 IC_HMI_TT_BRAKE
1: APIの名前
IC_HMI_TT_BRAKE