36 lines
755 B
C++
36 lines
755 B
C++
// FileSystem.h
|
|
// Virtual file system subsystem for HOS
|
|
// Author: Josh Holtrop
|
|
// Date: 06/21/05
|
|
// Modified: 06/21/05
|
|
|
|
#ifndef __HOS_FILESYSTEM__
|
|
#define __HOS_FILESYSTEM__ __HOS_FILESYSTEM__
|
|
|
|
#include "hos_defines.h"
|
|
#include "vfs.h"
|
|
#include "OpenDirectory.h"
|
|
#include "OpenFile.h"
|
|
|
|
class FileSystem
|
|
{
|
|
public:
|
|
FileSystem();
|
|
virtual ~FileSystem();
|
|
|
|
virtual u32_t totalBlocks(); /* 512 byte blocks */
|
|
virtual u32_t freeBlocks();
|
|
|
|
virtual u32_t totalInodes();
|
|
virtual u32_t freeInodes();
|
|
|
|
virtual u32_t getRootInodeNumber();
|
|
|
|
virtual OpenDirectory *openDirectory(u32_t inum, int mode);
|
|
virtual OpenFile *openFile(u32_t inum, int mode);
|
|
virtual int stat(u32_t inum, vfs_stat_t *buf);
|
|
virtual int link_deref(u32_t inum, char *buf);
|
|
};
|
|
|
|
#endif
|