#pragma once #include typedef void (*SubGhzFileEncoderWorkerCallbackEnd)(void* context); typedef struct SubGhzFileEncoderWorker SubGhzFileEncoderWorker; /** End callback SubGhzWorker * * @param instance SubGhzFileEncoderWorker instance * @param callback SubGhzFileEncoderWorkerCallbackEnd callback */ void subghz_file_encoder_worker_callback_end( SubGhzFileEncoderWorker* instance, SubGhzFileEncoderWorkerCallbackEnd callback_end, void* context_end); /** Allocate SubGhzFileEncoderWorker * * @return SubGhzFileEncoderWorker* */ SubGhzFileEncoderWorker* subghz_file_encoder_worker_alloc(); /** Free SubGhzFileEncoderWorker * * @param instance SubGhzFileEncoderWorker instance */ void subghz_file_encoder_worker_free(SubGhzFileEncoderWorker* instance); LevelDuration subghz_file_encoder_worker_get_level_duration(void* context); /** Start SubGhzFileEncoderWorker * * @param instance SubGhzFileEncoderWorker instance * @return bool - true if ok */ bool subghz_file_encoder_worker_start(SubGhzFileEncoderWorker* instance, const char* file_path); /** Stop SubGhzFileEncoderWorker * * @param instance SubGhzFileEncoderWorker instance */ void subghz_file_encoder_worker_stop(SubGhzFileEncoderWorker* instance); /** Check if worker is running * * @param instance SubGhzFileEncoderWorker instance * @return bool - true if running */ bool subghz_file_encoder_worker_is_running(SubGhzFileEncoderWorker* instance);