Loading...
Searching...
No Matches
legrand.h
1#pragma once
2
3#include "base.h"
4
5#define SUBGHZ_PROTOCOL_LEGRAND_NAME "Legrand"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
13
14extern const SubGhzProtocolDecoder subghz_protocol_legrand_decoder;
15extern const SubGhzProtocolEncoder subghz_protocol_legrand_encoder;
16extern const SubGhzProtocol subghz_protocol_legrand;
17
23void* subghz_protocol_encoder_legrand_alloc(SubGhzEnvironment* environment);
24
29void subghz_protocol_encoder_legrand_free(void* context);
30
37SubGhzProtocolStatus
38 subghz_protocol_encoder_legrand_deserialize(void* context, FlipperFormat* flipper_format);
39
44void subghz_protocol_encoder_legrand_stop(void* context);
45
51LevelDuration subghz_protocol_encoder_legrand_yield(void* context);
52
58void* subghz_protocol_decoder_legrand_alloc(SubGhzEnvironment* environment);
59
64void subghz_protocol_decoder_legrand_free(void* context);
65
70void subghz_protocol_decoder_legrand_reset(void* context);
71
78void subghz_protocol_decoder_legrand_feed(void* context, bool level, uint32_t duration);
79
85uint8_t subghz_protocol_decoder_legrand_get_hash_data(void* context);
86
94SubGhzProtocolStatus subghz_protocol_decoder_legrand_serialize(
95 void* context,
96 FlipperFormat* flipper_format,
97 SubGhzRadioPreset* preset);
98
105SubGhzProtocolStatus
106 subghz_protocol_decoder_legrand_deserialize(void* context, FlipperFormat* flipper_format);
107
113void subghz_protocol_decoder_legrand_get_string(void* context, FuriString* output);
114
115#ifdef __cplusplus
116}
117#endif
Definition flipper_format.c:17
Definition string.c:4
Definition level_duration.h:15
Definition environment.c:4
Definition types.h:84
Definition legrand.c:18
Definition types.h:97
Definition legrand.c:28
Definition types.h:129
Definition types.h:35