663dbbfe9f
* SubGhz: fix assert on worker double stop. * SubGhz: add hopping mode (315.00, 433.92, 868.00) * SubGhz: add support for new alarms on the keelog protocol * SubGhz: update te in princeton protocol * SubGhz: move static to tests, rename sniffer to hopper/auto, remove delay from timer thread, optimize locking strategy. Co-authored-by: Aleksandr Kutuzov <alleteam@gmail.com>
49 lines
1.5 KiB
C
49 lines
1.5 KiB
C
#pragma once
|
|
|
|
#include <gui/view.h>
|
|
#include <lib/subghz/protocols/subghz_protocol_common.h>
|
|
#include <lib/subghz/protocols/subghz_protocol.h>
|
|
#include <lib/subghz/subghz_worker.h>
|
|
#include "../subghz_history.h"
|
|
|
|
typedef enum {
|
|
SubghzReceverEventOK,
|
|
SubghzReceverEventConfig,
|
|
SubghzReceverEventMain,
|
|
SubghzReceverEventSave,
|
|
SubghzReceverEventBack,
|
|
SubghzReceverEventMore,
|
|
SubghzReceverEventSendStart,
|
|
SubghzReceverEventSendStop
|
|
} SubghzReceverEvent;
|
|
|
|
typedef struct SubghzReceiver SubghzReceiver;
|
|
|
|
typedef void (*SubghzReceiverCallback)(SubghzReceverEvent event, void* context);
|
|
|
|
void subghz_receiver_set_callback(
|
|
SubghzReceiver* subghz_receiver,
|
|
SubghzReceiverCallback callback,
|
|
void* context);
|
|
|
|
SubghzReceiver* subghz_receiver_alloc();
|
|
|
|
void subghz_receiver_free(SubghzReceiver* subghz_receiver);
|
|
|
|
View* subghz_receiver_get_view(SubghzReceiver* subghz_receiver);
|
|
|
|
void subghz_receiver_set_protocol(
|
|
SubghzReceiver* subghz_receiver,
|
|
SubGhzProtocolCommon* protocol_result,
|
|
SubGhzProtocol* protocol);
|
|
|
|
SubGhzProtocolCommon* subghz_receiver_get_protocol(SubghzReceiver* subghz_receiver);
|
|
|
|
void subghz_receiver_set_worker(SubghzReceiver* subghz_receiver, SubGhzWorker* worker);
|
|
|
|
uint32_t subghz_receiver_get_frequency(SubghzReceiver* subghz_receiver);
|
|
|
|
FuriHalSubGhzPreset subghz_receiver_get_preset(SubghzReceiver* subghz_receiver);
|
|
|
|
void subghz_receiver_frequency_preset_to_str(SubghzReceiver* subghz_receiver, string_t output);
|