#include "kernel/filesystem/device_inode.hpp" #include "kapi/system.hpp" #include "kernel/devices/device.hpp" #include "kernel/filesystem/device_file.hpp" #include "kernel/filesystem/file.hpp" #include "kernel/filesystem/inode.hpp" #include namespace filesystem { device_inode::device_inode(kstd::shared_ptr const & device) : inode(inode_kind::device) , m_device(device) { if (!device) { kapi::system::panic("[FILESYSTEM] device_inode constructed with null device."); } } auto device_inode::open_file(kstd::shared_ptr const & self) const -> kstd::shared_ptr { if (!self) { kapi::system::panic("[FILESYSTEM] device_inode::open_file called with null inode."); } return kstd::make_shared(self); } auto device_inode::device() const -> kstd::shared_ptr const & { return m_device; } } // namespace filesystem