subghz_protocol_came.h 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. #pragma once
  2. #include "subghz_protocol_common.h"
  3. typedef struct SubGhzProtocolCame SubGhzProtocolCame;
  4. /** Allocate SubGhzProtocolCame
  5. *
  6. * @return SubGhzProtocolCame*
  7. */
  8. SubGhzProtocolCame* subghz_protocol_came_alloc();
  9. /** Free SubGhzProtocolCame
  10. *
  11. * @param instance
  12. */
  13. void subghz_protocol_came_free(SubGhzProtocolCame* instance);
  14. /** Get upload protocol
  15. *
  16. * @param instance - SubGhzProtocolCame instance
  17. * @param encoder - SubGhzProtocolEncoderCommon encoder
  18. * @return bool
  19. */
  20. bool subghz_protocol_came_send_key(SubGhzProtocolCame* instance, SubGhzProtocolEncoderCommon* encoder);
  21. /** Reset internal state
  22. * @param instance - SubGhzProtocolCame instance
  23. */
  24. void subghz_protocol_came_reset(SubGhzProtocolCame* instance);
  25. /** Parse accepted duration
  26. *
  27. * @param instance - SubGhzProtocolCame instance
  28. * @param data - LevelDuration level_duration
  29. */
  30. void subghz_protocol_came_parse(SubGhzProtocolCame* instance, bool level, uint32_t duration);
  31. /** Outputting information from the parser
  32. *
  33. * @param instance - SubGhzProtocolCame* instance
  34. * @param output - output string
  35. */
  36. void subghz_protocol_came_to_str(SubGhzProtocolCame* instance, string_t output);
  37. void subghz_protocol_came_to_save_str(SubGhzProtocolCame* instance, string_t output);
  38. bool subghz_protocol_came_to_load_protocol(FileWorker* file_worker, SubGhzProtocolCame* instance);