hardware_worker.h 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  1. #pragma once
  2. #include <stdint.h>
  3. #include <stdbool.h>
  4. #if defined(RFID_125_PROTOCOL)
  5. #include <lib/lfrfid/lfrfid_dict_file.h>
  6. typedef ProtocolId HwProtocolID;
  7. #else
  8. #include <lib/ibutton/protocols/protocol_common.h>
  9. typedef iButtonProtocolId HwProtocolID;
  10. #endif
  11. typedef struct HardwareWorker HardwareWorker;
  12. HardwareWorker* hardware_worker_alloc();
  13. void hardware_worker_free(HardwareWorker* instance);
  14. void hardware_worker_start_thread(HardwareWorker* instance);
  15. void hardware_worker_stop_thread(HardwareWorker* instance);
  16. void hardware_worker_emulate_start(HardwareWorker* instance);
  17. void hardware_worker_stop(HardwareWorker* instance);
  18. void hardware_worker_set_protocol_data(
  19. HardwareWorker* instance,
  20. uint8_t* payload,
  21. uint8_t payload_size);
  22. void hardware_worker_get_protocol_data(
  23. HardwareWorker* instance,
  24. uint8_t* payload,
  25. uint8_t payload_size);
  26. bool hardware_worker_set_protocol_id_by_name(HardwareWorker* instance, const char* protocol_name);
  27. HwProtocolID hardware_worker_get_protocol_id(HardwareWorker* instance);
  28. bool hardware_worker_load_key_from_file(HardwareWorker* instance, const char* filename);
  29. bool hardware_worker_save_key(HardwareWorker* instance, const char* path);