struktur PO_FX_DEVICE_V1 (wdm.h)

Struktur PO_FX_DEVICE menjelaskan atribut daya perangkat ke kerangka kerja manajemen daya (PoFx).

Sintaks

typedef struct _PO_FX_DEVICE_V1 {
  ULONG                                      Version;
  ULONG                                      ComponentCount;
  PPO_FX_COMPONENT_ACTIVE_CONDITION_CALLBACK ComponentActiveConditionCallback;
  PPO_FX_COMPONENT_IDLE_CONDITION_CALLBACK   ComponentIdleConditionCallback;
  PPO_FX_COMPONENT_IDLE_STATE_CALLBACK       ComponentIdleStateCallback;
  PPO_FX_DEVICE_POWER_REQUIRED_CALLBACK      DevicePowerRequiredCallback;
  PPO_FX_DEVICE_POWER_NOT_REQUIRED_CALLBACK  DevicePowerNotRequiredCallback;
  PPO_FX_POWER_CONTROL_CALLBACK              PowerControlCallback;
  PVOID                                      DeviceContext;
  PO_FX_COMPONENT_V1                         Components[ANYSIZE_ARRAY];
} PO_FX_DEVICE_V1, *PPO_FX_DEVICE_V1;

Anggota

Version

Nomor versi struktur ini. Jika driver akan mendaftar untuk dukungan status performa dengan PoFx, atur anggota ini ke PO_FX_VERSION_V2. Jika tidak, atur anggota ini ke PO_FX_VERSION_V1.

ComponentCount

Jumlah elemen dalam array Komponen . Selain itu, anggota ini menentukan jumlah komponen dalam perangkat.

ComponentActiveConditionCallback

Penunjuk ke rutinitas panggilan balik ComponentActiveConditionCallback yang diimplementasikan oleh driver perangkat.

ComponentIdleConditionCallback

Penunjuk ke rutinitas panggilan balik ComponentIdleConditionCallback yang diimplementasikan oleh driver perangkat.

ComponentIdleStateCallback

Penunjuk ke rutinitas panggilan balik ComponentIdleStateCallback yang diimplementasikan oleh driver perangkat.

DevicePowerRequiredCallback

Penunjuk ke rutinitas panggilan balik DevicePowerRequiredCallback yang diimplementasikan oleh driver perangkat.

DevicePowerNotRequiredCallback

Penunjuk ke rutinitas panggilan balik DevicePowerNotRequiredCallback yang diimplementasikan oleh driver perangkat.

PowerControlCallback

Penunjuk ke rutinitas panggilan balik PowerControlCallback yang diimplementasikan oleh driver perangkat.

DeviceContext

Penunjuk ke konteks perangkat yang dialokasikan pemanggil. Pointer ini diteruskan sebagai parameter untuk setiap fungsi panggilan balik yang diimplementasikan driver yang diarahkan oleh struktur ini. Driver perangkat menggunakan konteks ini untuk menyimpan informasi tentang status daya perangkat saat ini. Konteks ini buram untuk PoFx.

Components[ANYSIZE_ARRAY]

Anggota ini adalah elemen pertama dalam array dari satu atau beberapa elemen PO_FX_COMPONENT . Jika array berisi lebih dari satu elemen, elemen tambahan segera mengikuti struktur PO_FX_DEVICE . Array berisi satu elemen untuk setiap komponen dalam perangkat. Status daya Fx dari setiap komponen dapat dikontrol secara independen dari status daya Fx komponen lain dalam perangkat. Konstanta ANYSIZE_ARRAY didefinisikan menjadi 1 dalam file header Ntdef.h.

Keterangan

Untuk mendaftarkan perangkat dengan PoFx, driver memanggil rutinitas dan persediaan PoFxRegisterDevice , sebagai parameter, penunjuk ke struktur PO_FX_DEVICE yang menjelaskan perangkat.

Setiap elemen dalam array Komponen menjelaskan atribut status daya dari satu komponen di perangkat. Setiap komponen dalam perangkat diidentifikasi oleh indeks array Komponennya . Rutinitas seperti PoFxActivateComponent dan PoFxCompleteIdleCondition menggunakan indeks array komponen untuk mengidentifikasi komponen.

Driver perangkat tidak diperlukan untuk menerapkan keenam rutinitas panggilan balik. Driver dapat mengatur penunjuk fungsi dalam struktur PO_FX_DEVICE ke NULL jika driver tidak menerapkan rutinitas panggilan balik yang sesuai. Namun, rutinitas panggilan balik tertentu harus diimplementasikan. Secara khusus, jika satu atau beberapa komponen dalam perangkat memiliki lebih dari satu status Fx, driver harus menerapkan rutinitas ComponentIdleStateCallback, ComponentActiveConditionCallback, dan ComponentIdleConditionCallback . Jika tidak, pendaftaran perangkat gagal dan PoFxRegisterDevice mengembalikan STATUS_INVALID_PARAMETER.

Persyaratan

   
Klien minimum yang didukung Didukung dimulai dengan Windows 8.
Header wdm.h (termasuk Wudfwdm.h)

Lihat juga

ComponentActiveConditionCallback

ComponentIdleConditionCallback

ComponentIdleStateCallback

DevicePowerNotRequiredCallback

DevicePowerRequiredCallback

PO_FX_COMPONENT

PoFxActivateComponent

PoFxCompleteIdleCondition

PoFxRegisterDevice

PowerControlCallback