subghz_chat.h 1.1 KB

1234567891011121314151617181920212223242526272829
  1. #pragma once
  2. #include "../subghz_i.h"
  3. typedef struct SubGhzChatWorker SubGhzChatWorker;
  4. typedef enum {
  5. SubGhzChatEventNoEvent,
  6. SubGhzChatEventUserEntrance,
  7. SubGhzChatEventUserExit,
  8. SubGhzChatEventInputData,
  9. SubGhzChatEventRXData,
  10. SubGhzChatEventNewMessage,
  11. } SubGhzChatEventType;
  12. typedef struct {
  13. SubGhzChatEventType event;
  14. char c;
  15. } SubGhzChatEvent;
  16. SubGhzChatWorker* subghz_chat_worker_alloc();
  17. void subghz_chat_worker_free(SubGhzChatWorker* instance);
  18. bool subghz_chat_worker_start(SubGhzChatWorker* instance, uint32_t frequency);
  19. void subghz_chat_worker_stop(SubGhzChatWorker* instance);
  20. bool subghz_chat_worker_is_running(SubGhzChatWorker* instance);
  21. SubGhzChatEvent subghz_chat_worker_get_event_chat(SubGhzChatWorker* instance);
  22. void subghz_chat_worker_put_event_chat(SubGhzChatWorker* instance, SubGhzChatEvent* event);
  23. size_t subghz_chat_worker_available(SubGhzChatWorker* instance);
  24. size_t subghz_chat_worker_read(SubGhzChatWorker* instance, uint8_t* data, size_t size);
  25. bool subghz_chat_worker_write(SubGhzChatWorker* instance, uint8_t* data, size_t size);