nfc_i.h 902 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. #include "nfc.h"
  3. #include "nfc_types.h"
  4. #include "nfc_views.h"
  5. #include "nfc_worker.h"
  6. #include <furi.h>
  7. #include <gui/gui.h>
  8. #include <gui/view.h>
  9. #include <gui/view_dispatcher.h>
  10. #include <assets_icons.h>
  11. #include <cli/cli.h>
  12. #include <menu/menu.h>
  13. #include <menu/menu_item.h>
  14. struct Nfc {
  15. osMessageQueueId_t message_queue;
  16. osMessageQueueId_t cli_message_queue;
  17. NfcWorker* worker;
  18. ValueMutex* menu_vm;
  19. MenuItem* menu;
  20. Icon* icon;
  21. Cli* cli;
  22. View* view_detect;
  23. View* view_emulate;
  24. View* view_field;
  25. View* view_cli;
  26. View* view_error;
  27. ViewDispatcher* view_dispatcher;
  28. };
  29. Nfc* nfc_alloc();
  30. void nfc_menu_detect_callback(void* context);
  31. void nfc_menu_emulate_callback(void* context);
  32. void nfc_menu_field_callback(void* context);
  33. void nfc_start(Nfc* nfc, NfcView view_id, NfcWorkerState worker_state);
  34. int32_t nfc_task(void* p);