TacOS  0.2
 Tout Structures de données Fichiers Fonctions Variables Définitions de type Énumérations Macros
Structures de données | Définitions de type | Énumérations | Fonctions | Variables
Référence du fichier fat_internal.h
#include <types.h>
#include <clock.h>
#include <vfs.h>
#include <fs/devfs.h>
Graphe des dépendances par inclusion de fat_internal.h:
Ce graphe montre quels fichiers incluent directement ou indirectement ce fichier :

Aller au code source de ce fichier.

Structures de données

struct  _fat_BS
 
struct  _fat_extended_BIOS_16
 
struct  _fat_extended_BIOS_32
 
struct  _fat_time
 
struct  _fat_date
 
struct  _fat_dir_entry
 
struct  lfn_entry_t
 
struct  _directory_entry
 
struct  _directory
 
struct  _fat_info
 
struct  _fat_fs_instance_t
 
struct  _fat_extra_data_t
 Données supplémentaires qui sont ajoutés à l'ofd lors du open. Plus de détails...
 
struct  _fat_direntry_t
 Structure fille d'un dentry_t qui ajoute quelques données. Plus de détails...
 

Définitions de type

typedef struct _fat_BS fat_BS_t
 
typedef struct
_fat_extended_BIOS_16 
fat_extended_BIOS_16_t
 
typedef struct
_fat_extended_BIOS_32 
fat_extended_BIOS_32_t
 
typedef struct _fat_time fat_time_t
 
typedef struct _fat_date fat_date_t
 
typedef struct _fat_dir_entry fat_dir_entry_t
 
typedef struct _directory_entry directory_entry_t
 
typedef struct _directory directory_t
 
typedef struct _fat_info fat_info_t
 
typedef struct _fat_fs_instance_t fat_fs_instance_t
 
typedef struct _fat_extra_data_t fat_extra_data_t
 Données supplémentaires qui sont ajoutés à l'ofd lors du open.
 
typedef struct _fat_direntry_t fat_direntry_t
 Structure fille d'un dentry_t qui ajoute quelques données.
 

Énumérations

enum  fat_t { FAT12, FAT16, FAT32 }
 

Fonctions

dentry_tfat_getroot (struct _fs_instance_t *instance)
 
dentry_tfat_lookup (struct _fs_instance_t *instance, struct _dentry_t *dentry, const char *name)
 
directory_topen_root_dir (fat_fs_instance_t *instance)
 
void read_fat (fat_fs_instance_t *instance)
 
void umount_FAT (fs_instance_t *instance)
 
int fat_readdir (open_file_descriptor *ofd, char *entries, size_t size)
 
int fat_mkdir (fs_instance_t *instance, const char *path, mode_t mode)
 
int fat_stat (fs_instance_t *instance, const char *path, struct stat *stbuf)
 
int fat_unlink (fs_instance_t *instance, const char *path)
 
ssize_t fat_read_file (open_file_descriptor *ofd, void *buf, size_t count)
 
int fat_seek_file (open_file_descriptor *ofd, long offset, int whence)
 
int fat_close (open_file_descriptor *ofd)
 
int fat_open (open_file_descriptor *ofd)
 

Variables

struct _open_file_operations_t fatfs_fops
 

Description détaillée

Auteur
TacOS developers

LICENSE

Copyright (C) 2010, 2011, 2012 - TacOS developers.

This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details at http://www.gnu.org/copyleft/gpl.html

You should have received a copy of the GNU General Public License along with this program; if not, see http://www.gnu.org/licenses.

DESCRIPTION

Description de ce que fait le fichier

Documentation des définitions de type

Liste chaînée pour stocker les entrées d'un dossier.

typedef struct _directory directory_t

Structure de haut niveau pour stocker les informations d'un dossier.

typedef struct _fat_BS fat_BS_t

Boot Sector

typedef struct _fat_date fat_date_t

Représentation de la date au format FAT.

Entrée de dossier.

Extended BIOS Parameter Block (FAT12 / FAT16)

Extended BIOS Parameter Block (FAT 32)

Instance de FS de type FAT.

typedef struct _fat_info fat_info_t

Structure qui contient tout ce qui est utilisé par le driver FAT.

typedef struct _fat_time fat_time_t

Représentation du temps au format FAT.

Documentation du type de l'énumération

enum fat_t

Types de FAT.

Documentation des fonctions

int fat_close ( open_file_descriptor ofd)

Fermeture d'un fichier ouvert.

Paramètres
ofdDescripteur de fichier ouvert.
Renvoie
0 en cas de succès.

Voici le graphe d'appel pour cette fonction :

dentry_t* fat_getroot ( struct _fs_instance_t instance)

Fonction qui permet de récupérer le dentry à la racine.

Paramètres
instanceInstance de FS.
Renvoie
Dossier racine.

Voici le graphe des appelants de cette fonction :

dentry_t* fat_lookup ( struct _fs_instance_t instance,
struct _dentry_t dentry,
const char *  name 
)

Fonction de lookup : retourne l'entrée de dossier qui correspond au nom demandé.

Paramètres
instanceInstance de FS.
dentryDossier parent.
nameNom de l'entrée dans ce dossier.
Renvoie
Entrée de dossier correspondant.

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

int fat_mkdir ( fs_instance_t instance,
const char *  path,
mode_t  mode 
)

Création d'un dossier.

Paramètres
instanceInstance de fs.
pathChemin du dossier à créer.
modeDroits sur le dossier.
Renvoie
0 en cas de succès.

Voici le graphe d'appel pour cette fonction :

int fat_open ( open_file_descriptor ofd)

Ouverture d'un fichier. Initialise certaines données de l'ofd.

Paramètres
ofdDescripteur de fichier ouvert.
Renvoie
0 en cas de succès.

Voici le graphe d'appel pour cette fonction :

ssize_t fat_read_file ( open_file_descriptor ofd,
void *  buf,
size_t  count 
)

Lecture d'un fichier.

Paramètres
ofdDescripteur du fichier ouvert.
bufBuffer où stocker les octets lus.
countNombre d'octets à lire.
Renvoie
nombre d'octets réellement lus.
int fat_readdir ( open_file_descriptor ofd,
char *  entries,
size_t  size 
)

Lecture d'un dossier.

Paramètres
ofdDescripteur de fichier qui correspond au dossier.
entriesBuffer qui va recevoir les entrées de dossier.
sizeNombre d'octets dans le buffer au maximum.
Renvoie
Nombre d'octets écrits dans entries.

Voici le graphe d'appel pour cette fonction :

int fat_seek_file ( open_file_descriptor ofd,
long  offset,
int  whence 
)

Déplacement dans un fichier.

Paramètres
ofdDescripteur de fichier ouvert.
offsetDécalage
whencedepuis le debut, la fin ou en relatif.
Renvoie
0 en cas de succès, -1 sinon.

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

int fat_stat ( fs_instance_t instance,
const char *  path,
struct stat stbuf 
)

Informations sur un fichier.

Paramètres
instanceInstance de fs.
pathChemin du fichier.
stbufStructure pour enregistrer les informations.
Renvoie
0 en cas de succès.
int fat_unlink ( fs_instance_t instance,
const char *  path 
)

Suppression d'un fichier ou dossier (vide).

Paramètres
instanceInstance de fs.
pathChemin du noeud.
Renvoie
0 en cas de succès.

Voici le graphe d'appel pour cette fonction :

directory_t* open_root_dir ( fat_fs_instance_t instance)

Ouvre le répertoire racine.

Paramètres
instanceInstance de FS.
Renvoie
Dossier racine.

Voici le graphe d'appel pour cette fonction :

Voici le graphe des appelants de cette fonction :

void read_fat ( fat_fs_instance_t instance)

Lecture de la FAT.

Paramètres
instanceInstance de FS.

Voici le graphe des appelants de cette fonction :

void umount_FAT ( fs_instance_t instance)

Démonte un FS.

Paramètres
instanceInstance de FS.

Voici le graphe d'appel pour cette fonction :

Documentation des variables

struct _open_file_operations_t fatfs_fops

Pointeurs sur les fonctions de manipulation de fichiers pour ce FS.