HostFileSystem Class

Definition

Line 14 of cmsxk/HostFileSystem.cm

Inheritance

Constructors & Destructor

public HostFileSystem(int index_, const String<char>& hostPath_, const String<char>& mountDirPath_)

Member Functions

public override int AllocateBlockNumber()
public override void FillINode(INode* inode)
public override nothrow BlockManager* GetBlockManager()
public override int GetFirstINodeBlockNumber() const
public override int GetFreeINodeNumber()
public override HostFile* GetHostFile(int fsNumber) const
public override nothrow INodeManager* GetINodeManager()
public override INodeKey GetRootDirINodeKey() const
public override nothrow bool HasMountDirKey(const INodeKey& mountDirKey) const
public inline nothrow const String<char>& HostPath() const
public override void Init()
public override nothrow bool IsHostFileSystem() const
public override int LastBlockNumber() const
public override int Open(Process* process, INode* inode, OpenFlags flags, const String<char>& path, INodePutter& inodePutter)
public override int OpenDirectory(Process* process, const String<char>& path, INode* dirINode, INodePutter& inodePutter)
public override int ReadDirectory(Process* process, DirectoryFile* dirFile, ulong inodeNumberAddress, ulong entryNameAddress)
public override void SetBlockFree(int blockNumber)
public override void SetFreeINodeNumber(int inodeNumber)
public override void SetLastBlockNumber(int blockNumber, SuperBlock* sb)

Member Variables

private HostBlockManager blockManager
private String<char> hostPath
private HostINodeManager inodeManager
private INodeKey mountDirINodeKey
private String<char> mountDirPath

Constructor& Destructor Details

HostFileSystem Constructor

public HostFileSystem(int index_, const String<char>& hostPath_, const String<char>& mountDirPath_)

Definition
Line 16 of cmsxk/HostFileSystem.cm


Member Function Details

AllocateBlockNumber Member Function

public override int AllocateBlockNumber()

Definition
Line 172 of cmsxk/HostFileSystem.cm


FillINode Member Function

public override void FillINode(INode* inode)

Definition
Line 105 of cmsxk/HostFileSystem.cm


GetBlockManager Member Function

public override nothrow BlockManager* GetBlockManager()

Definition
Line 208 of cmsxk/HostFileSystem.cm


GetFirstINodeBlockNumber Member Function

public override int GetFirstINodeBlockNumber()

Definition
Line 188 of cmsxk/HostFileSystem.cm


GetFreeINodeNumber Member Function

public override int GetFreeINodeNumber()

Definition
Line 180 of cmsxk/HostFileSystem.cm


GetHostFile Member Function

public override HostFile* GetHostFile(int fsNumber)

Definition
Line 168 of cmsxk/HostFileSystem.cm


GetINodeManager Member Function

public override nothrow INodeManager* GetINodeManager()

Definition
Line 212 of cmsxk/HostFileSystem.cm


GetRootDirINodeKey Member Function

public override INodeKey GetRootDirINodeKey()

Definition
Line 192 of cmsxk/HostFileSystem.cm


HasMountDirKey Member Function

public override nothrow bool HasMountDirKey(const INodeKey& mountDirKey)

Definition
Line 204 of cmsxk/HostFileSystem.cm


HostPath Member Function

public inline nothrow const String<char>& HostPath()

Definition
Line 216 of cmsxk/HostFileSystem.cm


Init Member Function

public override void Init()

Definition
Line 24 of cmsxk/HostFileSystem.cm


IsHostFileSystem Member Function

public override nothrow bool IsHostFileSystem()

Definition
Line 20 of cmsxk/HostFileSystem.cm


LastBlockNumber Member Function

public override int LastBlockNumber()

Definition
Line 196 of cmsxk/HostFileSystem.cm


Open Member Function

public override int Open(Process* process, INode* inode, OpenFlags flags, const String<char>& path, INodePutter& inodePutter)

Definition
Line 49 of cmsxk/HostFileSystem.cm


OpenDirectory Member Function

public override int OpenDirectory(Process* process, const String<char>& path, INode* dirINode, INodePutter& inodePutter)

Definition
Line 57 of cmsxk/HostFileSystem.cm


ReadDirectory Member Function

public override int ReadDirectory(Process* process, DirectoryFile* dirFile, ulong inodeNumberAddress, ulong entryNameAddress)

Definition
Line 65 of cmsxk/HostFileSystem.cm


SetBlockFree Member Function

public override void SetBlockFree(int blockNumber)

Definition
Line 176 of cmsxk/HostFileSystem.cm


SetFreeINodeNumber Member Function

public override void SetFreeINodeNumber(int inodeNumber)

Definition
Line 184 of cmsxk/HostFileSystem.cm


SetLastBlockNumber Member Function

public override void SetLastBlockNumber(int blockNumber, SuperBlock* sb)

Definition
Line 200 of cmsxk/HostFileSystem.cm