#pragma once #include "subghz_protocol_common.h" typedef struct SubGhzProtocolFaacSLH SubGhzProtocolFaacSLH; /** Allocate SubGhzProtocolFaacSLH * * @return SubGhzProtocolFaacSLH* */ SubGhzProtocolFaacSLH* subghz_protocol_faac_slh_alloc(); /** Free SubGhzProtocolFaacSLH * * @param instance */ void subghz_protocol_faac_slh_free(SubGhzProtocolFaacSLH* instance); /** Sends the key on the air * * @param instance - SubGhzProtocolFaacSLH instance * @param key - key send * @param bit - count bit key * @param repeat - repeat send key */ void subghz_protocol_faac_slh_send_key( SubGhzProtocolFaacSLH* instance, uint64_t key, uint8_t bit, uint8_t repeat); /** Reset internal state * @param instance - SubGhzProtocolFaacSLH instance */ void subghz_protocol_faac_slh_reset(SubGhzProtocolFaacSLH* instance); /** Analysis of received data * * @param instance SubGhzProtocolFaacSLH instance */ void subghz_protocol_faac_slh_check_remote_controller(SubGhzProtocolFaacSLH* instance); /** Parse accepted duration * * @param instance - SubGhzProtocolFaacSLH instance * @param data - LevelDuration level_duration */ void subghz_protocol_faac_slh_parse(SubGhzProtocolFaacSLH* instance, bool level, uint32_t duration); /** Outputting information from the parser * * @param instance - SubGhzProtocolFaacSLH* instance * @param output - output string */ void subghz_protocol_faac_slh_to_str(SubGhzProtocolFaacSLH* instance, string_t output); /** Loading protocol from bin data * * @param instance - SubGhzProtocolFaacSLH instance * @param context - SubGhzProtocolCommonLoad context */ void subghz_decoder_faac_slh_to_load_protocol(SubGhzProtocolFaacSLH* instance, void* context);