18#ifndef __VSF_FATFS_H__
19#define __VSF_FATFS_H__
23#include "../../vsf_fs_cfg.h"
25#if VSF_USE_FS == ENABLED && (VSF_FS_USE_FATFS == ENABLED || VSF_FS_USE_EXFATFS == ENABLED)
27#include "../malfs/vsf_malfs.h"
29#if defined(__VSF_FATFS_CLASS_IMPLEMENT)
30# undef __VSF_FATFS_CLASS_IMPLEMENT
31# define __VSF_CLASS_IMPLEMENT__
42#define implement_fatfs_info(__block_size, __cache_num) \
43 implement(__vk_fatfs_info_t) \
44 __implement_malfs_cache(__block_size, __cache_num)
46#define init_fatfs_info_ex(__info, __block_size, __cache_num, __fatinfo) \
48 __fatinfo->block_size = __block_size; \
49 __fatinfo->cache.number = __cache_num; \
50 __fatinfo->cache.nodes = __info->__cache_nodes; \
53#define init_fatfs_info(__info, __block_size, __cache_num) \
54 .block_size = __block_size, \
56 .number = __cache_num, \
57 .nodes = __info.__cache_nodes, \
66#if VSF_FS_USE_EXFATFS == ENABLED
103#if VSF_FS_USE_EXFATFS == ENABLED
133 uint8_t entry_offset_in_sector0;
140#if VSF_FS_USE_EXFATFS == ENABLED
167#if VSF_FS_USE_EXFATFS == ENABLED
168 char fat_volume_name[24];
170 char fat_volume_name[12];
174#if VSF_FS_USE_EXFATFS == ENABLED
Definition vsf_fatfs.h:163
Definition vsf_malfs.h:83
Definition vsf_malfs.h:98
Definition vsf_fatfs.h:121
signed short int16_t
Definition lvgl.h:42
unsigned short uint16_t
Definition lvgl.h:41
unsigned int uint32_t
Definition lvgl.h:43
unsigned char uint8_t
Definition lvgl.h:40
#define vsf_dcl_class
Definition ooc_class.h:46
#define vsf_class(__name)
Definition ooc_class.h:48
unsigned long long uint64_t
Definition stdint.h:11
Definition vsf_fatfs.h:86
char * filename
Definition vsf_fatfs.h:88
struct vk_fatfs_dentry_parser_t::@14::@17 exfat
uint8_t lfn
Definition vsf_fatfs.h:101
bool is_unicode
Definition vsf_fatfs.h:94
uint32_t zero_before_first_call
Definition vsf_fatfs.h:111
int16_t vital_entry_num
Definition vsf_fatfs.h:91
uint16_t node_parsed_num
Definition vsf_fatfs.h:90
int16_t entry_num
Definition vsf_fatfs.h:89
struct vk_fatfs_dentry_parser_t::@14::@16 fat
uint8_t namelen
Definition vsf_fatfs.h:105
uint8_t entry_num
Definition vsf_fatfs.h:107
uint8_t attr
Definition vsf_fatfs.h:95
uint64_t size
Definition vsf_fatfs.h:97
uint8_t * entry
Definition vsf_fatfs.h:87
uint32_t first_cluster
Definition vsf_fatfs.h:96
int16_t root_entry_num
Definition vsf_fatfs.h:108
uint8_t namepos
Definition vsf_fatfs.h:106
Definition vsf_fatfs.h:115
uint32_t sector_offset_in_cluster
Definition vsf_fatfs.h:117
uint32_t cluster
Definition vsf_fatfs.h:116
uint32_t offset_in_sector
Definition vsf_fatfs.h:118
vk_av_control_type_t type
Definition vsf_audio.h:170
bool vk_fatfs_parse_dentry_fat(vk_fatfs_dentry_parser_t *parser)
Definition vsf_fatfs.c:609
bool vk_fatfs_is_lfn(char *name)
Definition vsf_fatfs.c:320
vk_fat_type_t
Definition vsf_fatfs.h:72
@ VSF_FAT_32
Definition vsf_fatfs.h:76
@ VSF_FAT_12
Definition vsf_fatfs.h:74
@ VSF_FAT_EX
Definition vsf_fatfs.h:77
@ VSF_FAT_NONE
Definition vsf_fatfs.h:73
@ VSF_FAT_16
Definition vsf_fatfs.h:75
uint64_t vk_fat_sector_type_t
Definition vsf_fatfs.h:67
const vk_fs_op_t vk_fatfs_op
vk_fat_file_attr_t
Definition vsf_fatfs.h:80
@ VSF_FAT_FILE_ATTR_SYSTEM
Definition vsf_fatfs.h:82
@ VSF_FAT_FILE_ATTR_ARCHIVE
Definition vsf_fatfs.h:83
@ VSF_FAT_FILE_ATTR_VOLUMID
Definition vsf_fatfs.h:81
@ VSF_FILE_ATTR_EXT
Definition vsf_fs_cfg.h:108