Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
|
#include <IFile.h>
Classes | |
struct | ReadLineResult |
Public Member Functions | |
IFile () | |
virtual | ~IFile () |
virtual bool | Open (const CURL &url)=0 |
virtual bool | OpenForWrite (const CURL &url, bool bOverWrite=false) |
virtual bool | ReOpen (const CURL &url) |
virtual bool | Exists (const CURL &url)=0 |
virtual int | Stat (const CURL &url, struct __stat64 *buffer)=0 |
virtual int | Stat (struct __stat64 *buffer) |
virtual ssize_t | Read (void *bufPtr, size_t bufSize)=0 |
virtual ssize_t | Write (const void *bufPtr, size_t bufSize) |
virtual ReadLineResult | ReadLine (char *buffer, std::size_t bufferSize) |
virtual int64_t | Seek (int64_t iFilePosition, int iWhence=SEEK_SET)=0 |
virtual void | Close ()=0 |
virtual int64_t | GetPosition ()=0 |
virtual int64_t | GetLength ()=0 |
virtual void | Flush () |
virtual int | Truncate (int64_t size) |
virtual int | GetChunkSize () |
virtual double | GetDownloadSpeed () |
virtual bool | Delete (const CURL &url) |
virtual bool | Rename (const CURL &url, const CURL &urlnew) |
virtual bool | SetHidden (const CURL &url, bool hidden) |
virtual int | IoControl (EIoControl request, void *param) |
virtual const std::string | GetProperty (XFILE::FileProperty type, const std::string &name="") const |
virtual const std::vector< std::string > | GetPropertyValues (XFILE::FileProperty type, const std::string &name="") const |
|
default |
|
virtualdefault |
|
pure virtual |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMultiPathFile, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPluginFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWin32SMBFile, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
|
inlinevirtual |
Reimplemented in XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CWin32File, and XFILE::CWinLibraryFile.
|
inlinevirtual |
|
inlinevirtual |
Reimplemented in XFILE::CCurlFile.
|
pure virtual |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
|
pure virtual |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
|
inlinevirtual |
Reimplemented in XFILE::CCurlFile, and XFILE::CFileCache.
|
inlinevirtual |
Reimplemented in XFILE::CCurlFile, and XFILE::CFileCache.
|
inlinevirtual |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMultiPathFile, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPluginFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWin32SMBFile, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
Attempt to read bufSize bytes from currently opened file into buffer bufPtr.
bufPtr | pointer to buffer |
bufSize | size of the buffer |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
|
virtual |
Reads a line from a file into buffer
. Reads at most bufferLength
- 1 bytes from the file. buffer
is unchanged in case the returned result code is FAILURE. The read line can contain '\0' characters
buffer | The buffer into which the line is wrote |
bufferSize | The size of buffer |
Reimplemented in XFILE::CCurlFile.
Reimplemented in XFILE::CCurlFile.
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
Reimplemented in XFILE::CWin32File, XFILE::CWin32SMBFile, and XFILE::CWinLibraryFile.
Fills struct __stat64 with information about file specified by url. For st_mode function will set correctly _S_IFDIR (directory) flag and may set _S_IREAD (read permission), _S_IWRITE (write permission) flags if such information is available. Function may set st_size (file size), st_atime, st_mtime, st_ctime (access, modification, creation times). Any other flags and members of __stat64 that didn't updated with actual file information will be set to zero (st_nlink can be set ether to 1 or zero).
url | specifies requested file |
buffer | pointer to __stat64 buffer to receive information about file |
Implemented in ADDON::CVFSEntryIFileWrapper, XFILE::CAPKFile, XFILE::CCurlFile, XFILE::CFileAndroidApp, XFILE::CFileCache, XFILE::CFileCDDA, XFILE::CImageFile, XFILE::CISO9660File, XFILE::CMultiPathFile, XFILE::CMusicDatabaseFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPluginFile, XFILE::CPosixFile, XFILE::CShoutcastFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CUDFFile, XFILE::CUPnPFile, XFILE::CWin32File, XFILE::CWin32SMBFile, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
Fills struct __stat64 with information about currently open file For st_mode function will set correctly _S_IFDIR (directory) flag and may set _S_IREAD (read permission), _S_IWRITE (write permission) flags if such information is available. Function may set st_size (file size), st_atime, st_mtime, st_ctime (access, modification, creation times). Any other flags and members of __stat64 that didn't updated with actual file information will be set to zero (st_nlink can be set ether to 1 or zero).
buffer | pointer to __stat64 buffer to receive information about file |
Reimplemented in XFILE::CAPKFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPluginFile, XFILE::CPosixFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CWin32File, XFILE::CWinLibraryFile, XFILE::CXbtFile, and XFILE::CZipFile.
Reimplemented in ADDON::CVFSEntryIFileWrapper, XFILE::CNFSFile, XFILE::CPosixFile, XFILE::CSMBFile, XFILE::CWin32File, and XFILE::CWinLibraryFile.
Attempt to write bufSize bytes from buffer bufPtr into currently opened file.
bufPtr | pointer to buffer |
bufSize | size of the buffer |
Reimplemented in ADDON::CVFSEntryIFileWrapper, XFILE::CCurlFile, XFILE::CNFSFile, XFILE::COverrideFile, XFILE::CPipeFile, XFILE::CPosixFile, XFILE::CSMBFile, XFILE::CTVOSFile, XFILE::CWin32File, and XFILE::CWinLibraryFile.