qb  2.0.0.0
C++17 Actor Framework
qb Issue Watch Star Fork Follow @isndev
Loading...
Searching...
No Matches
qb::io::transport::file Class Reference

File transport providing stream-based access to local files. More...

#include <file.h>

Inheritance diagram for qb::io::transport::file:
Collaboration diagram for qb::io::transport::file:

Public Member Functions

int write ()
 Write data to the file.
Public Member Functions inherited from qb::io::stream< io::sys::file >
output_buffer_typeout () noexcept
 Get the output buffer.
std::size_t pendingWrite () const noexcept
 Get the number of bytes pending for writing.
int write (std::enable_if_t< has_method_write< io::sys::file, int, const char *, std::size_t >::value, Available > *=nullptr) noexcept
 Write data from the output buffer to the transport.
char * publish (char const *data, std::size_t size) noexcept
 Add data to the output buffer for later writing.
void close () noexcept
 Close the stream.
Public Member Functions inherited from qb::io::istream< io::sys::file >
 ~istream () noexcept
 Destructor.
io::sys::file & transport () noexcept
 Get the underlying transport object.
input_buffer_typein () noexcept
 Get the input buffer.
std::size_t pendingRead () const noexcept
 Get the number of bytes available for reading.
int read (std::enable_if_t< has_method_read< io::sys::file, int, char *, std::size_t >::value, Available > *=nullptr) noexcept
 Read data from the transport into the input buffer.
void flush (std::size_t size) noexcept
 Remove data from the front of the input buffer.
void eof () noexcept
 Handle end-of-file condition.
void close () noexcept
 Close the stream.

Additional Inherited Members

Public Types inherited from qb::io::stream< io::sys::file >
using transport_io_type
 Type of the underlying transport IO.
using output_buffer_type
 Type of the output buffer.
Public Types inherited from qb::io::istream< io::sys::file >
using transport_io_type
 Type of the underlying transport IO.
using input_buffer_type
 Type of the input buffer.
Static Public Attributes inherited from qb::io::stream< io::sys::file >
static constexpr const bool has_reset_on_pending_read
 Flag indicating whether the implementation resets pending reads.
Protected Attributes inherited from qb::io::stream< io::sys::file >
output_buffer_type _out_buffer
 Buffer for outgoing data.
Protected Attributes inherited from qb::io::istream< io::sys::file >
io::sys::file _in
 The underlying IO object.
input_buffer_type _in_buffer
 Buffer for incoming data.

Detailed Description

File transport providing stream-based access to local files.

This class implements a transport layer for file operations by extending the generic qb::io::stream class, specializing it with qb::io::sys::file as the underlying I/O mechanism. It provides buffered read and write operations for local files through the stream interface.

Member Function Documentation

◆ write()

int qb::io::transport::file::write ( )
inlinenodiscard

Write data to the file.

Returns
Always returns 0 as file writes are handled separately

This method is a placeholder as file writing is handled through other mechanisms in the file implementation.