#include "filesystem_helper.h"Go to the source code of this file.
Namespaces | |
| namespace | foobar2000_io |
Classes | |
| struct | foobar2000_io::t_filestats |
| Stores file stats (size and timestamp). More... | |
| class | foobar2000_io::stream_reader |
| class | foobar2000_io::stream_writer |
| class | foobar2000_io::file |
| class | foobar2000_io::file_dynamicinfo |
| Special hack for shoutcast metadata nonsense handling. Documentme. More... | |
| class | foobar2000_io::file_readonly_t< t_base > |
| Implementation helper - contains dummy implementations of methods that modify the file. More... | |
| class | foobar2000_io::directory_callback |
| class | foobar2000_io::filesystem |
| class | foobar2000_io::directory_callback_impl |
| struct | foobar2000_io::directory_callback_impl::t_entry |
| class | foobar2000_io::archive_callback |
| class | foobar2000_io::archive |
| Interface for archive reader services. When implementing, derive from archive_impl rather than from deriving from archive directly. More... | |
| class | foobar2000_io::archive_impl |
| Root class for archive implementations. Derive from this instead of from archive directly. More... | |
| class | foobar2000_io::archive_factory_t< T > |
| class | foobar2000_io::format_filetimestamp |
| Warning: this formats according to system timezone settings, created strings should be used for display only, never for storage. More... | |
| class | foobar2000_io::directory_callback_retrieveList< t_list > |
| class | foobar2000_io::directory_callback_retrieveListEx< t_list > |
| class | foobar2000_io::directory_callback_retrieveListRecur< t_list > |
Typedefs | |
| typedef t_uint64 | foobar2000_io::t_filesize |
| Type used for file size related variables. | |
| typedef t_int64 | foobar2000_io::t_sfilesize |
| Type used for file size related variables when signed value is needed. | |
| typedef t_uint64 | foobar2000_io::t_filetimestamp |
| Type used for file timestamp related variables. 64-bit value representing the number of 100-nanosecond intervals since January 1, 1601; 0 for invalid/unknown time. | |
| typedef service_ptr_t< file > | foobar2000_io::file_ptr |
| typedef file_readonly_t< file > | foobar2000_io::file_readonly |
Functions | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io, pfc::exception,"I/O error") | |
| Generic I/O error. Root class for I/O failure exception. See relevant default message for description of each derived exception class. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_not_found, exception_io,"Object not found") | |
| Object not found. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_denied, exception_io,"Access denied") | |
| Access denied. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_data, exception_io,"Unsupported format or corrupted file") | |
| Unsupported format or corrupted file (unexpected data encountered). | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_data_truncation, exception_io_data,"Unsupported format or corrupted file") | |
| Unsupported format or corrupted file (truncation encountered). | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_unsupported_format, exception_io_data,"Unsupported file format") | |
| Unsupported format (a subclass of "unsupported format or corrupted file" exception). | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_object_is_remote, exception_io,"This operation is not supported on remote objects") | |
| Object is remote, while specific operation is supported only for local objects. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_sharing_violation, exception_io,"Sharing violation") | |
| Sharing violation. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_device_full, exception_io,"Device full") | |
| Device full. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_seek_out_of_range, exception_io,"Seek offset out of range") | |
| Attempt to seek outside valid range. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_object_not_seekable, exception_io,"Object is not seekable") | |
| This operation requires a seekable object. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_no_length, exception_io,"Length of object is unknown") | |
| This operation requires an object with known length. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_no_handler_for_path, exception_io,"Invalid path") | |
| Invalid path. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_already_exists, exception_io,"Object already exists") | |
| Object already exists. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_no_data, exception_io,"The process receiving or sending data has terminated") | |
| Pipe error. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_network_not_reachable, exception_io,"Network not reachable") | |
| Network not reachable. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_write_protected, exception_io_denied,"The media is write protected") | |
| Media is write protected. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_file_corrupted, exception_io,"The file is corrupted") | |
| File is corrupted. This indicates filesystem call failure, not actual invalid data being read by the app. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_disk_change, exception_io,"Disc not available") | |
| The disc required for requested operation is not available. | |
| foobar2000_io::PFC_DECLARE_EXCEPTION (exception_io_directory_not_empty, exception_io,"Directory not empty") | |
| The directory is not empty. | |
| t_filetimestamp | foobar2000_io::filetimestamp_from_system_timer () |
| void | foobar2000_io::generate_temp_location_for_file (pfc::string_base &p_out, const char *p_origpath, const char *p_extension, const char *p_magic) |
| static file_ptr | foobar2000_io::fileOpen (const char *p_path, filesystem::t_open_mode p_mode, abort_callback &p_abort, double p_timeout) |
| static file_ptr | foobar2000_io::fileOpenReadExisting (const char *p_path, abort_callback &p_abort, double p_timeout=0) |
| static file_ptr | foobar2000_io::fileOpenWriteExisting (const char *p_path, abort_callback &p_abort, double p_timeout=0) |
| static file_ptr | foobar2000_io::fileOpenWriteNew (const char *p_path, abort_callback &p_abort, double p_timeout=0) |
| template<typename t_list> | |
| static void | foobar2000_io::listFiles (const char *p_path, t_list &p_out, abort_callback &p_abort) |
| template<typename t_list> | |
| static void | foobar2000_io::listDirectories (const char *p_path, t_list &p_out, abort_callback &p_abort) |
| template<typename t_list> | |
| static void | foobar2000_io::listFilesAndDirectories (const char *p_path, t_list &p_files, t_list &p_directories, abort_callback &p_abort) |
| template<typename t_list> | |
| static void | foobar2000_io::listFilesRecur (const char *p_path, t_list &p_out, abort_callback &p_abort) |
| bool | foobar2000_io::extract_native_path (const char *p_fspath, pfc::string_base &p_native) |
| bool | foobar2000_io::_extract_native_path_ptr (const char *&p_fspath) |
| template<typename T> | |
| pfc::string | foobar2000_io::getPathDisplay (const T &source) |
| template<typename T> | |
| pfc::string | foobar2000_io::getPathCanonical (const T &source) |
Variables | |
| const t_filetimestamp | foobar2000_io::filetimestamp_invalid = 0 |
| Invalid/unknown file timestamp constant. Also see: t_filetimestamp. | |
| const t_filesize | foobar2000_io::filesize_invalid = (t_filesize)(~0) |
| Invalid/unknown file size constant. Also see: t_filesize. | |
| static const t_filestats | foobar2000_io::filestats_invalid = {filesize_invalid,filetimestamp_invalid} |
| Invalid/unknown file stats constant. See: t_filestats. | |
1.5.5