 |
libfilezilla
|
Go to the documentation of this file. 1 #ifndef LIBFILEZILLA_RATE_LIMITED_LAYER_HEADER
2 #define LIBFILEZILLA_RATE_LIMITED_LAYER_HEADER
24 virtual int read(
void*
buffer,
unsigned int size,
int& error)
override;
25 virtual int write(
void const*
buffer,
unsigned int size,
int& error)
override;
28 return next_layer_.get_state();
31 virtual int connect(
native_string const& host,
unsigned int port, address_type family = address_type::unknown)
override {
32 return next_layer_.connect(host, port, family);
36 return next_layer_.shutdown();
45 virtual void wakeup(direction::type d)
override;
The buffer class is a simple buffer where data can be appended at the end and consumed at the front....
Definition: buffer.hpp:24
virtual void set_event_handler(event_handler *handler) override
The handler for any events generated (or forwarded) by this layer.
socket_state
State transitions are monotonically increasing.
Definition: socket.hpp:307
A rate-limited socket layer.
Definition: rate_limited_layer.hpp:19
virtual int shutdown() override
Signals peers that we want to close the connections.
Definition: rate_limited_layer.hpp:35
Classes for rate-limiting.
A base class for socket layers.
Definition: socket.hpp:542
Socket classes for networking.
std::wstring native_string
A string in the system's native character type and encoding. Note: This typedef changes depending on...
Definition: string.hpp:33
virtual void wakeup(direction::type d) override
Called in response to unlock_tree if tokens have become available.
A limiter for the attached buckets.
Definition: rate_limiter.hpp:185
Interface for sockets.
Definition: socket.hpp:339
Simple handler for asynchronous event processing.
Definition: event_handler.hpp:55
A simple scoped lock.
Definition: mutex.hpp:65
A rate-limited token bucket.
Definition: rate_limiter.hpp:252
The namespace used by libfilezilla.
Definition: apply.hpp:17
virtual void set_event_handler(event_handler *handler) override
The handler for any events generated (or forwarded) by this layer.
Definition: rate_limited_layer.hpp:39