subghz_protocol_nero_sketch.h 1.6 KB

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