# Obsługa zdarzeń asynchronicznych statusu drukarek

## Moduły
| Typy zdarzeń
## Definicje typów
typedef void( | POSNET_CALLBACK_T )(unsigned long status)
| Typ definiujący funkcję callback dla zdarzeń asynchronicznych. Przyjmuje jeden parametr złożony status urządzenia (w/g wzoru: (Status urządzenia * 65536)+status mechanizmu ) .
## Funkcje
POSNET_API HANDLE __stdcall | POS_GetEvent (POSNET_HANDLE hLocalDevice)
| Funkcja zwraca uchwyt do zdarzenia. Obiekt zdarzenia jest zarządzany przez bibliotekę. Zdarzenie pracuje w trybie Manual Reset patrz.
POSNET_API POSNET_STATUS __stdcall | POS_SetCallback (POSNET_HANDLE hLocalDevice, POSNET_CALLBACK_T *callback)
| Funkcja ustawia w bibliotece funkcję callback, która będzie wywoływana po otrzymaniu zdarzenia asynchronicznego.
POSNET_API POSNET_STATUS __stdcall | POS_SetEventHandlingMode (POSNET_HANDLE hLocalDevice, unsigned long eventMode)
| Ustaw metodę obsługi zdarzeń asynchronicznych.
POSNET_API POSNET_STATUS __stdcall | POS_SetMessageParams (POSNET_HANDLE hLocalDevice, UINT messageCode, HANDLE hWnd)
| Funkcja ustawia kod komunikatu i uchwyt okna do którego ma być on wysłany przy obsłudze zdarzeń asynchronicznych. Tylko dla Windows. Jako lParam takiego komunikatu wysyłany jest złożony status urządzenia (w/g wzoru: (Status urządzenia * 65536)+status mechanizmu ).

## Dokumentacja definicji typów

typedef void( POSNET_CALLBACK_T)(unsigned long status)

Typ definiujący funkcję callback dla zdarzeń asynchronicznych. Przyjmuje jeden parametr

- złożony status urządzenia (w/g wzoru: (Status urządzenia * 65536)+status mechanizmu ) .

Definicja w linii 772 pliku posnet.h.

## Dokumentacja funkcji

POSNET_API HANDLE __stdcall POS_GetEvent | ( | POSNET_HANDLE | hLocalDevice | ) |

Funkcja zwraca uchwyt do zdarzenia. Obiekt zdarzenia jest zarządzany przez bibliotekę. Zdarzenie pracuje w trybie Manual Reset patrz.

Zobacz również:
  http://msdn.microsoft.com/library/default.asp?url=/library/en-us/dllproc/base/createevent.asp MSDN.

Parametry:

  | hLocalDevice | Uchwyt lokalny urządzenia. Funkcja pomimo pobierania uchwytu lokalnego ma zasięg globalny dla urządzenia.

Zwraca:
  NULL w przypadku błędu, w przeciwnym przypadku uchwyt zdarzenia (Event).

Tylko dla WIN32

POSNET_API POSNET_STATUS __stdcall POS_SetCallback | ( | POSNET_HANDLE | hLocalDevice,
|  | POSNET_CALLBACK_T * | callback |
| ) |  |  |

Funkcja ustawia w bibliotece funkcję callback, która będzie wywoływana po otrzymaniu zdarzenia asynchronicznego.

Parametry:

  | hLocalDevice | Uchwyt lokalny urządzenia. Funkcja pomimo pobierania uchwytu lokalnego ma zasięg globalny dla urządzenia.
  | callback | wskaźnik na funkcję typu callback.

POSNET_API POSNET_STATUS __stdcall POS_SetEventHandlingMode | ( | POSNET_HANDLE | hLocalDevice,
|  | unsigned long | eventMode |
| ) |  |  |

Ustaw metodę obsługi zdarzeń asynchronicznych.

Drukarka ma możliwość generacji zdarzeń asynchronicznych w postaci zmian statusu drukarki, które muszą być przesłane do aplikacji. Tego typu zdarzenia można przesłać do aplikacji w następujący sposób:

- za pomocą IPC typu "Event"
- za pomocą komunikatów systemu Windows (Windows Messages)
- za pomocą systemu pollingu, gdzie aplikacja odpytuje o status

Funkcja służy to ustawienia trybu sygnalizacji zdarzeń.

Parametry:

  | hLocalDevice | Uchwyt lokalny urządzenia. Funkcja pomimo pobierania uchwytu lokalnego ma zasięg globalny dla urządzenia.
  | eventMode | Typ sygnalizacji zdarzeń definiowany przez Typy zdarzeń

Zwraca:
  Status wykonania funkcji (POSNET_STATUS_OK w przypadku sukcesu)

POSNET_API POSNET_STATUS __stdcall POS_SetMessageParams | ( | POSNET_HANDLE | hLocalDevice,
|  | UINT | messageCode,
|  | HANDLE | hWnd |
| ) |  |  |

Funkcja ustawia kod komunikatu i uchwyt okna do którego ma być on wysłany przy obsłudze zdarzeń asynchronicznych. Tylko dla Windows. Jako lParam takiego komunikatu wysyłany jest złożony status urządzenia (w/g wzoru: (Status urządzenia * 65536)+status mechanizmu ).

Parametry:

  | hLocalDevice | Uchwyt lokalny urządzenia. Funkcja pomimo pobierania uchwytu lokalnego ma zasięg globalny dla urządzenia.
  | messageCode | Kod komunikatu (WM_xxxx)
  | hWnd | Uchwyt okna

Tylko dla WIN32