![]() |
libfilezilla
|
String reader, keeps a copy of the string. More...
#include <reader.hpp>


Public Member Functions | |
| string_reader (std::wstring &&name, aio_buffer_pool &pool, std::string const &data) noexcept | |
| string_reader (std::wstring &&name, aio_buffer_pool &pool, std::string &&data) noexcept | |
| virtual bool | seekable () const override |
| Public Member Functions inherited from reader_base | |
| reader_base (reader_base const &)=delete | |
| reader_base & | operator= (reader_base const &)=delete |
| void | close () |
| bool | seek (uint64_t offset, uint64_t size=nosize) |
| If seek fails, the reader is in an undefined state and must be closed. | |
| bool | rewind () |
| Only seekable readers can be rewound. | |
| std::wstring const & | name () const |
| virtual uint64_t | size () const |
| Size of the reader. If the size is indetermined, nosize is returned. | |
| virtual datetime | mtime () const |
| Last modification time, might be indetermined. | |
| std::pair< aio_result, buffer_lease > | get_buffer (event_handler &h) |
| Gets the next buffer with data from the reader. | |
| bool | error () const |
| Public Member Functions inherited from aio_waitable | |
| void | remove_waiter (event_handler &h) |
| Public Member Functions inherited from event_handler | |
| event_handler (event_loop &loop) | |
| event_handler (event_handler const &h) | |
| event_handler & | operator= (event_handler const &)=delete |
| void | remove_handler () |
| Deactivates handler, removes all pending events and stops all timers for this handler. | |
| template<typename T, typename... Args> | |
| void | send_event (Args &&... args) |
| Sends the passed event asynchronously to the handler. | |
| template<typename T> | |
| void | send_event (T *evt) |
| template<typename T> | |
| void | send_persistent_event (T *evt) |
| Be careful with lifetime. | |
| timer_id | add_timer (monotonic_clock const &deadline, duration const &interval={}) |
| Adds a timer, returns the timer id. | |
| timer_id | add_timer (duration const &interval, bool one_shot) |
| Adds a timer, returns the timer id. | |
| void | stop_timer (timer_id id) |
| timer_id | stop_add_timer (timer_id id, monotonic_clock const &deadline, duration const &interval={}) |
| timer_id | stop_add_timer (timer_id id, duration const &interval, bool one_shot) |
| void | filter_events (std::function< bool(event_base &ev)> const &filter) |
| void | resend_current_event () |
Additional Inherited Members | |
| Public Types inherited from aio_base | |
| using | size_type = uint64_t |
| Public Attributes inherited from event_handler | |
| event_loop & | event_loop_ |
| Static Public Attributes inherited from aio_base | |
| static constexpr auto | nosize = static_cast<size_type>(-1) |
| Protected Member Functions inherited from reader_base | |
| reader_base (std::wstring &&name, aio_buffer_pool &pool, size_t max_buffers) noexcept | |
| Constructs a reader. | |
| reader_base (std::wstring_view name, aio_buffer_pool &pool, size_t max_buffers) noexcept | |
| virtual void | operator() (event_base const &) override |
| Called by the event loop in the worker thread with the event to process. | |
| void | on_buffer_availability (aio_waitable const *w) |
| Protected Member Functions inherited from aio_waitable | |
| void | remove_waiters () |
| Call in destructor of most-derived class. | |
| void | add_waiter (event_handler &h) |
| void | signal_availibility () |
| Protected Attributes inherited from reader_base | |
| mutex | mtx_ |
| aio_buffer_pool & | buffer_pool_ |
| logger_interface & | logger_ |
| std::wstring const | name_ |
| size_t const | max_buffers_ {} |
| std::list< buffer_lease > | buffers_ |
| uint64_t | size_ {nosize} |
| uint64_t | max_size_ {nosize} |
| uint64_t | start_offset_ {nosize} |
| uint64_t | remaining_ {nosize} |
| bool | get_buffer_called_ {} |
| bool | error_ {} |
| bool | eof_ {} |
| bool | waiting_ {} |
String reader, keeps a copy of the string.
|
inlineoverridevirtual |
Reimplemented from reader_base.