picopass_worker_i.h 881 B

123456789101112131415161718192021222324252627282930313233343536
  1. #pragma once
  2. #include "picopass_worker.h"
  3. #include "loclass_writer.h"
  4. #include "picopass_i.h"
  5. #include <furi.h>
  6. #include <lib/toolbox/stream/file_stream.h>
  7. #include <furi_hal.h>
  8. #include <stdlib.h>
  9. #include <rfal_rf.h>
  10. #include <platform.h>
  11. struct PicopassWorker {
  12. FuriThread* thread;
  13. Storage* storage;
  14. Stream* dict_stream;
  15. PicopassDeviceData* dev_data;
  16. PicopassWorkerCallback callback;
  17. void* context;
  18. PicopassWorkerState state;
  19. };
  20. void picopass_worker_change_state(PicopassWorker* picopass_worker, PicopassWorkerState state);
  21. int32_t picopass_worker_task(void* context);
  22. void picopass_worker_detect(PicopassWorker* picopass_worker);
  23. void picopass_worker_write(PicopassWorker* picopass_worker);
  24. void picopass_worker_write_key(PicopassWorker* picopass_worker);
  25. void picopass_worker_emulate(PicopassWorker* picopass_worker, bool loclass_mode);