#pragma once #include "subrem_types.h" #include "txrx/subghz_txrx.h" #include #include typedef struct { FuriString* name; uint32_t frequency; // size_t preset_index; // Need for custom preset } FreqPreset; // Sub File preset typedef struct { FlipperFormat* fff_data; FreqPreset freq_preset; FuriString* file_path; FuriString* protocaol_name; FuriString* label; SubGhzProtocolType type; SubRemLoadSubState load_state; } SubRemSubFilePreset; typedef struct { SubRemSubFilePreset* subs_preset[SubRemSubKeyNameMaxCount]; } SubRemMapPreset; SubRemSubFilePreset* subrem_sub_file_preset_alloc(); void subrem_sub_file_preset_free(SubRemSubFilePreset* sub_preset); void subrem_sub_file_preset_reset(SubRemSubFilePreset* sub_preset); SubRemLoadSubState subrem_sub_preset_load( SubRemSubFilePreset* sub_preset, SubGhzTxRx* txrx, FlipperFormat* fff_data_file);