|
The Pedigree Project 0.1
|
#include <RamFs.h>
Inheritance diagram for RamFs:
Collaboration diagram for RamFs:Public Member Functions | |
| virtual bool | initialise (Disk *pDisk) override |
| SyncStatus | sync () override |
| void | setProcessOwnership (bool bEnable) |
| bool | getProcessOwnership () const |
| virtual File * | getRoot () const override |
| virtual const String & | getVolumeLabel () const override |
Public Member Functions inherited from Filesystem | |
| Filesystem () | |
| virtual | ~Filesystem () |
| virtual File * | find (const StringView &path) |
| virtual File * | find (const String &path) |
| virtual File * | find (const StringView &path, File *pStartNode) |
| virtual File * | find (const String &path, File *pStartNode) |
| File * | findRetained (const StringView &path, Directory::ChildLease &result, File *pStartNode=nullptr) |
| virtual bool | getUuid (String &uuid) const |
| virtual FileHandleStatus | encodeFileHandle (File &file, FileHandle &handle) |
| virtual FileHandleStatus | decodeFileHandle (const FileHandle &handle, RetainedFile &file) |
| virtual FileHandleStatus | fileHandleFsid (FileSystemId &id) |
| virtual SyncStatus | shutdown () |
| virtual bool | deviceRemoved (bool deviceAvailable=false) |
| bool | tryAcquireOperation (OperationBarrier::Lease &operation) const |
| bool | isDeviceRemoved () const |
| virtual QuotaStatus | quotaControl (const QuotaRequest &, QuotaResponse &, File *quotaFile=nullptr) |
| bool | createFile (const StringView &path, uint32_t mask, File *pStartNode=0) |
| bool | createDirectory (const StringView &path, uint32_t mask, File *pStartNode=0) |
| bool | createSymlink (const StringView &path, const String &value, File *pStartNode=0) |
| bool | createLink (const StringView &path, File *target, File *pStartNode=0) |
| bool | remove (const StringView &path, File *pStartNode=0) |
| bool | remove (const StringView &path, File *pStartNode, File *expected) |
| bool | rename (const StringView &oldPath, File *oldStart, const StringView &newPath, File *newStart, bool noReplace=false) |
| Disk * | getDisk () |
| bool | isReadOnly () |
| virtual bool | isCaseSensitive () |
| bool | remove (File *parent, File *file) |
Protected Member Functions | |
| virtual bool | createFile (File *parent, const String &filename, uint32_t mask) override |
| virtual bool | createDirectory (File *parent, const String &filename, uint32_t mask) override |
| virtual bool | createSymlink (File *parent, const String &filename, const String &value) override |
| virtual bool | createLink (File *parent, const String &filename, File *target) override |
| virtual bool | removeNode (File *parent, const String &filename, File *file) override |
| virtual bool | renameNode (Directory *oldParent, const String &oldName, File *source, Directory *newParent, const String &newName, File *replaced) override |
| RamFs (const RamFs &) | |
| void | operator= (const RamFs &) |
| uintptr_t | allocateInode () |
Protected Member Functions inherited from Filesystem | |
| bool | beginDeviceRemoval (bool deviceAvailable) |
Protected Attributes | |
| File * | m_pRoot |
| bool | m_bProcessOwners |
| Atomic< uintptr_t > | m_NextInode |
Protected Attributes inherited from Filesystem | |
| bool | m_bReadOnly |
| Disk * | m_pDisk |
| DiskUse | m_DiskUse |
| OperationBarrier | m_Operations |
Static Protected Attributes | |
| static String | m_VolumeLabel |
Additional Inherited Members | |
Public Types inherited from Filesystem | |
| enum class | SyncStatus { Success , Unsupported , NoMemory , IoError } |
| typedef Filesystem *(* | ProbeCallback) (Disk *) |
|
overrideprotectedvirtual |
createDirectory calls this after it has parsed the string path.
Implements Filesystem.
Definition at line 474 of file RamFs.cc.
References File::isDirectory().
|
overrideprotectedvirtual |
createFile calls this after it has parsed the string path.
Implements Filesystem.
Definition at line 450 of file RamFs.cc.
References File::isDirectory().
|
overrideprotectedvirtual |
createLink calls this after it has parsed the string path.
Reimplemented from Filesystem.
Definition at line 523 of file RamFs.cc.
References File::isDirectory(), File::isSymlink(), and File::setCreationTime().
|
overrideprotectedvirtual |
createSymlink calls this after it has parsed the string path.
Implements Filesystem.
Definition at line 498 of file RamFs.cc.
References File::isDirectory().
|
inlineoverridevirtual |
|
inlineoverridevirtual |
Returns a string identifying the volume label.
Implements Filesystem.
|
overridevirtual |
Populates this filesystem with data from the given Disk device.
Implements Filesystem.
Definition at line 441 of file RamFs.cc.
References m_pRoot.
|
overrideprotectedvirtual |
Remove a backing node while the VFS holds the parent's namespace lock. A successful implementation must retire the parent's cached entry before returning and must recheck directory emptiness while holding the child's namespace lock.
Implements Filesystem.
Definition at line 549 of file RamFs.cc.
References File::isDirectory(), File::isSymlink(), and File::setCreationTime().
|
overrideprotectedvirtual |
Change backing entries while the VFS reserves both names and owns their namespace locks. Do not call ordinary lookup/add/remove APIs here. Failure must leave both names unchanged; the VFS publishes cache changes on success.
Reimplemented from Filesystem.
|
overridevirtual |
Completes data, metadata and device writeback for changes made before entry.
Reimplemented from Filesystem.
|
protected |