57 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			57 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
#pragma once
 | 
						|
 | 
						|
#include <furi_hal.h>
 | 
						|
 | 
						|
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* pointer to a SubGhzFileEncoderWorker instance 
 | 
						|
 */
 | 
						|
SubGhzFileEncoderWorker* subghz_file_encoder_worker_alloc();
 | 
						|
 | 
						|
/** 
 | 
						|
 * Free SubGhzFileEncoderWorker.
 | 
						|
 * @param instance Pointer to a SubGhzFileEncoderWorker instance
 | 
						|
 */
 | 
						|
void subghz_file_encoder_worker_free(SubGhzFileEncoderWorker* instance);
 | 
						|
 | 
						|
/**
 | 
						|
 * Getting the level and duration of the upload to be loaded into DMA.
 | 
						|
 * @param context Pointer to a SubGhzFileEncoderWorker instance
 | 
						|
 * @return LevelDuration 
 | 
						|
 */
 | 
						|
LevelDuration subghz_file_encoder_worker_get_level_duration(void* context);
 | 
						|
 | 
						|
/** 
 | 
						|
 * Start SubGhzFileEncoderWorker.
 | 
						|
 * @param instance Pointer to a SubGhzFileEncoderWorker instance
 | 
						|
 * @return bool - true if ok
 | 
						|
 */
 | 
						|
bool subghz_file_encoder_worker_start(SubGhzFileEncoderWorker* instance, const char* file_path);
 | 
						|
 | 
						|
/** 
 | 
						|
 * Stop SubGhzFileEncoderWorker
 | 
						|
 * @param instance Pointer to a SubGhzFileEncoderWorker instance
 | 
						|
 */
 | 
						|
void subghz_file_encoder_worker_stop(SubGhzFileEncoderWorker* instance);
 | 
						|
 | 
						|
/** 
 | 
						|
 * Check if worker is running
 | 
						|
 * @param instance Pointer to a SubGhzFileEncoderWorker instance
 | 
						|
 * @return bool - true if running
 | 
						|
 */
 | 
						|
bool subghz_file_encoder_worker_is_running(SubGhzFileEncoderWorker* instance);
 |