nfc_playlist_worker.h 1.1 KB

1234567891011121314151617181920212223242526272829303132
  1. #pragma once
  2. #include <furi.h>
  3. #include <furi_hal.h>
  4. #include <nfc/nfc.h>
  5. #include <nfc/nfc_device.h>
  6. #include <nfc/nfc_listener.h>
  7. typedef enum NfcPlaylistWorkerState {
  8. NfcPlaylistWorkerState_Emulating,
  9. NfcPlaylistWorkerState_Stopped,
  10. } NfcPlaylistWorkerState;
  11. typedef struct NfcPlaylistWorker {
  12. FuriThread* thread;
  13. NfcPlaylistWorkerState state;
  14. NfcListener* nfc_listener;
  15. NfcDevice* nfc_device;
  16. NfcProtocol nfc_protocol;
  17. NfcDeviceData* nfc_data;
  18. Nfc* nfc;
  19. } NfcPlaylistWorker;
  20. NfcPlaylistWorker* nfc_playlist_worker_alloc();
  21. void nfc_playlist_worker_free(NfcPlaylistWorker* nfc_playlist_worker);
  22. void nfc_playlist_worker_stop(NfcPlaylistWorker* nfc_playlist_worker);
  23. void nfc_playlist_worker_start(NfcPlaylistWorker* nfc_playlist_worker);
  24. int32_t nfc_playlist_worker_task(void* context);
  25. bool nfc_playlist_worker_is_emulating(NfcPlaylistWorker* nfc_playlist_worker);
  26. void nfc_playlist_worker_set_nfc_data(NfcPlaylistWorker* nfc_playlist_worker, char* file_path);
  27. NfcDeviceData* nfc_playlist_worker_get_nfc_data(NfcPlaylistWorker* nfc_playlist_worker);