subghz_protocol_faac_slh.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #pragma once
  2. #include "subghz_protocol_common.h"
  3. typedef struct SubGhzProtocolFaacSLH SubGhzProtocolFaacSLH;
  4. /** Allocate SubGhzProtocolFaacSLH
  5. *
  6. * @return SubGhzProtocolFaacSLH*
  7. */
  8. SubGhzProtocolFaacSLH* subghz_protocol_faac_slh_alloc();
  9. /** Free SubGhzProtocolFaacSLH
  10. *
  11. * @param instance
  12. */
  13. void subghz_protocol_faac_slh_free(SubGhzProtocolFaacSLH* instance);
  14. /** Sends the key on the air
  15. *
  16. * @param instance - SubGhzProtocolFaacSLH instance
  17. * @param key - key send
  18. * @param bit - count bit key
  19. * @param repeat - repeat send key
  20. */
  21. void subghz_protocol_faac_slh_send_key(SubGhzProtocolFaacSLH* instance, uint64_t key, uint8_t bit, uint8_t repeat);
  22. /** Reset internal state
  23. * @param instance - SubGhzProtocolFaacSLH instance
  24. */
  25. void subghz_protocol_faac_slh_reset(SubGhzProtocolFaacSLH* instance);
  26. /** Analysis of received data
  27. *
  28. * @param instance SubGhzProtocolFaacSLH instance
  29. */
  30. void subghz_protocol_faac_slh_check_remote_controller(SubGhzProtocolFaacSLH* instance);
  31. /** Parse accepted duration
  32. *
  33. * @param instance - SubGhzProtocolFaacSLH instance
  34. * @param data - LevelDuration level_duration
  35. */
  36. void subghz_protocol_faac_slh_parse(SubGhzProtocolFaacSLH* instance, bool level, uint32_t duration);
  37. /** Outputting information from the parser
  38. *
  39. * @param instance - SubGhzProtocolFaacSLH* instance
  40. * @param output - output string
  41. */
  42. void subghz_protocol_faac_slh_to_str(SubGhzProtocolFaacSLH* instance, string_t output);