subghz_protocol_came.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
  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 - SubGhzProtocolCommonEncoder encoder
  18. * @return bool
  19. */
  20. bool subghz_protocol_came_send_key(SubGhzProtocolCame* instance, SubGhzProtocolCommonEncoder* 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_from_file(FileWorker* file_worker, SubGhzProtocolCame* instance);
  39. void subghz_decoder_came_to_load_protocol(SubGhzProtocolCame* instance, void* context);