diff --git a/src/filesys/inode.h b/src/filesys/inode.h new file mode 100644 index 0000000000000000000000000000000000000000..cb42310fa8d77dcc438a4cd689361b1e126bacbe --- /dev/null +++ b/src/filesys/inode.h @@ -0,0 +1,23 @@ +#ifndef FILESYS_INODE_H +#define FILESYS_INODE_H + +#include <stdbool.h> +#include "filesys/off_t.h" +#include "devices/block.h" + +struct bitmap; + +void inode_init (void); +bool inode_create (block_sector_t, off_t); +struct inode *inode_open (block_sector_t); +struct inode *inode_reopen (struct inode *); +block_sector_t inode_get_inumber (const struct inode *); +void inode_close (struct inode *); +void inode_remove (struct inode *); +off_t inode_read_at (struct inode *, void *, off_t size, off_t offset); +off_t inode_write_at (struct inode *, const void *, off_t size, off_t offset); +void inode_deny_write (struct inode *); +void inode_allow_write (struct inode *); +off_t inode_length (const struct inode *); + +#endif /* filesys/inode.h */