subbrute_worker.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. #pragma once
  2. #include <furi_hal_subghz.h>
  3. typedef struct SubBruteWorker SubBruteWorker;
  4. /**
  5. * Same like SubGhzTxRxWorkerStatus in subghz_tx_rx_worker.h
  6. * using just to not include that file
  7. typedef enum {
  8. SubBruteWorkerStatusIDLE,
  9. SubBruteWorkerStatusTx,
  10. // SubBruteWorkerStatusRx,
  11. } SubBruteWorkerStatus;
  12. //typedef void (*SubBruteWorkerCallback)(SubBruteWorkerStatus event, void* context);
  13. */
  14. SubBruteWorker* subbrute_worker_alloc();
  15. void subbrute_worker_free(SubBruteWorker* instance);
  16. bool subbrute_worker_start(
  17. SubBruteWorker* instance,
  18. uint32_t frequency,
  19. FuriHalSubGhzPreset preset,
  20. const char* protocol_name);
  21. void subbrute_worker_stop(SubBruteWorker* instance);
  22. bool subbrute_worker_get_continuous_worker(SubBruteWorker* instance);
  23. void subbrute_worker_set_continuous_worker(SubBruteWorker* instance, bool is_continuous_worker);
  24. //bool subbrute_worker_write(SubBruteWorker* instance, uint8_t* data, size_t size);
  25. bool subbrute_worker_is_running(SubBruteWorker* instance);
  26. bool subbrute_worker_can_transmit(SubBruteWorker* instance);
  27. bool subbrute_worker_can_manual_transmit(SubBruteWorker* instance, bool is_button_pressed);
  28. bool subbrute_worker_transmit(SubBruteWorker* instance, const char* payload);
  29. bool subbrute_worker_init_manual_transmit(
  30. SubBruteWorker* instance,
  31. uint32_t frequency,
  32. FuriHalSubGhzPreset preset,
  33. const char* protocol_name);
  34. bool subbrute_worker_manual_transmit(SubBruteWorker* instance, const char* payload);
  35. void subbrute_worker_manual_transmit_stop(SubBruteWorker* instance);