/*
 * sample_app.h
 *
 *  Created on: 30-Sep-2022
 *      Author: Invcuser52
 */

#ifndef _INC_SAMPLE_APP_DWNLD_H_
#define _INC_SAMPLE_APP_DWNLD_H_


#ifdef FT_OBC

#include "stdint.h"
#include "notify_apps.h"
#include "ft_upload.h"
#include "exo_types.h"

typedef struct ft_obc_pld
{
	uint8_t *payload_ptr;
	uint16_t payload_len;
	uint16_t payload_index_inc;
	uint64_t mem_add;
	volatile uint8_t write_request;
}ft_obc_payload;


void obc_flash_write_handler(void);
void obcapp_notificataion_api_dwld(ft_notification_info *ft_sts);
uint8_t ft_payload_obc(uint64_t mem_address, uint8_t *payload_ptr, uint16_t payload_len);
uint8_t obc_flash_handler_busycheck(void);
uint64_t obc_file_memory_alloc(uint16_t mem_size);
void Flash_Write_Data_linux (ptr_typ write_addr, uint8_t Data);
#endif

void sample_app_regisration_dwld(void);
void display_context_info(void);



#endif /* _INC_SAMPLE_APP_H_ */
