透過集合功能整理內容
你可以依據偏好儲存及分類內容。
Vehicle_hw_device結構參考
#include < vehicle.h >
列印出車輛hal的調試狀態。這將由車輛網路服務調用,並將包含在服務的轉儲中。
傳入的檔案描述符可用於使用 dprintf() 或 write() 寫入偵錯文字。文字應僅採用 ASCII 編碼。
性能要求:
這必須是非阻塞呼叫。 HAL 應在 1 毫秒內從此呼叫返回,必須在 10 毫秒內從此呼叫返回。此呼叫必須避免死鎖,因為它可以在操作的任何點呼叫。使用的任何同步原語(例如互斥鎖或信號量)都應該在逾時時取得。
檔案Vehicle.h第1744行的定義。
立即取得車輛財產價值。數據應正確分配。 API 的呼叫者擁有資料欄位。呼叫者將為分區屬性設定 data->prop、data->value_type 以及可選的區域值。但 HAL 實作需要在返回時正確填充所有條目。對於指標類型,HAL 實作應該分配必要的內存,呼叫者負責呼叫release_memory_from_get,這允許HAL 釋放分配的記憶體。對於 VEHICLE_PROP_CHANGE_MODE_STATIC 類型的屬性, get 應始終傳回相同的值。對於 VEHICLE_PROP_CHANGE_MODE_ON_CHANGE 類型的屬性,它應該傳回最新值。如果尚無可用資料(這種情況可能發生在初始階段),則此呼叫應立即傳回,錯誤代碼為 -EAGAIN。
定義位於檔案Vehicle.h的第1681行。
枚舉所有可用的屬性。該列表在“list”中傳回。
- 參數
- 退貨
- 這輛車支援的屬性配置數組。請注意,傳回的資料是 const,呼叫者無法修改它。 HAL 實作應保留此記憶體直到 HAL 被釋放,以避免再次複製。
定義位於檔案Vehicle.h的第1663行。
釋放先前 get 呼叫中分配給資料的記憶體。對位元組或字串的 get 呼叫涉及從車輛 hal 分配必要的記憶體。為了安全起見,車輛 hal 分配的記憶體應該由車輛 hal 釋放,並且當不再需要來自車輛 hal 的資料時,車輛網路服務將呼叫它。車輛hal實作應該只釋放vehicle_prop_value_t的成員,如data->str_value.data或data->bytes_value.data,而不是資料本身,因為資料本身是從車輛網路服務分配的。一旦記憶體被釋放,相應的指標應該被設定為 NULL buvehicle hal。
定義位於檔案Vehicle.h的第1693行。
設定車輛屬性值。數據應正確分配且不為 NULL。 API 的呼叫者擁有資料欄位。設定操作時將忽略資料的時間戳記。設定某些屬性需要具有可用的初始狀態。根據車輛暫停情況,此類初始資料可能在初始化後短時間內不可用。在這種情況下,set 呼叫可以像 get 呼叫一樣傳回 -EAGAIN。對於具有單獨電源控制的屬性,如果該屬性未通電,則設定可能會失敗。在這種情況下,hal 應回傳 -ESHUTDOWN 錯誤。
檔案vehicle.h第1706行的定義。
訂閱活動。根據 list_properties 的輸出,如果屬性是: a) 變更時:sample_rate 應設為 0。b) 支援頻率:sample_rate 應設定為從 min_sample_rate 到 max_sample_rate。對於變化類型的屬性,車輛網路服務將再次呼叫 get 檢查初始狀態。因此,車輛 hal 實作不需要發送屬性變更類型的初始狀態。
- 參數
裝置 | |
支柱 | |
取樣率 | |
區域 | 分區財產的所有訂閱區域。對於非分區財產可以忽略。 0 表示支援所有區域而不是不支援區域。 |
定義位於檔案Vehicle.h的第1723行。
該結構的文檔是從以下文件產生的:
- 硬體/libhardware/include/hardware/vehicle.h
這個頁面中的內容和程式碼範例均受《內容授權》中的授權所規範。Java 與 OpenJDK 是 Oracle 和/或其關係企業的商標或註冊商標。
上次更新時間:2023-12-01 (世界標準時間)。
[[["容易理解","easyToUnderstand","thumb-up"],["確實解決了我的問題","solvedMyProblem","thumb-up"],["其他","otherUp","thumb-up"]],[["缺少我需要的資訊","missingTheInformationINeed","thumb-down"],["過於複雜/步驟過多","tooComplicatedTooManySteps","thumb-down"],["過時","outOfDate","thumb-down"],["翻譯問題","translationIssue","thumb-down"],["示例/程式碼問題","samplesCodeIssue","thumb-down"],["其他","otherDown","thumb-down"]],["上次更新時間:2023-12-01 (世界標準時間)。"],[],[]]