FileSystem Abstract Class

Definition

Line 17 of cmsxk/FileSystem.cm

Inheritance

Constructors & Destructor

public nothrow FileSystem(const String<char>& name_, int index_, bool readOnly_)

Member Functions

public abstract int AllocateBlockNumber()
public void ChDir(Process* process, const String<char>& path)
public virtual void ChangeMode(Process* process, const String<char>& path, INode* inode, int mode)
public void ChangeMode(Process* process, const String<char>& path, int mode)
public virtual void ChangeOwner(Process* process, const String<char>& path, INode* inode, int uid, int gid)
public void ChangeOwner(Process* process, const String<char>& path, int uid, int gid)
public int Create(Process* process, const String<char>& path, int mode, bool truncate)
public virtual void FillINode(INode* inode)
public abstract nothrow BlockManager* GetBlockManager()
public String<char> GetCurrentWorkingDirectory(Process* process)
public abstract int GetFirstINodeBlockNumber() const
public abstract int GetFreeINodeNumber()
public abstract HostFile* GetHostFile(int fsNumber) const
public abstract nothrow INodeManager* GetINodeManager()
public abstract INodeKey GetRootDirINodeKey() const
public abstract nothrow bool HasMountDirKey(const INodeKey& mountDirKey) const
public inline nothrow int Index() const
public abstract void Init()
public virtual nothrow bool IsHostFileSystem() const
public inline nothrow bool IsReadOnly() const
public virtual nothrow bool IsRootFileSystem() const
public abstract int LastBlockNumber() const
public void Link(Process* process, const String<char>& sourcePath, const String<char>& targetPath)
public void MakeDirectory(Process* process, const String<char>& path, int mode)
public inline nothrow const String<char>& Name() const
public virtual int Open(Process* process, INode* inode, OpenFlags flags, const String<char>& path, INodePutter& inodePutter)
public int Open(Process* process, const String<char>& path, OpenFlags flags, int mode)
public int OpenDirectory(Process* process, const String<char>& path)
public abstract int OpenDirectory(Process* process, const String<char>& path, INode* dirINode, INodePutter& inodePutter)
public abstract int ReadDirectory(Process* process, DirectoryFile* dirFile, ulong inodeNumberAddress, ulong entryNameAddress)
public void Rename(Process* process, const String<char>& sourcePath, const String<char>& targetPath)
public abstract void SetBlockFree(int blockNumber)
public abstract void SetFreeINodeNumber(int inodeNumber)
public abstract void SetLastBlockNumber(int blockNumber, SuperBlock* sb)
public void Stat(Process* process, const String<char>& path, ulong statBufAddress)
public void Unlink(Process* process, const String<char>& path)
public virtual void UpdateFileTimes(Process* process, const String<char>& path, INode* inode, const DateTime& atime, const DateTime& mtime)
public void UpdateFileTimes(Process* process, const String<char>& path, const DateTime& atime, const DateTime& mtime)

Member Variables

private int index
private String<char> name
private bool readOnly

Constructor& Destructor Details

FileSystem Constructor

public nothrow FileSystem(const String<char>& name_, int index_, bool readOnly_)

Definition
Line 19 of cmsxk/FileSystem.cm


Member Function Details

AllocateBlockNumber Member Function

public abstract int AllocateBlockNumber()

Definition
Line 987 of cmsxk/FileSystem.cm


ChDir Member Function

public void ChDir(Process* process, const String<char>& path)

Definition
Line 903 of cmsxk/FileSystem.cm


ChangeMode Member Function

public virtual void ChangeMode(Process* process, const String<char>& path, INode* inode, int mode)

Definition
Line 949 of cmsxk/FileSystem.cm


ChangeMode Member Function

public void ChangeMode(Process* process, const String<char>& path, int mode)

Definition
Line 938 of cmsxk/FileSystem.cm


ChangeOwner Member Function

public virtual void ChangeOwner(Process* process, const String<char>& path, INode* inode, int uid, int gid)

Definition
Line 964 of cmsxk/FileSystem.cm


ChangeOwner Member Function

public void ChangeOwner(Process* process, const String<char>& path, int uid, int gid)

Definition
Line 953 of cmsxk/FileSystem.cm


Create Member Function

public int Create(Process* process, const String<char>& path, int mode, bool truncate)

Definition
Line 32 of cmsxk/FileSystem.cm


FillINode Member Function

public virtual void FillINode(INode* inode)

Definition
Line 983 of cmsxk/FileSystem.cm


GetBlockManager Member Function

public abstract nothrow BlockManager* GetBlockManager()

Definition
Line 996 of cmsxk/FileSystem.cm


GetCurrentWorkingDirectory Member Function

public String<char> GetCurrentWorkingDirectory(Process* process)

Definition
Line 810 of cmsxk/FileSystem.cm


GetFirstINodeBlockNumber Member Function

public abstract int GetFirstINodeBlockNumber()

Definition
Line 991 of cmsxk/FileSystem.cm


GetFreeINodeNumber Member Function

public abstract int GetFreeINodeNumber()

Definition
Line 989 of cmsxk/FileSystem.cm


GetHostFile Member Function

public abstract HostFile* GetHostFile(int fsNumber)

Definition
Line 986 of cmsxk/FileSystem.cm


GetINodeManager Member Function

public abstract nothrow INodeManager* GetINodeManager()

Definition
Line 997 of cmsxk/FileSystem.cm


GetRootDirINodeKey Member Function

public abstract INodeKey GetRootDirINodeKey()

Definition
Line 992 of cmsxk/FileSystem.cm


HasMountDirKey Member Function

public abstract nothrow bool HasMountDirKey(const INodeKey& mountDirKey)

Definition
Line 995 of cmsxk/FileSystem.cm


Index Member Function

public inline nothrow int Index()

Definition
Line 1002 of cmsxk/FileSystem.cm


Init Member Function

public abstract void Init()

Definition
Line 31 of cmsxk/FileSystem.cm


IsHostFileSystem Member Function

public virtual nothrow bool IsHostFileSystem()

Definition
Line 27 of cmsxk/FileSystem.cm


IsReadOnly Member Function

public inline nothrow bool IsReadOnly()

Definition
Line 1006 of cmsxk/FileSystem.cm


IsRootFileSystem Member Function

public virtual nothrow bool IsRootFileSystem()

Definition
Line 23 of cmsxk/FileSystem.cm


LastBlockNumber Member Function

public abstract int LastBlockNumber()

Definition
Line 993 of cmsxk/FileSystem.cm


public void Link(Process* process, const String<char>& sourcePath, const String<char>& targetPath)

Definition
Line 188 of cmsxk/FileSystem.cm


MakeDirectory Member Function

public void MakeDirectory(Process* process, const String<char>& path, int mode)

Definition
Line 609 of cmsxk/FileSystem.cm


Name Member Function

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

Definition
Line 998 of cmsxk/FileSystem.cm


Open Member Function

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

Definition
Line 179 of cmsxk/FileSystem.cm


Open Member Function

public int Open(Process* process, const String<char>& path, OpenFlags flags, int mode)

Definition
Line 151 of cmsxk/FileSystem.cm


OpenDirectory Member Function

public int OpenDirectory(Process* process, const String<char>& path)

Definition
Line 789 of cmsxk/FileSystem.cm


OpenDirectory Member Function

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

Definition
Line 808 of cmsxk/FileSystem.cm


ReadDirectory Member Function

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

Definition
Line 809 of cmsxk/FileSystem.cm


Rename Member Function

public void Rename(Process* process, const String<char>& sourcePath, const String<char>& targetPath)

Definition
Line 378 of cmsxk/FileSystem.cm


SetBlockFree Member Function

public abstract void SetBlockFree(int blockNumber)

Definition
Line 988 of cmsxk/FileSystem.cm


SetFreeINodeNumber Member Function

public abstract void SetFreeINodeNumber(int inodeNumber)

Definition
Line 990 of cmsxk/FileSystem.cm


SetLastBlockNumber Member Function

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

Definition
Line 994 of cmsxk/FileSystem.cm


Stat Member Function

public void Stat(Process* process, const String<char>& path, ulong statBufAddress)

Definition
Line 913 of cmsxk/FileSystem.cm


public void Unlink(Process* process, const String<char>& path)

Definition
Line 287 of cmsxk/FileSystem.cm


UpdateFileTimes Member Function

public virtual void UpdateFileTimes(Process* process, const String<char>& path, INode* inode, const DateTime& atime, const DateTime& mtime)

Definition
Line 979 of cmsxk/FileSystem.cm


UpdateFileTimes Member Function

public void UpdateFileTimes(Process* process, const String<char>& path, const DateTime& atime, const DateTime& mtime)

Definition
Line 968 of cmsxk/FileSystem.cm