kanzi::WriteOnlyDiskFile Class Reference

Implements the File interface for writing files to a disk. More...

#include <kanzi/core/file/write_only_disk_file.hpp>

Inheritance diagram for kanzi::WriteOnlyDiskFile:
kanzi::File

Public Member Functions

 WriteOnlyDiskFile (string_view filename)
 Constructor. More...
 
void read (char *buffer, uint64_t count)
 
uint64_t tryRead (char *buffer, uint64_t count)
 
void write (const char *buffer, uint64_t count)
 
uint64_t size () const
 
uint64_t tell () const
 
void seek (SeekPosition position, int64_t offset)
 
const bytemap ()
 Creates a memory mapping of the disk file. More...
 
- Public Member Functions inherited from kanzi::File
virtual ~File ()
 

Static Public Member Functions

static WriteOnlyDiskFileUniquePtr tryOpen (string_view filename)
 Factory function. More...
 

Protected Member Functions

 WriteOnlyDiskFile (detail::FileUniquePtr file)
 
- Protected Member Functions inherited from kanzi::File
 File ()
 

Protected Attributes

detail::FileUniquePtr m_fileHandle
 

Additional Inherited Members

- Public Types inherited from kanzi::File
enum  SeekPosition { SeekBegin, SeekCurrent }
 

Detailed Description

Implements the File interface for writing files to a disk.

Constructor & Destructor Documentation

kanzi::WriteOnlyDiskFile::WriteOnlyDiskFile ( string_view  filename)
explicit

Constructor.

Parameters
filenameThe name (including path) of the disk file to handle. Throws runtime_error if file cannot be accessed.
kanzi::WriteOnlyDiskFile::WriteOnlyDiskFile ( detail::FileUniquePtr  file)
protected

Member Function Documentation

static WriteOnlyDiskFileUniquePtr kanzi::WriteOnlyDiskFile::tryOpen ( string_view  filename)
static

Factory function.

Creates an object representing an open file handle to a disk file.

Parameters
filenameThe name (including path) of the disk file to handle.
Returns
Pointer to the object, or null when file cannot be accessed.
void kanzi::WriteOnlyDiskFile::read ( char *  buffer,
uint64_t  count 
)
virtual

Implements kanzi::File.

uint64_t kanzi::WriteOnlyDiskFile::tryRead ( char *  buffer,
uint64_t  count 
)
void kanzi::WriteOnlyDiskFile::write ( const char *  buffer,
uint64_t  count 
)
virtual

Implements kanzi::File.

uint64_t kanzi::WriteOnlyDiskFile::size ( ) const
virtual

Implements kanzi::File.

uint64_t kanzi::WriteOnlyDiskFile::tell ( ) const
virtual

Implements kanzi::File.

void kanzi::WriteOnlyDiskFile::seek ( SeekPosition  position,
int64_t  offset 
)
virtual

Implements kanzi::File.

const byte* kanzi::WriteOnlyDiskFile::map ( )
virtual

Creates a memory mapping of the disk file.

Does nothing if the disk file has already been memory mapped.

Returns
Pointer to the view of the memory map.

Implements kanzi::File.

Member Data Documentation

detail::FileUniquePtr kanzi::WriteOnlyDiskFile::m_fileHandle
protected

The documentation for this class was generated from the following file: