Go to the documentation of this file.
42 ": result = " << (
int)result);
52 ERROR(
"failed to register LogLevelFile: result = " << (
int) logResult);
60 ERROR(
"failed to mount to path " <<
m_mountPath <<
": result = " << (
int)result);
75 FATAL(
"failed to register device on path: " << path);
91 ERROR(
"failed to register IRQ handler using WatchIRQ: result = " << (
int) watchResult);
98 ERROR(
"failed to enable IRQ handler using EnableIRQ: result = " << (
int) enableResult);
116 i.current()->interrupt(vector);
virtual Size count() const
Item count in the Index.
virtual bool insertAt(const Size position, T *item)
Inserts the given item at the given position.
Result
Enumeration of generic kernel API result codes.
u32 getNextInode()
Get next unused inode.
virtual FileSystem::Result initialize()
Initialize the device.
Directory File functionality.
void registerInterrupt(Device *dev, Size vector)
Register an interrupt vector for the given device.
void addIRQHandler(const Size slot, IRQHandlerFunction h)
Register a new IRQ message vector handler.
Abstract device class interface.
void(FileSystemServer ::* IRQHandlerFunction)(Size)
Member function pointer inside Base, to handle interrupts.
Abstract filesystem class.
API::Result ProcessCtl(const ProcessID proc, const ProcessOperation op, const Address addr=0, const Address output=0)
Prototype for user applications.
void registerDevice(Device *dev, const char *path)
Add a Device.
#define FATAL(msg)
Output a critical message and terminate program immediatly.
Provides a File abstraction of the current Log::Level.
virtual bool hasCurrent() const
Check if there is a current item on the List.
const char * m_mountPath
Mount point path.
virtual void interruptHandler(Size vector)
Interrupt request handler.
DeviceServer(const char *path)
Constructor.
Index< Device, MaximumDevices > m_devices
Contains all Devices served by this DeviceServer.
unsigned int Size
Any sane size indicator cannot go negative.
virtual T * get(const Size position) const
Returns the item at the given position.
virtual FileSystem::Result initialize()
Initialize DeviceServer.
void retryAllRequests()
Keep retrying requests until all served.
FileSystem::Result mount()
Mount the FileSystem.
#define ERROR(msg)
Output an error message.
Result
Result code for filesystem Actions.
virtual const String & getIdentifier() const
Get unique device identifier.
virtual ~DeviceServer()
Destructor.
Index< List< Device * >, MaximumInterrupts > m_interrupts
Registers Devices using interrupts.
virtual bool insert(Size &position, T *item)
Adds the given item, if possible.
FileSystem::Result registerFile(File *file, const char *path)
Register a new File.