gate_tx.h 1.4 KB

123456789101112131415161718192021222324252627282930
  1. #pragma once
  2. #include "base.h"
  3. #define SUBGHZ_PROTOCOL_GATE_TX_NAME "GateTX"
  4. typedef struct SubGhzProtocolDecoderGateTx SubGhzProtocolDecoderGateTx;
  5. typedef struct SubGhzProtocolEncoderGateTx SubGhzProtocolEncoderGateTx;
  6. extern const SubGhzProtocolDecoder subghz_protocol_gate_tx_decoder;
  7. extern const SubGhzProtocolEncoder subghz_protocol_gate_tx_encoder;
  8. extern const SubGhzProtocol subghz_protocol_gate_tx;
  9. void* subghz_protocol_encoder_gate_tx_alloc(SubGhzEnvironment* environment);
  10. void subghz_protocol_encoder_gate_tx_free(void* context);
  11. bool subghz_protocol_encoder_gate_tx_deserialize(void* context, FlipperFormat* flipper_format);
  12. void subghz_protocol_encoder_gate_tx_stop(void* context);
  13. LevelDuration subghz_protocol_encoder_gate_tx_yield(void* context);
  14. void* subghz_protocol_decoder_gate_tx_alloc(SubGhzEnvironment* environment);
  15. void subghz_protocol_decoder_gate_tx_free(void* context);
  16. void subghz_protocol_decoder_gate_tx_reset(void* context);
  17. void subghz_protocol_decoder_gate_tx_feed(void* context, bool level, uint32_t duration);
  18. uint8_t subghz_protocol_decoder_gate_tx_get_hash_data(void* context);
  19. bool subghz_protocol_decoder_gate_tx_serialize(
  20. void* context,
  21. FlipperFormat* flipper_format,
  22. uint32_t frequency,
  23. FuriHalSubGhzPreset preset);
  24. bool subghz_protocol_decoder_gate_tx_deserialize(void* context, FlipperFormat* flipper_format);
  25. void subghz_protocol_decoder_gate_tx_get_string(void* context, string_t output);