Руководство по реализации интерфейса
В этом разделе приведены рекомендации по реализации интерфейса.
В этом разделе
Раздел | Описание |
---|---|
Существует три интерфейса GPIO: по одному для каждого устройства. На каждый интерфейс ссылается GUID. |
|
В этом разделе описывается реализация индикатора. |
|
Рекомендуется использовать физический ресурс GPIO как для кнопок, так и для индикаторов состояния. |
Состояние системы
Состояние по умолчанию для всех кнопок, поддерживаемых драйвером папки "Входящие" при загрузке, находится в положении UP.
Первый индикатор с помощью интерфейса переключил указанную кнопку (по индексу) в состояние DOWN.
Состояние по умолчанию для индикатора режима ноутбука или сланца — SLATE.
По умолчанию индикатор закрепленного режима находится в состоянии UNDOCKED.
Первый индикатор с помощью интерфейса переключил индикатор на другое состояние.
Чтобы запросить состояние, можно использовать API GetSystemMetric следующим образом:
int WINAPI GetSystemMetrics(
_In_ int nIndex
);
Параметры, доступные для индикаторов:
- SM_SYSTEMDOCKED для состояния стыковки. Вызов возвращает значение 0 для режима отстыковки и ненулевое значение в противном случае.
- SM_CONVERTIBLESLATEMODE для режима сланца. Вызов возвращает значение 0 для режима Slate и ненулевое значение в противном случае.
Уведомления
При изменении системной метрики SM_CONVERTIBLESLATEMODE или SM_SYSTEMDOCKED система отправляет широковещательное сообщение с помощью WM_SETTINGCHANGE.
LPARAM сообщения WM_SETTINGCHANGE указывает, какая системная метрика была изменена с помощью строки ConvertibleSlateMode или SystemDockMode.