| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354 |
- #pragma once
- #include <nfc/nfc.h>
- #include "picopass_protocol.h"
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef enum {
- PicopassPollerEventTypeRequestMode,
- PicopassPollerEventTypeCardDetected,
- PicopassPollerEventTypeCardLost,
- PicopassPollerEventTypeSuccess,
- PicopassPollerEventTypeFail,
- } PicopassPollerEventType;
- typedef enum {
- PicopassPollerModeRead,
- PicopassPollerModeWrite,
- PicopassPollerModeWriteKey,
- } PicopassPollerMode;
- typedef struct {
- PicopassPollerMode mode;
- } PicopassPollerEventDataRequestMode;
- typedef union {
- PicopassPollerEventDataRequestMode req_mode;
- } PicopassPollerEventData;
- typedef struct {
- PicopassPollerEventType type;
- PicopassPollerEventData* data;
- } PicopassPollerEvent;
- typedef NfcCommand (*PicopassPollerCallback)(PicopassPollerEvent event, void* context);
- typedef struct PicopassPoller PicopassPoller;
- PicopassPoller* picopass_poller_alloc(Nfc* nfc);
- void picopass_poller_free(PicopassPoller* instance);
- void picopass_poller_start(
- PicopassPoller* instance,
- PicopassPollerCallback callback,
- void* context);
- void picopass_poller_stop(PicopassPoller* instance);
- #ifdef __cplusplus
- }
- #endif
|