X-Git-Url: https://pintos-os.org/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=src%2Ffilesys%2Ffile.h;h=c3cde121ad0b55ef6189272382019602b55ac0e8;hb=41cc2728b06b5e1eeb4cf5a4979692640049e047;hp=8f2fbc9fb85254e8ccbbd7eb3e07507a0baa5b4a;hpb=3fc16f6e9abc98a3bd5427eb210669860609a224;p=pintos-anon diff --git a/src/filesys/file.h b/src/filesys/file.h index 8f2fbc9..c3cde12 100644 --- a/src/filesys/file.h +++ b/src/filesys/file.h @@ -1,15 +1,25 @@ #ifndef HEADER_FILE_H #define HEADER_FILE_H 1 +#include #include #include +#include "disk.h" +#include "off_t.h" -typedef int32_t off_t; +struct file + { + struct filehdr *hdr; + void *bounce; + off_t pos; + }; -struct file; +bool file_open (struct file *, disk_sector_t); void file_close (struct file *); off_t file_read (struct file *, void *, off_t); +off_t file_read_at (struct file *, void *, off_t size, off_t start); off_t file_write (struct file *, const void *, off_t); +off_t file_write_at (struct file *, const void *, off_t size, off_t start); off_t file_length (struct file *); void file_seek (struct file *, off_t); off_t file_tell (struct file *);