FreeNOS
|
Pseudo files only exist in memory. More...
#include <PseudoFile.h>
Public Member Functions | |
PseudoFile (const u32 inode) | |
Default constructor. More... | |
PseudoFile (const u32 inode, const char *str) | |
Constructor. More... | |
virtual | ~PseudoFile () |
Destructor. More... | |
virtual FileSystem::Result | read (IOBuffer &buffer, Size &size, const Size offset) |
Read bytes from the file. More... | |
virtual FileSystem::Result | write (IOBuffer &buffer, Size &size, const Size offset) |
Write bytes to the file. More... | |
Public Member Functions inherited from File | |
File (const u32 inode, const FileSystem::FileType type=FileSystem::RegularFile, const UserID uid=ZERO, const GroupID gid=ZERO) | |
Constructor function. More... | |
virtual | ~File () |
Destructor function. More... | |
u32 | getInode () const |
Get inode number. More... | |
FileSystem::FileType | getType () const |
Retrieve our filetype. More... | |
virtual FileSystem::Result | status (FileSystem::FileStat &st) |
Retrieve file statistics. More... | |
virtual bool | canRead () const |
Check if the File has data ready for reading. More... | |
virtual bool | canWrite () const |
Check if the File can be written to. More... | |
Private Attributes | |
char * | m_buffer |
Buffer from which we read. More... | |
Additional Inherited Members | |
Protected Attributes inherited from File | |
const u32 | m_inode |
Inode number. More... | |
const FileSystem::FileType | m_type |
Type of this file. More... | |
UserID | m_uid |
Owner of the file. More... | |
GroupID | m_gid |
Group of the file. More... | |
FileSystem::FileModes | m_access |
Access permissions. More... | |
Size | m_size |
Size of the file, in bytes. More... | |
Pseudo files only exist in memory.
Definition at line 36 of file PseudoFile.h.
PseudoFile::PseudoFile | ( | const u32 | inode | ) |
Default constructor.
inode | Inode number for this File |
Definition at line 23 of file PseudoFile.cpp.
References File::m_access, m_buffer, File::m_size, FileSystem::OwnerRW, and ZERO.
PseudoFile::PseudoFile | ( | const u32 | inode, |
const char * | str | ||
) |
Constructor.
inode | Inode number for this File |
str | Text string with file data |
Definition at line 31 of file PseudoFile.cpp.
References assert, MemoryBlock::copy(), String::length(), File::m_access, m_buffer, File::m_size, NULL, and FileSystem::OwnerRW.
|
virtual |
|
virtual |
Read bytes from the file.
buffer | Input/Output buffer to output bytes to. |
size | Maximum number of bytes to read on input. On output, the actual number of bytes read. |
offset | Offset inside the file to start reading. |
Reimplemented from File.
Definition at line 50 of file PseudoFile.cpp.
References m_buffer, File::m_size, FileSystem::Success, and IOBuffer::write().
|
virtual |
Write bytes to the file.
buffer | Input/Output buffer to input bytes from. |
size | Maximum number of bytes to write on input. On output, the actual number of bytes written. |
offset | Offset inside the file to start writing. |
Reimplemented from File.
Definition at line 69 of file PseudoFile.cpp.
References assert, MemoryBlock::copy(), m_buffer, File::m_size, NULL, IOBuffer::read(), and MemoryBlock::set().
|
private |
Buffer from which we read.
Definition at line 92 of file PseudoFile.h.
Referenced by PseudoFile(), read(), write(), and ~PseudoFile().