#include <file-system.h>
Inheritance diagram for os::posix::file_system_implementable< T >:Public Types | |
| using | value_type = T |
Public Member Functions | |
Constructors & Destructor | |
| template<typename... Args> | |
| file_system_implementable (const char *name, block_device &device, Args &&... args) | |
| virtual | ~file_system_implementable () override |
Public Member Functions | |
| value_type & | impl (void) const |
Public Member Functions | |
| using | deferred_files_list_t = utils::intrusive_list< file, utils::double_list_links, &file::deferred_links_ > |
| using | deferred_directories_list_t = utils::intrusive_list< directory, utils::double_list_links, &directory::deferred_links_ > |
| int | mkfs (int options,...) |
| virtual int | vmkfs (int options, std::va_list args) |
| int | mount (const char *path=nullptr, unsigned int flags=0,...) |
| virtual int | vmount (const char *path, unsigned int flags, std::va_list args) |
| Mount file system. | |
| virtual int | umount (int unsigned flags=0) |
| Unmount file system. | |
| file * | open (const char *path=nullptr, int oflag=0,...) |
| virtual file * | vopen (const char *path, int oflag, std::va_list args) |
| virtual directory * | opendir (const char *dirpath) |
| virtual int | mkdir (const char *path, mode_t mode) |
| virtual int | rmdir (const char *path) |
| virtual void | sync (void) |
| virtual int | chmod (const char *path, mode_t mode) |
| virtual int | stat (const char *path, struct stat *buf) |
| virtual int | truncate (const char *path, off_t length) |
| virtual int | rename (const char *existing, const char *_new) |
| virtual int | unlink (const char *path) |
| virtual int | utime (const char *path, const utimbuf *times) |
| virtual int | statvfs (struct statvfs *buf) |
| const char * | mounted_path (void) |
| const char * | name (void) const |
| void | add_deferred_file (file *fil) |
| void | add_deferred_directory (directory *dir) |
| deferred_files_list_t & | deferred_files_list (void) |
| deferred_directories_list_t & | deferred_directories_list (void) |
| template<typename T > | |
| T * | allocate_file (void) |
| template<typename T , typename L > | |
| T * | allocate_file (L &locker) |
| template<typename T > | |
| T * | allocate_directory (void) |
| template<typename T , typename L > | |
| T * | allocate_directory (L &locker) |
| template<typename T > | |
| void | deallocate_files (void) |
| template<typename T > | |
| void | deallocate_directories (void) |
| block_device & | device (void) const |
| static file_system * | identify_mounted (const char **path1, const char **path2=nullptr) |
Definition at line 558 of file file-system.h.
|
inherited |
Definition at line 312 of file file-system.h.
|
inherited |
Definition at line 308 of file file-system.h.
| using os::posix::file_system_implementable< T >::value_type = T |
Definition at line 563 of file file-system.h.
| os::posix::file_system_implementable< T >::file_system_implementable | ( | const char * | name, |
| block_device & | device, | ||
| Args &&... | args | ||
| ) |
Definition at line 1001 of file file-system.h.
References os::trace::printf().
|
overridevirtual |
Definition at line 1018 of file file-system.h.
References os::trace::printf().
|
inlineinherited |
Definition at line 828 of file file-system.h.
Referenced by os::posix::directory::close().
|
inlineinherited |
Definition at line 822 of file file-system.h.
Referenced by os::posix::file::close().
|
inherited |
Definition at line 946 of file file-system.h.
|
inherited |
Definition at line 918 of file file-system.h.
|
inherited |
Definition at line 874 of file file-system.h.
|
inherited |
Definition at line 847 of file file-system.h.
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 828 of file file-system.cpp.
References os::posix::file_system_impl::do_chmod(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::chmod().
|
inherited |
Definition at line 974 of file file-system.h.
|
inherited |
Definition at line 901 of file file-system.h.
|
inlineinherited |
Definition at line 840 of file file-system.h.
|
inlineinherited |
Definition at line 834 of file file-system.h.
|
inlineinherited |
Definition at line 816 of file file-system.h.
References os::posix::file_system_impl::device(), and os::posix::file_system::impl().
|
staticinherited |
Definition at line 621 of file file-system.cpp.
Referenced by os::posix::chmod(), os::posix::mkdir(), os::posix::opendir(), os::posix::rename(), os::posix::rmdir(), os::posix::stat(), os::posix::statvfs(), os::posix::truncate(), os::posix::unlink(), os::posix::utime(), and os::posix::vopen().
| file_system_implementable< T >::value_type & os::posix::file_system_implementable< T >::impl | ( | void | ) | const |
Definition at line 1029 of file file-system.h.
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 748 of file file-system.cpp.
References os::posix::file_system_impl::do_mkdir(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::mkdir().
|
inherited |
Definition at line 470 of file file-system.cpp.
References os::posix::file_system::vmkfs().
|
inherited |
Definition at line 504 of file file-system.cpp.
References os::posix::file_system::vmount().
|
inherited |
|
inlineinherited |
Definition at line 796 of file file-system.h.
|
inherited |
Definition at line 677 of file file-system.cpp.
References os::posix::file_system::vopen().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 719 of file file-system.cpp.
References os::posix::file_system_impl::do_opendir(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::opendir().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 921 of file file-system.cpp.
References os::posix::file_system_impl::do_rename(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::rename().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 778 of file file-system.cpp.
References os::posix::file_system_impl::do_rmdir(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::rmdir().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 859 of file file-system.cpp.
References os::posix::file_system_impl::do_stat(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::stat().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 1029 of file file-system.cpp.
References os::posix::file_system_impl::do_statvfs(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file::fstatvfs(), and os::posix::file_system_lockable< T, L >::statvfs().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 808 of file file-system.cpp.
References os::posix::file_system_impl::do_sync(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::sync().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 890 of file file-system.cpp.
References os::posix::file_system_impl::do_truncate(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::truncate().
|
virtualinherited |
| flags | File system specific flags. |
| 0 | if successful, |
| -1 | otherwise and the variable errno is set to indicate the error. |
The root file system must be unmounted last, it cannot be unmounted if other mount points exists.
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 589 of file file-system.cpp.
References os::posix::file_system_impl::do_sync(), os::posix::file_system_impl::do_umount(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::umount().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 953 of file file-system.cpp.
References os::posix::file_system_impl::do_unlink(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system_lockable< T, L >::unlink().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 985 of file file-system.cpp.
References os::posix::file_system_impl::do_utime(), os::posix::file_system::impl(), os::trace::printf(), and times().
Referenced by os::posix::file_system_lockable< T, L >::utime().
|
virtualinherited |
Definition at line 482 of file file-system.cpp.
References os::posix::file_system_impl::do_vmkfs(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system::mkfs().
|
virtualinherited |
| path | Path, terminated in /. If / or nullptr, the file system is mounted as root, i.e. the default if no other mount point matches. |
| flags | File system specific flags. |
| args | Optional arguments. |
| 0 | if successful, |
| -1 | otherwise and the variable errno is set to indicate the error. |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 516 of file file-system.cpp.
References os::posix::file_system_impl::do_vmount(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system::mount(), and os::posix::file_system_lockable< T, L >::vmount().
|
virtualinherited |
Reimplemented in os::posix::file_system_lockable< T, L >.
Definition at line 689 of file file-system.cpp.
References os::posix::io::alloc_file_descriptor(), os::posix::file_system_impl::do_vopen(), os::posix::file_system::impl(), and os::trace::printf().
Referenced by os::posix::file_system::open(), and os::posix::file_system_lockable< T, L >::vopen().