EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION fungsi panggilan balik (sercx.h)

Fungsi panggilan balik peristiwa EvtSerCx2PioTransmitCancelReadyNotification dipanggil oleh versi 2 dari ekstensi kerangka kerja serial (SerCx2) untuk membatalkan pemberitahuan siap bahwa SerCx2 diaktifkan dalam panggilan sebelumnya ke fungsi panggilan balik peristiwa EvtSerCx2PioTransmitEnableReadyNotification .

Sintaks

EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION EvtSercx2PioTransmitCancelReadyNotification;

BOOLEAN EvtSercx2PioTransmitCancelReadyNotification(
  [in] SERCX2PIOTRANSMIT PioTransmit
)
{...}

Parameter

[in] PioTransmit

Handel SERCX2PIOTRANSMIT ke objek transmisi PIO. Driver pengontrol serial sebelumnya disebut metode SerCx2PioTransmitCreate untuk membuat objek ini.

Nilai kembali

Fungsi EvtSerCx2PioTransmitCancelReadyNotification mengembalikan TRUE jika pemberitahuan siap berhasil dinonaktifkan dan driver pengontrol serial dapat menjamin bahwa pemberitahuan ini tidak akan menyebabkan metode SerCx2PioTransmitReady dipanggil.

Fungsi mengembalikan FALSE jika driver telah memanggil SerCx2PioTransmitReady, atau akan memanggil metode ini.

Keterangan

Driver pengontrol serial Anda harus menerapkan fungsi ini. Driver mendaftarkan fungsi dalam panggilan SerCx2PioTransmitCreate yang membuat objek transmisi PIO.

Jika waktu permintaan tulis terkait habis atau dibatalkan saat pemberitahuan siap diaktifkan, SerCx2 memanggil fungsi EvtSerCx2PioTransmitCancelReadyNotification untuk membatalkan pemberitahuan yang tertunda. Jika panggilan ini mengembalikan FALSE, SerCx2 mengharapkan driver pengontrol serial untuk memanggil SerCx2PioTransmitReady; hanya setelah panggilan ini serCx2 memanggil fungsi panggilan balik peristiwa EvtSerCx2PioTransmitCleanupTransaction , jika diimplementasikan, dan menyelesaikan permintaan.

Untuk membatalkan pemberitahuan siap yang diaktifkan sebelumnya, fungsi EvtSerCx2PioTransmitCancelReadyNotification biasanya menonaktifkan interupsi dalam pengontrol serial yang menunjukkan bahwa FIFO pengiriman siap menerima lebih banyak data. SerCx2 mengaktifkan interupsi ini dalam panggilan sebelumnya ke fungsi EvtSerCx2PioTransmitEnableReadyNotification .

Untuk informasi selengkapnya, lihat Transaksi PIO-Transmit SerCx2.

Contoh

Untuk menentukan fungsi panggilan balik EvtSerCx2PioTransmitCancelReadyNotification , Anda harus terlebih dahulu memberikan deklarasi fungsi yang mengidentifikasi jenis fungsi panggilan balik yang Anda tentukan. Windows menyediakan sekumpulan tipe fungsi panggilan balik untuk driver. Mendeklarasikan fungsi menggunakan jenis fungsi panggilan balik membantu Analisis Kode untuk Driver, Pemverifikasi Driver Statis (SDV), dan alat verifikasi lainnya menemukan kesalahan, dan itu adalah persyaratan untuk menulis driver untuk sistem operasi Windows.

Misalnya, untuk menentukan fungsi panggilan balik EvtSerCx2PioTransmitCancelReadyNotification yang bernama MyPioTransmitCancelReadyNotification, gunakan jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION , seperti yang ditunjukkan dalam contoh kode ini:

EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION  MyPioTransmitCancelReadyNotification;

Kemudian, terapkan fungsi panggilan balik Anda sebagai berikut:

_Use_decl_annotations_
BOOLEAN
  MyPioTransmitCancelReadyNotification(
    SERCX2PIOTRANSMIT  PioTransmit
    )
  {...}

Jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION didefinisikan dalam file header Sercx.h. Untuk mengidentifikasi kesalahan secara lebih akurat saat Anda menjalankan alat analisis kode, pastikan untuk menambahkan anotasi Use_decl_annotations ke definisi fungsi Anda. Anotasi Use_decl_annotations memastikan bahwa anotasi yang diterapkan ke jenis fungsi EVT_SERCX2_PIO_TRANSMIT_CANCEL_READY_NOTIFICATION dalam file header digunakan. Untuk informasi selengkapnya tentang persyaratan untuk deklarasi fungsi, lihat Mendeklarasikan Fungsi dengan Menggunakan Jenis Peran Fungsi untuk Driver KMDF. Untuk informasi selengkapnya tentang Use_decl_annotations, lihat Perilaku Fungsi Anotasi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Tersedia dimulai dengan Windows 8.1.
Target Platform Desktop
Header sercx.h
IRQL Dipanggil di IRQL <= DISPATCH_LEVEL.

Lihat juga

EvtSerCx2PioTransmitEnableReadyNotification

SERCX2PIOTRANSMIT

SerCx2PioTransmitCreate

SerCx2PioTransmitReady