Implements the File interface for files residing on a disk. More...
#include <kanzi/core/platform/file/win32/read_only_disk_file.hpp>
Public Member Functions | |
const byte * | map () override |
const byte * | map () override |
Creates a memory mapping of the disk file. More... | |
const byte * | map () override |
Creates a memory mapping of the disk file. More... | |
const byte * | map () override |
Creates a memory mapping of the disk file. More... | |
void | read (char *buffer, uintmax_t count) override |
Reads data from a file. More... | |
void | read (char *buffer, uintmax_t count) override |
Reads data from a file. More... | |
void | read (char *buffer, uintmax_t count) override |
Reads data from a file. More... | |
void | read (char *buffer, uintmax_t count) override |
Reads data from a file. More... | |
ReadOnlyDiskFile (string_view filename) | |
Constructor. More... | |
ReadOnlyDiskFile (string_view filename) | |
Constructor. More... | |
ReadOnlyDiskFile (string_view filename) | |
Constructor. More... | |
ReadOnlyDiskFile (string_view filename) | |
Constructor. More... | |
ReadOnlyDiskFile (const char *filename) | |
Constructor. More... | |
void | seek (SeekPosition position, intmax_t offset) override |
Sets the position in a file. More... | |
void | seek (SeekPosition position, intmax_t offset) override |
Sets the position in a file. More... | |
void | seek (SeekPosition position, intmax_t offset) override |
Sets the position in a file. More... | |
void | seek (SeekPosition position, intmax_t offset) override |
Sets the position in a file. More... | |
uintmax_t | size () const override |
Gets the size of a file. More... | |
uintmax_t | size () const override |
Gets the size of a file. More... | |
uintmax_t | size () const override |
Gets the size of a file. More... | |
uintmax_t | size () const override |
Gets the size of a file. More... | |
uintmax_t | tell () const override |
Gets the current position in a file. More... | |
uintmax_t | tell () const override |
Gets the current position in a file. More... | |
uintmax_t | tell () const override |
Gets the current position in a file. More... | |
uintmax_t | tell () const override |
Gets the current position in a file. More... | |
KZ_NO_DISCARD uintmax_t | tryRead (char *buffer, uintmax_t count) override |
Tries to reads data from a file. More... | |
KZ_NO_DISCARD uintmax_t | tryRead (char *buffer, uintmax_t count) override |
Tries to reads data from a file. More... | |
KZ_NO_DISCARD uintmax_t | tryRead (char *buffer, uintmax_t count) override |
Tries to reads data from a file. More... | |
KZ_NO_DISCARD uintmax_t | tryRead (char *buffer, uintmax_t count) override |
Tries to reads data from a file. More... | |
void | write (const char *buffer, uintmax_t count) override |
Writes data to a file. More... | |
void | write (const char *buffer, uintmax_t count) override |
Writes data to a file. More... | |
void | write (const char *buffer, uintmax_t count) override |
Writes data to a file. More... | |
void | write (const char *buffer, uintmax_t count) override |
Writes data to a file. More... | |
~ReadOnlyDiskFile () override | |
Destructor. More... | |
~ReadOnlyDiskFile () override | |
Destructor. More... | |
~ReadOnlyDiskFile () override | |
~ReadOnlyDiskFile () override | |
Destructor. More... | |
Public Member Functions inherited from kanzi::File | |
virtual | ~File () |
Destructor. More... | |
Static Public Member Functions | |
static ReadOnlyDiskFileUniquePtr | tryOpen (string_view filename) |
Factory function. More... | |
static ReadOnlyDiskFileUniquePtr | tryOpen (string_view filename) |
Factory function. More... | |
static ReadOnlyDiskFileUniquePtr | tryOpen (string_view filename) |
Factory function. More... | |
static ReadOnlyDiskFileUniquePtr | tryOpen (string_view filename) |
Factory function. More... | |
Protected Member Functions | |
ReadOnlyDiskFile (KzsResourceFile *resourceFile) | |
Constructor. More... | |
ReadOnlyDiskFile (int fileDescriptor) | |
Constructor. More... | |
ReadOnlyDiskFile (int fileDescriptor) | |
Constructor. More... | |
ReadOnlyDiskFile (HANDLE fileHandle) | |
Constructor. More... | |
Protected Member Functions inherited from kanzi::File | |
File () | |
Protected Attributes | |
vector< char > | m_data |
Buffer for reading file contents if memory-mapping is not supported. More... | |
int | m_fileDescriptor |
Opaque handle to the disk file. More... | |
HANDLE | m_fileHandle |
Opaque handle to the disk file. More... | |
byte * | m_map |
Pointer to memory map. More... | |
HANDLE | m_mapHandle |
Opaque handle to the memory map of the disk file. More... | |
void * | m_mapView |
Pointer to the memory map of the disk file. More... | |
KzsResourceFile * | m_resourceFile |
Opaque handle to the disk file. More... | |
Additional Inherited Members | |
Public Types inherited from kanzi::File | |
enum | SeekPosition { SeekBegin, SeekCurrent } |
Seek origin enumeration for seek(). More... | |
Implements the File interface for files residing on a disk.
|
explicit |
Constructor.
filename | The name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed. |
|
override |
|
explicitprotected |
Constructor.
resourceFile | A pointer to an open resource file. |
|
explicit |
Constructor.
filename | The name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed. |
|
override |
Destructor.
Closes the file handle.
|
explicitprotected |
Constructor.
fileDescriptor | An open disk file descriptor. |
|
explicit |
Constructor.
filename | The name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed. |
|
override |
Destructor.
Closes the file handle.
|
explicitprotected |
Constructor.
fileDescriptor | An open disk file descriptor. |
|
explicit |
Constructor.
filename | The name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed. |
|
explicit |
Constructor.
filename | The name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed. |
|
override |
Destructor.
Closes the file handle and unmaps the file as needed.
|
explicitprotected |
Constructor.
fileHandle | An open disk file handle. |
|
static |
Factory function.
Creates an object representing an open file handle to a disk file.
filename | The name (including path) of the disk file to handle. |
|
overridevirtual |
Reads data from a file.
The function starts reading at the current file position. When you call read(), it invalidates the pointer returned by map(). This function throws when its can't read count number of bytes from the File.
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Tries to reads data from a file.
The function starts reading at the current file position. When you call tryRead(), it invalidates the pointer returned by map().
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Writes data to a file.
The function starts writing at the current file position. When you call write(), it invalidates the pointer returned by map().
buffer | Buffer from which to write. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to write. |
Implements kanzi::File.
|
overridevirtual |
|
overridevirtual |
Gets the current position in a file.
Implements kanzi::File.
|
overridevirtual |
Sets the position in a file.
You can set the position as an offset to either the current position or the beginning of the file. When you call seek(), it invalidates the pointer returned by map().
position | Seek origin. |
offset | Offset in bytes from the seek origin. |
Implements kanzi::File.
|
overridevirtual |
Implements kanzi::File.
|
static |
Factory function.
Creates an object representing an open file handle to a disk file.
filename | The name (including path) of the disk file to handle. |
|
overridevirtual |
Reads data from a file.
The function starts reading at the current file position. When you call read(), it invalidates the pointer returned by map(). This function throws when its can't read count number of bytes from the File.
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Tries to reads data from a file.
The function starts reading at the current file position. When you call tryRead(), it invalidates the pointer returned by map().
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Writes data to a file.
The function starts writing at the current file position. When you call write(), it invalidates the pointer returned by map().
buffer | Buffer from which to write. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to write. |
Implements kanzi::File.
|
overridevirtual |
|
overridevirtual |
Gets the current position in a file.
Implements kanzi::File.
|
overridevirtual |
Sets the position in a file.
You can set the position as an offset to either the current position or the beginning of the file. When you call seek(), it invalidates the pointer returned by map().
position | Seek origin. |
offset | Offset in bytes from the seek origin. |
Implements kanzi::File.
|
overridevirtual |
Creates a memory mapping of the disk file.
Does nothing if the disk file has already been memory mapped.
Implements kanzi::File.
|
static |
Factory function.
Creates an object representing an open file handle to a disk file.
filename | The name (including path) of the disk file to handle. |
|
overridevirtual |
Reads data from a file.
The function starts reading at the current file position. When you call read(), it invalidates the pointer returned by map(). This function throws when its can't read count number of bytes from the File.
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Tries to reads data from a file.
The function starts reading at the current file position. When you call tryRead(), it invalidates the pointer returned by map().
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Writes data to a file.
The function starts writing at the current file position. When you call write(), it invalidates the pointer returned by map().
buffer | Buffer from which to write. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to write. |
Implements kanzi::File.
|
overridevirtual |
|
overridevirtual |
Gets the current position in a file.
Implements kanzi::File.
|
overridevirtual |
Sets the position in a file.
You can set the position as an offset to either the current position or the beginning of the file. When you call seek(), it invalidates the pointer returned by map().
position | Seek origin. |
offset | Offset in bytes from the seek origin. |
Implements kanzi::File.
|
overridevirtual |
Creates a memory mapping of the disk file.
Does nothing if the disk file has already been memory mapped.
Implements kanzi::File.
|
static |
Factory function.
Creates an object representing an open file handle to a disk file.
filename | The name (including path) of the disk file to handle. |
|
overridevirtual |
Reads data from a file.
The function starts reading at the current file position. When you call read(), it invalidates the pointer returned by map(). This function throws when its can't read count number of bytes from the File.
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Tries to reads data from a file.
The function starts reading at the current file position. When you call tryRead(), it invalidates the pointer returned by map().
buffer | Buffer to which to read. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to read. |
Implements kanzi::File.
|
overridevirtual |
Writes data to a file.
The function starts writing at the current file position. When you call write(), it invalidates the pointer returned by map().
buffer | Buffer from which to write. The size of the buffer in bytes must be at least the size of the value you pass in the count parameter. |
count | Number of bytes to write. |
Implements kanzi::File.
|
overridevirtual |
|
overridevirtual |
Gets the current position in a file.
Implements kanzi::File.
|
overridevirtual |
Sets the position in a file.
You can set the position as an offset to either the current position or the beginning of the file. When you call seek(), it invalidates the pointer returned by map().
position | Seek origin. |
offset | Offset in bytes from the seek origin. |
Implements kanzi::File.
|
overridevirtual |
Creates a memory mapping of the disk file.
Does nothing if the disk file has already been memory mapped.
Implements kanzi::File.
|
protected |
Opaque handle to the disk file.
|
protected |
Pointer to memory map.
|
protected |
Opaque handle to the disk file.
|
protected |
Pointer to the memory map of the disk file.
Pointer to the view of the memory map of the disk file.
|
protected |
Buffer for reading file contents if memory-mapping is not supported.
|
protected |
Opaque handle to the disk file.
|
protected |
Opaque handle to the memory map of the disk file.