diff --git a/applications/main/subghz/subghz_history.c b/applications/main/subghz/subghz_history.c index 9e17a9b32..b0d8000c8 100644 --- a/applications/main/subghz/subghz_history.c +++ b/applications/main/subghz/subghz_history.c @@ -265,7 +265,6 @@ bool subghz_history_add_to_history( instance->code_last_hash_data = hash_data; instance->last_update_timestamp = furi_get_tick(); - FuriString* text = furi_string_alloc(); SubGhzHistoryItem* item = SubGhzHistoryItemArray_push_raw(instance->history->data); item->preset = malloc(sizeof(SubGhzRadioPreset)); item->type = decoder_base->protocol->type; @@ -285,6 +284,15 @@ bool subghz_history_add_to_history( item->flipper_string = flipper_format_string_alloc(); subghz_protocol_decoder_base_serialize(decoder_base, item->flipper_string, preset); + if(decoder_base->protocol && decoder_base->protocol->decoder && + decoder_base->protocol->decoder->get_string_brief) { + decoder_base->protocol->decoder->get_string_brief(decoder_base, item->item_str); + instance->last_index_write++; + return true; + } + + FuriString* text = furi_string_alloc(); + do { if(!flipper_format_rewind(item->flipper_string)) { FURI_LOG_E(TAG, "Rewind error"); diff --git a/lib/subghz/protocols/acurite_592txr.c b/lib/subghz/protocols/acurite_592txr.c index f8a2b0bf0..2d0f8828b 100644 --- a/lib/subghz/protocols/acurite_592txr.c +++ b/lib/subghz/protocols/acurite_592txr.c @@ -72,6 +72,7 @@ const SubGhzProtocolDecoder ws_protocol_acurite_592txr_decoder = { .serialize = ws_protocol_decoder_acurite_592txr_serialize, .deserialize = ws_protocol_decoder_acurite_592txr_deserialize, .get_string = ws_protocol_decoder_acurite_592txr_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_acurite_592txr_encoder = { diff --git a/lib/subghz/protocols/acurite_606tx.c b/lib/subghz/protocols/acurite_606tx.c index 209b77ace..95680495b 100644 --- a/lib/subghz/protocols/acurite_606tx.c +++ b/lib/subghz/protocols/acurite_606tx.c @@ -55,6 +55,7 @@ const SubGhzProtocolDecoder ws_protocol_acurite_606tx_decoder = { .serialize = ws_protocol_decoder_acurite_606tx_serialize, .deserialize = ws_protocol_decoder_acurite_606tx_deserialize, .get_string = ws_protocol_decoder_acurite_606tx_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_acurite_606tx_encoder = { diff --git a/lib/subghz/protocols/acurite_609txc.c b/lib/subghz/protocols/acurite_609txc.c index e885cb421..569c01dc3 100644 --- a/lib/subghz/protocols/acurite_609txc.c +++ b/lib/subghz/protocols/acurite_609txc.c @@ -56,6 +56,7 @@ const SubGhzProtocolDecoder ws_protocol_acurite_609txc_decoder = { .serialize = ws_protocol_decoder_acurite_609txc_serialize, .deserialize = ws_protocol_decoder_acurite_609txc_deserialize, .get_string = ws_protocol_decoder_acurite_609txc_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_acurite_609txc_encoder = { diff --git a/lib/subghz/protocols/acurite_986.c b/lib/subghz/protocols/acurite_986.c index 5ddab0cd7..ea58bc5e1 100644 --- a/lib/subghz/protocols/acurite_986.c +++ b/lib/subghz/protocols/acurite_986.c @@ -62,6 +62,7 @@ const SubGhzProtocolDecoder ws_protocol_acurite_986_decoder = { .serialize = ws_protocol_decoder_acurite_986_serialize, .deserialize = ws_protocol_decoder_acurite_986_deserialize, .get_string = ws_protocol_decoder_acurite_986_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_acurite_986_encoder = { diff --git a/lib/subghz/protocols/alutech_at_4n.c b/lib/subghz/protocols/alutech_at_4n.c index 8ddd8902a..b6fb8d290 100644 --- a/lib/subghz/protocols/alutech_at_4n.c +++ b/lib/subghz/protocols/alutech_at_4n.c @@ -59,6 +59,7 @@ const SubGhzProtocolDecoder subghz_protocol_alutech_at_4n_decoder = { .serialize = subghz_protocol_decoder_alutech_at_4n_serialize, .deserialize = subghz_protocol_decoder_alutech_at_4n_deserialize, .get_string = subghz_protocol_decoder_alutech_at_4n_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_alutech_at_4n_encoder = { diff --git a/lib/subghz/protocols/ambient_weather.c b/lib/subghz/protocols/ambient_weather.c index a18627404..ecf07030c 100644 --- a/lib/subghz/protocols/ambient_weather.c +++ b/lib/subghz/protocols/ambient_weather.c @@ -70,6 +70,7 @@ const SubGhzProtocolDecoder ws_protocol_ambient_weather_decoder = { .serialize = ws_protocol_decoder_ambient_weather_serialize, .deserialize = ws_protocol_decoder_ambient_weather_deserialize, .get_string = ws_protocol_decoder_ambient_weather_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_ambient_weather_encoder = { diff --git a/lib/subghz/protocols/ansonic.c b/lib/subghz/protocols/ansonic.c index 1c91815c6..df5a591dc 100644 --- a/lib/subghz/protocols/ansonic.c +++ b/lib/subghz/protocols/ansonic.c @@ -54,6 +54,7 @@ const SubGhzProtocolDecoder subghz_protocol_ansonic_decoder = { .serialize = subghz_protocol_decoder_ansonic_serialize, .deserialize = subghz_protocol_decoder_ansonic_deserialize, .get_string = subghz_protocol_decoder_ansonic_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_ansonic_encoder = { diff --git a/lib/subghz/protocols/auriol_ahfl.c b/lib/subghz/protocols/auriol_ahfl.c index 209068d8d..bc5e29269 100644 --- a/lib/subghz/protocols/auriol_ahfl.c +++ b/lib/subghz/protocols/auriol_ahfl.c @@ -67,6 +67,7 @@ const SubGhzProtocolDecoder ws_protocol_auriol_ahfl_decoder = { .serialize = ws_protocol_decoder_auriol_ahfl_serialize, .deserialize = ws_protocol_decoder_auriol_ahfl_deserialize, .get_string = ws_protocol_decoder_auriol_ahfl_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_auriol_ahfl_encoder = { diff --git a/lib/subghz/protocols/auriol_hg0601a.c b/lib/subghz/protocols/auriol_hg0601a.c index 26a51ad26..c690f5b7e 100644 --- a/lib/subghz/protocols/auriol_hg0601a.c +++ b/lib/subghz/protocols/auriol_hg0601a.c @@ -66,6 +66,7 @@ const SubGhzProtocolDecoder ws_protocol_auriol_th_decoder = { .serialize = ws_protocol_decoder_auriol_th_serialize, .deserialize = ws_protocol_decoder_auriol_th_deserialize, .get_string = ws_protocol_decoder_auriol_th_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_auriol_th_encoder = { diff --git a/lib/subghz/protocols/bett.c b/lib/subghz/protocols/bett.c index c310e78e9..7c09309b5 100644 --- a/lib/subghz/protocols/bett.c +++ b/lib/subghz/protocols/bett.c @@ -64,6 +64,7 @@ const SubGhzProtocolDecoder subghz_protocol_bett_decoder = { .serialize = subghz_protocol_decoder_bett_serialize, .deserialize = subghz_protocol_decoder_bett_deserialize, .get_string = subghz_protocol_decoder_bett_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_bett_encoder = { diff --git a/lib/subghz/protocols/bin_raw.c b/lib/subghz/protocols/bin_raw.c index d210ce37f..8b9a8821b 100644 --- a/lib/subghz/protocols/bin_raw.c +++ b/lib/subghz/protocols/bin_raw.c @@ -101,6 +101,7 @@ const SubGhzProtocolDecoder subghz_protocol_bin_raw_decoder = { .serialize = subghz_protocol_decoder_bin_raw_serialize, .deserialize = subghz_protocol_decoder_bin_raw_deserialize, .get_string = subghz_protocol_decoder_bin_raw_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_bin_raw_encoder = { diff --git a/lib/subghz/protocols/came.c b/lib/subghz/protocols/came.c index b40e2fefc..408674643 100644 --- a/lib/subghz/protocols/came.c +++ b/lib/subghz/protocols/came.c @@ -60,6 +60,7 @@ const SubGhzProtocolDecoder subghz_protocol_came_decoder = { .serialize = subghz_protocol_decoder_came_serialize, .deserialize = subghz_protocol_decoder_came_deserialize, .get_string = subghz_protocol_decoder_came_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_came_encoder = { diff --git a/lib/subghz/protocols/came_atomo.c b/lib/subghz/protocols/came_atomo.c index d7eaac809..2fa377d56 100644 --- a/lib/subghz/protocols/came_atomo.c +++ b/lib/subghz/protocols/came_atomo.c @@ -51,6 +51,7 @@ const SubGhzProtocolDecoder subghz_protocol_came_atomo_decoder = { .serialize = subghz_protocol_decoder_came_atomo_serialize, .deserialize = subghz_protocol_decoder_came_atomo_deserialize, .get_string = subghz_protocol_decoder_came_atomo_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_came_atomo_encoder = { diff --git a/lib/subghz/protocols/came_twee.c b/lib/subghz/protocols/came_twee.c index 1993e021b..39fde194b 100644 --- a/lib/subghz/protocols/came_twee.c +++ b/lib/subghz/protocols/came_twee.c @@ -82,6 +82,7 @@ const SubGhzProtocolDecoder subghz_protocol_came_twee_decoder = { .serialize = subghz_protocol_decoder_came_twee_serialize, .deserialize = subghz_protocol_decoder_came_twee_deserialize, .get_string = subghz_protocol_decoder_came_twee_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_came_twee_encoder = { diff --git a/lib/subghz/protocols/chamberlain_code.c b/lib/subghz/protocols/chamberlain_code.c index 7c200e92b..d722b4941 100644 --- a/lib/subghz/protocols/chamberlain_code.c +++ b/lib/subghz/protocols/chamberlain_code.c @@ -78,6 +78,7 @@ const SubGhzProtocolDecoder subghz_protocol_chamb_code_decoder = { .serialize = subghz_protocol_decoder_chamb_code_serialize, .deserialize = subghz_protocol_decoder_chamb_code_deserialize, .get_string = subghz_protocol_decoder_chamb_code_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_chamb_code_encoder = { diff --git a/lib/subghz/protocols/clemsa.c b/lib/subghz/protocols/clemsa.c index f3dd32b92..075c77a8b 100644 --- a/lib/subghz/protocols/clemsa.c +++ b/lib/subghz/protocols/clemsa.c @@ -63,6 +63,7 @@ const SubGhzProtocolDecoder subghz_protocol_clemsa_decoder = { .serialize = subghz_protocol_decoder_clemsa_serialize, .deserialize = subghz_protocol_decoder_clemsa_deserialize, .get_string = subghz_protocol_decoder_clemsa_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_clemsa_encoder = { diff --git a/lib/subghz/protocols/doitrand.c b/lib/subghz/protocols/doitrand.c index 8e8d73e8c..df75262ec 100644 --- a/lib/subghz/protocols/doitrand.c +++ b/lib/subghz/protocols/doitrand.c @@ -55,6 +55,7 @@ const SubGhzProtocolDecoder subghz_protocol_doitrand_decoder = { .serialize = subghz_protocol_decoder_doitrand_serialize, .deserialize = subghz_protocol_decoder_doitrand_deserialize, .get_string = subghz_protocol_decoder_doitrand_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_doitrand_encoder = { diff --git a/lib/subghz/protocols/dooya.c b/lib/subghz/protocols/dooya.c index 1c2c1d6cd..e391add89 100644 --- a/lib/subghz/protocols/dooya.c +++ b/lib/subghz/protocols/dooya.c @@ -49,6 +49,7 @@ const SubGhzProtocolDecoder subghz_protocol_dooya_decoder = { .serialize = subghz_protocol_decoder_dooya_serialize, .deserialize = subghz_protocol_decoder_dooya_deserialize, .get_string = subghz_protocol_decoder_dooya_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_dooya_encoder = { diff --git a/lib/subghz/protocols/faac_slh.c b/lib/subghz/protocols/faac_slh.c index 9a20a665d..1f577b60d 100644 --- a/lib/subghz/protocols/faac_slh.c +++ b/lib/subghz/protocols/faac_slh.c @@ -70,6 +70,7 @@ const SubGhzProtocolDecoder subghz_protocol_faac_slh_decoder = { .serialize = subghz_protocol_decoder_faac_slh_serialize, .deserialize = subghz_protocol_decoder_faac_slh_deserialize, .get_string = subghz_protocol_decoder_faac_slh_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_faac_slh_encoder = { diff --git a/lib/subghz/protocols/gate_tx.c b/lib/subghz/protocols/gate_tx.c index b85e1e1b5..b5a32781c 100644 --- a/lib/subghz/protocols/gate_tx.c +++ b/lib/subghz/protocols/gate_tx.c @@ -48,6 +48,7 @@ const SubGhzProtocolDecoder subghz_protocol_gate_tx_decoder = { .serialize = subghz_protocol_decoder_gate_tx_serialize, .deserialize = subghz_protocol_decoder_gate_tx_deserialize, .get_string = subghz_protocol_decoder_gate_tx_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_gate_tx_encoder = { diff --git a/lib/subghz/protocols/gt_wt_02.c b/lib/subghz/protocols/gt_wt_02.c index d5bfe0fc6..ef30d3ef8 100644 --- a/lib/subghz/protocols/gt_wt_02.c +++ b/lib/subghz/protocols/gt_wt_02.c @@ -69,6 +69,7 @@ const SubGhzProtocolDecoder ws_protocol_gt_wt_02_decoder = { .serialize = ws_protocol_decoder_gt_wt_02_serialize, .deserialize = ws_protocol_decoder_gt_wt_02_deserialize, .get_string = ws_protocol_decoder_gt_wt_02_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_gt_wt_02_encoder = { diff --git a/lib/subghz/protocols/gt_wt_03.c b/lib/subghz/protocols/gt_wt_03.c index 18f2e9a20..7e5160ad5 100644 --- a/lib/subghz/protocols/gt_wt_03.c +++ b/lib/subghz/protocols/gt_wt_03.c @@ -95,6 +95,7 @@ const SubGhzProtocolDecoder ws_protocol_gt_wt_03_decoder = { .serialize = ws_protocol_decoder_gt_wt_03_serialize, .deserialize = ws_protocol_decoder_gt_wt_03_deserialize, .get_string = ws_protocol_decoder_gt_wt_03_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_gt_wt_03_encoder = { diff --git a/lib/subghz/protocols/holtek.c b/lib/subghz/protocols/holtek.c index 382b607e5..8e9bf7ea9 100644 --- a/lib/subghz/protocols/holtek.c +++ b/lib/subghz/protocols/holtek.c @@ -58,6 +58,7 @@ const SubGhzProtocolDecoder subghz_protocol_holtek_decoder = { .serialize = subghz_protocol_decoder_holtek_serialize, .deserialize = subghz_protocol_decoder_holtek_deserialize, .get_string = subghz_protocol_decoder_holtek_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_holtek_encoder = { diff --git a/lib/subghz/protocols/holtek_ht12x.c b/lib/subghz/protocols/holtek_ht12x.c index 2cc8fbe43..6b39e2393 100644 --- a/lib/subghz/protocols/holtek_ht12x.c +++ b/lib/subghz/protocols/holtek_ht12x.c @@ -65,6 +65,7 @@ const SubGhzProtocolDecoder subghz_protocol_holtek_th12x_decoder = { .serialize = subghz_protocol_decoder_holtek_th12x_serialize, .deserialize = subghz_protocol_decoder_holtek_th12x_deserialize, .get_string = subghz_protocol_decoder_holtek_th12x_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_holtek_th12x_encoder = { diff --git a/lib/subghz/protocols/honeywell.c b/lib/subghz/protocols/honeywell.c index 3d0629b6f..01949b7ea 100644 --- a/lib/subghz/protocols/honeywell.c +++ b/lib/subghz/protocols/honeywell.c @@ -350,6 +350,7 @@ const SubGhzProtocolDecoder subghz_protocol_honeywell_decoder = { .serialize = subghz_protocol_decoder_honeywell_serialize, .deserialize = subghz_protocol_decoder_honeywell_deserialize, .get_string = subghz_protocol_decoder_honeywell_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_honeywell_encoder = { diff --git a/lib/subghz/protocols/honeywell_wdb.c b/lib/subghz/protocols/honeywell_wdb.c index f8345f6e1..7d7678266 100644 --- a/lib/subghz/protocols/honeywell_wdb.c +++ b/lib/subghz/protocols/honeywell_wdb.c @@ -59,6 +59,7 @@ const SubGhzProtocolDecoder subghz_protocol_honeywell_wdb_decoder = { .serialize = subghz_protocol_decoder_honeywell_wdb_serialize, .deserialize = subghz_protocol_decoder_honeywell_wdb_deserialize, .get_string = subghz_protocol_decoder_honeywell_wdb_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_honeywell_wdb_encoder = { diff --git a/lib/subghz/protocols/hormann.c b/lib/subghz/protocols/hormann.c index e0d0d0092..da23cb12b 100644 --- a/lib/subghz/protocols/hormann.c +++ b/lib/subghz/protocols/hormann.c @@ -52,6 +52,7 @@ const SubGhzProtocolDecoder subghz_protocol_hormann_decoder = { .serialize = subghz_protocol_decoder_hormann_serialize, .deserialize = subghz_protocol_decoder_hormann_deserialize, .get_string = subghz_protocol_decoder_hormann_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_hormann_encoder = { diff --git a/lib/subghz/protocols/hormann_bisecur.c b/lib/subghz/protocols/hormann_bisecur.c index e9f7301c5..54099e133 100644 --- a/lib/subghz/protocols/hormann_bisecur.c +++ b/lib/subghz/protocols/hormann_bisecur.c @@ -63,6 +63,7 @@ const SubGhzProtocolDecoder subghz_protocol_hormann_bisecur_decoder = { .serialize = subghz_protocol_decoder_hormann_bisecur_serialize, .deserialize = subghz_protocol_decoder_hormann_bisecur_deserialize, .get_string = subghz_protocol_decoder_hormann_bisecur_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_hormann_bisecur_encoder = { diff --git a/lib/subghz/protocols/ido.c b/lib/subghz/protocols/ido.c index 61dc165d1..3fcda27c7 100644 --- a/lib/subghz/protocols/ido.c +++ b/lib/subghz/protocols/ido.c @@ -48,6 +48,7 @@ const SubGhzProtocolDecoder subghz_protocol_ido_decoder = { .deserialize = subghz_protocol_decoder_ido_deserialize, .serialize = subghz_protocol_decoder_ido_serialize, .get_string = subghz_protocol_decoder_ido_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_ido_encoder = { diff --git a/lib/subghz/protocols/infactory.c b/lib/subghz/protocols/infactory.c index b540bca3e..603c229b1 100644 --- a/lib/subghz/protocols/infactory.c +++ b/lib/subghz/protocols/infactory.c @@ -80,6 +80,7 @@ const SubGhzProtocolDecoder ws_protocol_infactory_decoder = { .serialize = ws_protocol_decoder_infactory_serialize, .deserialize = ws_protocol_decoder_infactory_deserialize, .get_string = ws_protocol_decoder_infactory_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_infactory_encoder = { diff --git a/lib/subghz/protocols/intertechno_v3.c b/lib/subghz/protocols/intertechno_v3.c index e1a9630fa..1f288316c 100644 --- a/lib/subghz/protocols/intertechno_v3.c +++ b/lib/subghz/protocols/intertechno_v3.c @@ -57,6 +57,7 @@ const SubGhzProtocolDecoder subghz_protocol_intertechno_v3_decoder = { .serialize = subghz_protocol_decoder_intertechno_v3_serialize, .deserialize = subghz_protocol_decoder_intertechno_v3_deserialize, .get_string = subghz_protocol_decoder_intertechno_v3_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_intertechno_v3_encoder = { diff --git a/lib/subghz/protocols/kedsum_th.c b/lib/subghz/protocols/kedsum_th.c index 8ee1f06d3..45ebf5629 100644 --- a/lib/subghz/protocols/kedsum_th.c +++ b/lib/subghz/protocols/kedsum_th.c @@ -66,6 +66,7 @@ const SubGhzProtocolDecoder ws_protocol_kedsum_th_decoder = { .serialize = ws_protocol_decoder_kedsum_th_serialize, .deserialize = ws_protocol_decoder_kedsum_th_deserialize, .get_string = ws_protocol_decoder_kedsum_th_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_kedsum_th_encoder = { diff --git a/lib/subghz/protocols/keeloq.c b/lib/subghz/protocols/keeloq.c index 613e819e9..dccbed2ff 100644 --- a/lib/subghz/protocols/keeloq.c +++ b/lib/subghz/protocols/keeloq.c @@ -66,6 +66,7 @@ const SubGhzProtocolDecoder subghz_protocol_keeloq_decoder = { .serialize = subghz_protocol_decoder_keeloq_serialize, .deserialize = subghz_protocol_decoder_keeloq_deserialize, .get_string = subghz_protocol_decoder_keeloq_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_keeloq_encoder = { diff --git a/lib/subghz/protocols/kia.c b/lib/subghz/protocols/kia.c index 18e5fc50a..63a6036df 100644 --- a/lib/subghz/protocols/kia.c +++ b/lib/subghz/protocols/kia.c @@ -50,6 +50,7 @@ const SubGhzProtocolDecoder subghz_protocol_kia_decoder = { .serialize = subghz_protocol_decoder_kia_serialize, .deserialize = subghz_protocol_decoder_kia_deserialize, .get_string = subghz_protocol_decoder_kia_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_kia_encoder = { diff --git a/lib/subghz/protocols/kinggates_stylo_4k.c b/lib/subghz/protocols/kinggates_stylo_4k.c index a32be0692..fc7ca01fd 100644 --- a/lib/subghz/protocols/kinggates_stylo_4k.c +++ b/lib/subghz/protocols/kinggates_stylo_4k.c @@ -55,6 +55,7 @@ const SubGhzProtocolDecoder subghz_protocol_kinggates_stylo_4k_decoder = { .serialize = subghz_protocol_decoder_kinggates_stylo_4k_serialize, .deserialize = subghz_protocol_decoder_kinggates_stylo_4k_deserialize, .get_string = subghz_protocol_decoder_kinggates_stylo_4k_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_kinggates_stylo_4k_encoder = { @@ -582,4 +583,4 @@ void subghz_protocol_decoder_kinggates_stylo_4k_get_string(void* context, FuriSt instance->generic.serial, instance->generic.btn, instance->generic.cnt); -} \ No newline at end of file +} diff --git a/lib/subghz/protocols/lacrosse_tx.c b/lib/subghz/protocols/lacrosse_tx.c index 5f9328729..5027fef40 100644 --- a/lib/subghz/protocols/lacrosse_tx.c +++ b/lib/subghz/protocols/lacrosse_tx.c @@ -84,6 +84,7 @@ const SubGhzProtocolDecoder ws_protocol_lacrosse_tx_decoder = { .serialize = ws_protocol_decoder_lacrosse_tx_serialize, .deserialize = ws_protocol_decoder_lacrosse_tx_deserialize, .get_string = ws_protocol_decoder_lacrosse_tx_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_lacrosse_tx_encoder = { diff --git a/lib/subghz/protocols/lacrosse_tx141thbv2.c b/lib/subghz/protocols/lacrosse_tx141thbv2.c index 8bbf0b63a..8887bef10 100644 --- a/lib/subghz/protocols/lacrosse_tx141thbv2.c +++ b/lib/subghz/protocols/lacrosse_tx141thbv2.c @@ -62,6 +62,7 @@ const SubGhzProtocolDecoder ws_protocol_lacrosse_tx141thbv2_decoder = { .serialize = ws_protocol_decoder_lacrosse_tx141thbv2_serialize, .deserialize = ws_protocol_decoder_lacrosse_tx141thbv2_deserialize, .get_string = ws_protocol_decoder_lacrosse_tx141thbv2_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_lacrosse_tx141thbv2_encoder = { diff --git a/lib/subghz/protocols/linear.c b/lib/subghz/protocols/linear.c index 365b7af52..88cd4c550 100644 --- a/lib/subghz/protocols/linear.c +++ b/lib/subghz/protocols/linear.c @@ -54,6 +54,7 @@ const SubGhzProtocolDecoder subghz_protocol_linear_decoder = { .serialize = subghz_protocol_decoder_linear_serialize, .deserialize = subghz_protocol_decoder_linear_deserialize, .get_string = subghz_protocol_decoder_linear_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_linear_encoder = { diff --git a/lib/subghz/protocols/linear_delta3.c b/lib/subghz/protocols/linear_delta3.c index 0b4bc1e74..1316361e0 100644 --- a/lib/subghz/protocols/linear_delta3.c +++ b/lib/subghz/protocols/linear_delta3.c @@ -55,6 +55,7 @@ const SubGhzProtocolDecoder subghz_protocol_linear_delta3_decoder = { .serialize = subghz_protocol_decoder_linear_delta3_serialize, .deserialize = subghz_protocol_decoder_linear_delta3_deserialize, .get_string = subghz_protocol_decoder_linear_delta3_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_linear_delta3_encoder = { diff --git a/lib/subghz/protocols/magellan.c b/lib/subghz/protocols/magellan.c index 9e3646b77..007c84dc7 100644 --- a/lib/subghz/protocols/magellan.c +++ b/lib/subghz/protocols/magellan.c @@ -50,6 +50,7 @@ const SubGhzProtocolDecoder subghz_protocol_magellan_decoder = { .serialize = subghz_protocol_decoder_magellan_serialize, .deserialize = subghz_protocol_decoder_magellan_deserialize, .get_string = subghz_protocol_decoder_magellan_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_magellan_encoder = { diff --git a/lib/subghz/protocols/marantec.c b/lib/subghz/protocols/marantec.c index 06709712e..337602fd5 100644 --- a/lib/subghz/protocols/marantec.c +++ b/lib/subghz/protocols/marantec.c @@ -50,6 +50,7 @@ const SubGhzProtocolDecoder subghz_protocol_marantec_decoder = { .serialize = subghz_protocol_decoder_marantec_serialize, .deserialize = subghz_protocol_decoder_marantec_deserialize, .get_string = subghz_protocol_decoder_marantec_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_marantec_encoder = { diff --git a/lib/subghz/protocols/mastercode.c b/lib/subghz/protocols/mastercode.c index 425441f66..15005c218 100644 --- a/lib/subghz/protocols/mastercode.c +++ b/lib/subghz/protocols/mastercode.c @@ -62,6 +62,7 @@ const SubGhzProtocolDecoder subghz_protocol_mastercode_decoder = { .serialize = subghz_protocol_decoder_mastercode_serialize, .deserialize = subghz_protocol_decoder_mastercode_deserialize, .get_string = subghz_protocol_decoder_mastercode_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_mastercode_encoder = { diff --git a/lib/subghz/protocols/megacode.c b/lib/subghz/protocols/megacode.c index d2d37aacf..9d5b1dcdb 100644 --- a/lib/subghz/protocols/megacode.c +++ b/lib/subghz/protocols/megacode.c @@ -60,6 +60,7 @@ const SubGhzProtocolDecoder subghz_protocol_megacode_decoder = { .serialize = subghz_protocol_decoder_megacode_serialize, .deserialize = subghz_protocol_decoder_megacode_deserialize, .get_string = subghz_protocol_decoder_megacode_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_megacode_encoder = { diff --git a/lib/subghz/protocols/nero_radio.c b/lib/subghz/protocols/nero_radio.c index c64d20877..94373f2df 100644 --- a/lib/subghz/protocols/nero_radio.c +++ b/lib/subghz/protocols/nero_radio.c @@ -50,6 +50,7 @@ const SubGhzProtocolDecoder subghz_protocol_nero_radio_decoder = { .serialize = subghz_protocol_decoder_nero_radio_serialize, .deserialize = subghz_protocol_decoder_nero_radio_deserialize, .get_string = subghz_protocol_decoder_nero_radio_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_nero_radio_encoder = { diff --git a/lib/subghz/protocols/nero_sketch.c b/lib/subghz/protocols/nero_sketch.c index 9155f5f24..2a405caf8 100644 --- a/lib/subghz/protocols/nero_sketch.c +++ b/lib/subghz/protocols/nero_sketch.c @@ -49,6 +49,7 @@ const SubGhzProtocolDecoder subghz_protocol_nero_sketch_decoder = { .serialize = subghz_protocol_decoder_nero_sketch_serialize, .deserialize = subghz_protocol_decoder_nero_sketch_deserialize, .get_string = subghz_protocol_decoder_nero_sketch_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_nero_sketch_encoder = { diff --git a/lib/subghz/protocols/nexus_th.c b/lib/subghz/protocols/nexus_th.c index 08187789a..4eb0c1b1a 100644 --- a/lib/subghz/protocols/nexus_th.c +++ b/lib/subghz/protocols/nexus_th.c @@ -345,6 +345,7 @@ const SubGhzProtocolDecoder ws_protocol_nexus_th_decoder = { .serialize = ws_protocol_decoder_nexus_th_serialize, .deserialize = ws_protocol_decoder_nexus_th_deserialize, .get_string = ws_protocol_decoder_nexus_th_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_nexus_th_encoder = { diff --git a/lib/subghz/protocols/nice_flo.c b/lib/subghz/protocols/nice_flo.c index ac2f1e41e..371c96011 100644 --- a/lib/subghz/protocols/nice_flo.c +++ b/lib/subghz/protocols/nice_flo.c @@ -47,6 +47,7 @@ const SubGhzProtocolDecoder subghz_protocol_nice_flo_decoder = { .serialize = subghz_protocol_decoder_nice_flo_serialize, .deserialize = subghz_protocol_decoder_nice_flo_deserialize, .get_string = subghz_protocol_decoder_nice_flo_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_nice_flo_encoder = { diff --git a/lib/subghz/protocols/nice_flor_s.c b/lib/subghz/protocols/nice_flor_s.c index 2c8a3560f..e57f0466e 100644 --- a/lib/subghz/protocols/nice_flor_s.c +++ b/lib/subghz/protocols/nice_flor_s.c @@ -65,6 +65,7 @@ const SubGhzProtocolDecoder subghz_protocol_nice_flor_s_decoder = { .serialize = subghz_protocol_decoder_nice_flor_s_serialize, .deserialize = subghz_protocol_decoder_nice_flor_s_deserialize, .get_string = subghz_protocol_decoder_nice_flor_s_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_nice_flor_s_encoder = { diff --git a/lib/subghz/protocols/oregon2.c b/lib/subghz/protocols/oregon2.c index af92ab63d..1e3a83a45 100644 --- a/lib/subghz/protocols/oregon2.c +++ b/lib/subghz/protocols/oregon2.c @@ -419,6 +419,7 @@ const SubGhzProtocolDecoder ws_protocol_oregon2_decoder = { .serialize = ws_protocol_decoder_oregon2_serialize, .deserialize = ws_protocol_decoder_oregon2_deserialize, .get_string = ws_protocol_decoder_oregon2_get_string, + .get_string_brief = NULL, }; const SubGhzProtocol ws_protocol_oregon2 = { diff --git a/lib/subghz/protocols/oregon3.c b/lib/subghz/protocols/oregon3.c index 8d5a4a35d..3688ecaf8 100644 --- a/lib/subghz/protocols/oregon3.c +++ b/lib/subghz/protocols/oregon3.c @@ -355,6 +355,7 @@ const SubGhzProtocolDecoder ws_protocol_oregon3_decoder = { .serialize = ws_protocol_decoder_oregon3_serialize, .deserialize = ws_protocol_decoder_oregon3_deserialize, .get_string = ws_protocol_decoder_oregon3_get_string, + .get_string_brief = NULL, }; const SubGhzProtocol ws_protocol_oregon3 = { diff --git a/lib/subghz/protocols/oregon_v1.c b/lib/subghz/protocols/oregon_v1.c index 65d6d7bb3..87a3f0216 100644 --- a/lib/subghz/protocols/oregon_v1.c +++ b/lib/subghz/protocols/oregon_v1.c @@ -81,6 +81,7 @@ const SubGhzProtocolDecoder ws_protocol_oregon_v1_decoder = { .serialize = ws_protocol_decoder_oregon_v1_serialize, .deserialize = ws_protocol_decoder_oregon_v1_deserialize, .get_string = ws_protocol_decoder_oregon_v1_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_oregon_v1_encoder = { diff --git a/lib/subghz/protocols/phoenix_v2.c b/lib/subghz/protocols/phoenix_v2.c index 33019dd16..1ec10a418 100644 --- a/lib/subghz/protocols/phoenix_v2.c +++ b/lib/subghz/protocols/phoenix_v2.c @@ -50,6 +50,7 @@ const SubGhzProtocolDecoder subghz_protocol_phoenix_v2_decoder = { .serialize = subghz_protocol_decoder_phoenix_v2_serialize, .deserialize = subghz_protocol_decoder_phoenix_v2_deserialize, .get_string = subghz_protocol_decoder_phoenix_v2_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_phoenix_v2_encoder = { diff --git a/lib/subghz/protocols/pocsag.c b/lib/subghz/protocols/pocsag.c index 0fa2c89d8..0eaca9e9c 100644 --- a/lib/subghz/protocols/pocsag.c +++ b/lib/subghz/protocols/pocsag.c @@ -425,6 +425,7 @@ const SubGhzProtocolDecoder subghz_protocol_pocsag_decoder = { .serialize = subghz_protocol_decoder_pocsag_serialize, .deserialize = subghz_protocol_decoder_pocsag_deserialize, .get_string = subhz_protocol_decoder_pocsag_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_pocsag_encoder = { diff --git a/lib/subghz/protocols/power_smart.c b/lib/subghz/protocols/power_smart.c index 256118b05..34f579834 100644 --- a/lib/subghz/protocols/power_smart.c +++ b/lib/subghz/protocols/power_smart.c @@ -57,6 +57,7 @@ const SubGhzProtocolDecoder subghz_protocol_power_smart_decoder = { .serialize = subghz_protocol_decoder_power_smart_serialize, .deserialize = subghz_protocol_decoder_power_smart_deserialize, .get_string = subghz_protocol_decoder_power_smart_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_power_smart_encoder = { diff --git a/lib/subghz/protocols/princeton.c b/lib/subghz/protocols/princeton.c index 01c69b1f2..9616af260 100644 --- a/lib/subghz/protocols/princeton.c +++ b/lib/subghz/protocols/princeton.c @@ -58,6 +58,7 @@ const SubGhzProtocolDecoder subghz_protocol_princeton_decoder = { .serialize = subghz_protocol_decoder_princeton_serialize, .deserialize = subghz_protocol_decoder_princeton_deserialize, .get_string = subghz_protocol_decoder_princeton_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_princeton_encoder = { diff --git a/lib/subghz/protocols/raw.c b/lib/subghz/protocols/raw.c index 876c54c97..9b08f74e7 100644 --- a/lib/subghz/protocols/raw.c +++ b/lib/subghz/protocols/raw.c @@ -62,6 +62,7 @@ const SubGhzProtocolDecoder subghz_protocol_raw_decoder = { .serialize = NULL, .deserialize = subghz_protocol_decoder_raw_deserialize, .get_string = subghz_protocol_decoder_raw_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_raw_encoder = { diff --git a/lib/subghz/protocols/scher_khan.c b/lib/subghz/protocols/scher_khan.c index 1c91502ab..9734e2434 100644 --- a/lib/subghz/protocols/scher_khan.c +++ b/lib/subghz/protocols/scher_khan.c @@ -56,6 +56,7 @@ const SubGhzProtocolDecoder subghz_protocol_scher_khan_decoder = { .serialize = subghz_protocol_decoder_scher_khan_serialize, .deserialize = subghz_protocol_decoder_scher_khan_deserialize, .get_string = subghz_protocol_decoder_scher_khan_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_scher_khan_encoder = { diff --git a/lib/subghz/protocols/schrader_gg4.c b/lib/subghz/protocols/schrader_gg4.c index 963193589..5c31a0164 100644 --- a/lib/subghz/protocols/schrader_gg4.c +++ b/lib/subghz/protocols/schrader_gg4.c @@ -87,6 +87,7 @@ const SubGhzProtocolDecoder tpms_protocol_schrader_gg4_decoder = { .serialize = tpms_protocol_decoder_schrader_gg4_serialize, .deserialize = tpms_protocol_decoder_schrader_gg4_deserialize, .get_string = tpms_protocol_decoder_schrader_gg4_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder tpms_protocol_schrader_gg4_encoder = { diff --git a/lib/subghz/protocols/secplus_v1.c b/lib/subghz/protocols/secplus_v1.c index a1f049caa..2e06e70ac 100644 --- a/lib/subghz/protocols/secplus_v1.c +++ b/lib/subghz/protocols/secplus_v1.c @@ -71,6 +71,7 @@ const SubGhzProtocolDecoder subghz_protocol_secplus_v1_decoder = { .serialize = subghz_protocol_decoder_secplus_v1_serialize, .deserialize = subghz_protocol_decoder_secplus_v1_deserialize, .get_string = subghz_protocol_decoder_secplus_v1_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_secplus_v1_encoder = { diff --git a/lib/subghz/protocols/secplus_v2.c b/lib/subghz/protocols/secplus_v2.c index 865385c0b..7ec9977f8 100644 --- a/lib/subghz/protocols/secplus_v2.c +++ b/lib/subghz/protocols/secplus_v2.c @@ -65,6 +65,7 @@ const SubGhzProtocolDecoder subghz_protocol_secplus_v2_decoder = { .serialize = subghz_protocol_decoder_secplus_v2_serialize, .deserialize = subghz_protocol_decoder_secplus_v2_deserialize, .get_string = subghz_protocol_decoder_secplus_v2_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_secplus_v2_encoder = { diff --git a/lib/subghz/protocols/smc5326.c b/lib/subghz/protocols/smc5326.c index 984f791fa..757f48fe3 100644 --- a/lib/subghz/protocols/smc5326.c +++ b/lib/subghz/protocols/smc5326.c @@ -73,6 +73,7 @@ const SubGhzProtocolDecoder subghz_protocol_smc5326_decoder = { .serialize = subghz_protocol_decoder_smc5326_serialize, .deserialize = subghz_protocol_decoder_smc5326_deserialize, .get_string = subghz_protocol_decoder_smc5326_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_smc5326_encoder = { diff --git a/lib/subghz/protocols/somfy_keytis.c b/lib/subghz/protocols/somfy_keytis.c index 6eeef77c6..05a01c32f 100644 --- a/lib/subghz/protocols/somfy_keytis.c +++ b/lib/subghz/protocols/somfy_keytis.c @@ -54,6 +54,7 @@ const SubGhzProtocolDecoder subghz_protocol_somfy_keytis_decoder = { .serialize = subghz_protocol_decoder_somfy_keytis_serialize, .deserialize = subghz_protocol_decoder_somfy_keytis_deserialize, .get_string = subghz_protocol_decoder_somfy_keytis_get_string, + .get_string_brief = NULL, }; const SubGhzProtocol subghz_protocol_somfy_keytis = { diff --git a/lib/subghz/protocols/somfy_telis.c b/lib/subghz/protocols/somfy_telis.c index e4324778f..39859092d 100644 --- a/lib/subghz/protocols/somfy_telis.c +++ b/lib/subghz/protocols/somfy_telis.c @@ -55,6 +55,7 @@ const SubGhzProtocolDecoder subghz_protocol_somfy_telis_decoder = { .serialize = subghz_protocol_decoder_somfy_telis_serialize, .deserialize = subghz_protocol_decoder_somfy_telis_deserialize, .get_string = subghz_protocol_decoder_somfy_telis_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_somfy_telis_encoder = { diff --git a/lib/subghz/protocols/star_line.c b/lib/subghz/protocols/star_line.c index f48359c9e..ade320e6a 100644 --- a/lib/subghz/protocols/star_line.c +++ b/lib/subghz/protocols/star_line.c @@ -65,6 +65,7 @@ const SubGhzProtocolDecoder subghz_protocol_star_line_decoder = { .serialize = subghz_protocol_decoder_star_line_serialize, .deserialize = subghz_protocol_decoder_star_line_deserialize, .get_string = subghz_protocol_decoder_star_line_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_star_line_encoder = { diff --git a/lib/subghz/protocols/thermopro_tx4.c b/lib/subghz/protocols/thermopro_tx4.c index 7e34dda91..9ca5c33ee 100644 --- a/lib/subghz/protocols/thermopro_tx4.c +++ b/lib/subghz/protocols/thermopro_tx4.c @@ -65,6 +65,7 @@ const SubGhzProtocolDecoder ws_protocol_thermopro_tx4_decoder = { .serialize = ws_protocol_decoder_thermopro_tx4_serialize, .deserialize = ws_protocol_decoder_thermopro_tx4_deserialize, .get_string = ws_protocol_decoder_thermopro_tx4_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_thermopro_tx4_encoder = { diff --git a/lib/subghz/protocols/tx_8300.c b/lib/subghz/protocols/tx_8300.c index 012153c33..811c1243c 100644 --- a/lib/subghz/protocols/tx_8300.c +++ b/lib/subghz/protocols/tx_8300.c @@ -76,6 +76,7 @@ const SubGhzProtocolDecoder ws_protocol_tx_8300_decoder = { .serialize = ws_protocol_decoder_tx_8300_serialize, .deserialize = ws_protocol_decoder_tx_8300_deserialize, .get_string = ws_protocol_decoder_tx_8300_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_tx_8300_encoder = { diff --git a/lib/subghz/protocols/wendox_w6726.c b/lib/subghz/protocols/wendox_w6726.c index 54160853b..13fe8138e 100644 --- a/lib/subghz/protocols/wendox_w6726.c +++ b/lib/subghz/protocols/wendox_w6726.c @@ -70,6 +70,7 @@ const SubGhzProtocolDecoder ws_protocol_wendox_w6726_decoder = { .serialize = ws_protocol_decoder_wendox_w6726_serialize, .deserialize = ws_protocol_decoder_wendox_w6726_deserialize, .get_string = ws_protocol_decoder_wendox_w6726_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder ws_protocol_wendox_w6726_encoder = { diff --git a/lib/subghz/protocols/x10.c b/lib/subghz/protocols/x10.c index a4a385be7..905e9ac28 100644 --- a/lib/subghz/protocols/x10.c +++ b/lib/subghz/protocols/x10.c @@ -76,6 +76,7 @@ const SubGhzProtocolDecoder subghz_protocol_x10_decoder = { .serialize = subghz_protocol_decoder_x10_serialize, .deserialize = subghz_protocol_decoder_x10_deserialize, .get_string = subghz_protocol_decoder_x10_get_string, + .get_string_brief = NULL, }; const SubGhzProtocolEncoder subghz_protocol_x10_encoder = { diff --git a/lib/subghz/types.h b/lib/subghz/types.h index 0a50ab5b3..896839e13 100644 --- a/lib/subghz/types.h +++ b/lib/subghz/types.h @@ -81,6 +81,7 @@ typedef void (*SubGhzDecoderReset)(void* decoder); typedef uint8_t (*SubGhzGetHashData)(void* decoder); typedef uint32_t (*SubGhzGetHashDataLong)(void* decoder); typedef void (*SubGhzGetString)(void* decoder, FuriString* output); +typedef void (*SubGhzGetStringBrief)(void* decoder, FuriString* output); // Encoder specific typedef void (*SubGhzEncoderStop)(void* encoder); @@ -99,6 +100,7 @@ typedef struct { SubGhzDeserialize deserialize; SubGhzGetHashDataLong get_hash_data_long; + SubGhzGetStringBrief get_string_brief; } SubGhzProtocolDecoder; typedef struct {