pcsc-lite 2.5.0
eventhandler.h File Reference

This handles card insertion/removal events, updates ATR, protocol, and status information. More...

#include <stdint.h>
#include "pcsclite.h"
#include "readerfactory.h"
#include "wintypes.h"

Go to the source code of this file.

Macros

#define PCSCLITE_SHARING_LAST_CONTEXT   1
 One application is using the reader.
#define PCSCLITE_SHARING_NO_CONTEXT   0
 No application is using the reader.
#define PCSCLITE_SHARING_EXCLUSIVE_CONTEXT   -1
 Reader used in exclusive mode.
#define READER_NOT_INITIALIZED   (MAX_ATR_SIZE+1)
 Special value to indicate that power up has not yet happen This is used to auto start mode to wait until the reader is ready and the (possible) card has been powered up.

Functions

LONG EHTryToUnregisterClientForEvent (int32_t filedes)
 Try to unregister a client If no client is found then do not log an error.
LONG EHRegisterClientForEvent (int32_t filedes)
LONG EHUnregisterClientForEvent (int32_t filedes)
 Unregister a client and log an error if the client is not found.
void EHSignalEventToClients (void)
 Sends an asynchronous event to any waiting client.
LONG EHInitializeEventStructures (void)
LONG EHDeinitializeEventStructures (void)
LONG EHSpawnEventHandler (READER_CONTEXT *)
void EHDestroyEventHandler (READER_CONTEXT *)

Detailed Description

This handles card insertion/removal events, updates ATR, protocol, and status information.

Definition in file eventhandler.h.

Macro Definition Documentation

◆ PCSCLITE_SHARING_EXCLUSIVE_CONTEXT

#define PCSCLITE_SHARING_EXCLUSIVE_CONTEXT   -1

Reader used in exclusive mode.

Definition at line 62 of file eventhandler.h.

◆ PCSCLITE_SHARING_LAST_CONTEXT

#define PCSCLITE_SHARING_LAST_CONTEXT   1

One application is using the reader.

Definition at line 58 of file eventhandler.h.

◆ PCSCLITE_SHARING_NO_CONTEXT

#define PCSCLITE_SHARING_NO_CONTEXT   0

No application is using the reader.

Definition at line 60 of file eventhandler.h.

◆ READER_NOT_INITIALIZED

#define READER_NOT_INITIALIZED   (MAX_ATR_SIZE+1)

Special value to indicate that power up has not yet happen This is used to auto start mode to wait until the reader is ready and the (possible) card has been powered up.

Definition at line 67 of file eventhandler.h.

Function Documentation

◆ EHDeinitializeEventStructures()

LONG EHDeinitializeEventStructures ( void )

Definition at line 148 of file eventhandler.c.

◆ EHDestroyEventHandler()

void EHDestroyEventHandler ( READER_CONTEXT * rContext)

Definition at line 156 of file eventhandler.c.

◆ EHInitializeEventStructures()

LONG EHInitializeEventStructures ( void )

Definition at line 133 of file eventhandler.c.

◆ EHRegisterClientForEvent()

LONG EHRegisterClientForEvent ( int32_t filedes)

Definition at line 66 of file eventhandler.c.

◆ EHSignalEventToClients()

void EHSignalEventToClients ( void )

Sends an asynchronous event to any waiting client.

Definition at line 114 of file eventhandler.c.

◆ EHSpawnEventHandler()

LONG EHSpawnEventHandler ( READER_CONTEXT * rContext)

Definition at line 216 of file eventhandler.c.

◆ EHTryToUnregisterClientForEvent()

LONG EHTryToUnregisterClientForEvent ( int32_t filedes)

Try to unregister a client If no client is found then do not log an error.

Definition at line 81 of file eventhandler.c.

◆ EHUnregisterClientForEvent()

LONG EHUnregisterClientForEvent ( int32_t filedes)

Unregister a client and log an error if the client is not found.

Definition at line 101 of file eventhandler.c.