subghz_protocol_somfy_keytis.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. #pragma once
  2. #include "subghz_protocol_common.h"
  3. typedef struct SubGhzProtocolSomfyKeytis SubGhzProtocolSomfyKeytis;
  4. /** Allocate SubGhzProtocolSomfyKeytis
  5. *
  6. * @return SubGhzProtocolSomfyKeytis*
  7. */
  8. SubGhzProtocolSomfyKeytis* subghz_protocol_somfy_keytis_alloc();
  9. /** Free SubGhzProtocolSomfyKeytis
  10. *
  11. * @param instance
  12. */
  13. void subghz_protocol_somfy_keytis_free(SubGhzProtocolSomfyKeytis* instance);
  14. uint32_t subghz_protocol_somfy_keytis_get_press_duration(void* context);
  15. /** Reset internal state
  16. * @param instance - SubGhzProtocolSomfyKeytis instance
  17. */
  18. void subghz_protocol_somfy_keytis_reset(SubGhzProtocolSomfyKeytis* instance);
  19. /** Parse accepted duration
  20. *
  21. * @param instance - SubGhzProtocolSomfyKeytis instance
  22. * @param data - LevelDuration level_duration
  23. */
  24. void subghz_protocol_somfy_keytis_parse(
  25. SubGhzProtocolSomfyKeytis* instance,
  26. bool level,
  27. uint32_t duration);
  28. /** Outputting information from the parser
  29. *
  30. * @param instance - SubGhzProtocolSomfyKeytis* instance
  31. * @param output - output string
  32. */
  33. void subghz_protocol_somfy_keytis_to_str(SubGhzProtocolSomfyKeytis* instance, string_t output);
  34. /** Loading protocol from bin data
  35. *
  36. * @param instance - SubGhzProtocolSomfyKeytis instance
  37. * @param context - SubGhzProtocolCommonLoad context
  38. */
  39. void subghz_decoder_somfy_keytis_to_load_protocol(
  40. SubGhzProtocolSomfyKeytis* instance,
  41. void* context);