![]() |
PIP 5.6.1
Platform-Independent Primitives
|
Реализация TCP сервера для клиент-серверного взаимодействия. Принимает входящие соединения и управляет несколькими клиентами с настраиваемой фабрикой для создания экземпляров клиентов. Подробнее...
#include <piclientserver_server.h>
Открытые члены | |
| Server () | |
| Создает остановленный сервер с ограничениями по умолчанию. | |
| virtual | ~Server () |
| Останавливает сервер и освобождает транспортные ресурсы. | |
| void | listen (PINetworkAddress addr) |
| Начинает принимать клиентов по адресу "addr". | |
| void | listenAll (ushort port) |
| Начинает прослушивание на всех интерфейсах на порту "port". Подробнее... | |
| void | stopServer () |
| Прекращает прием клиентов и завершает работу сервера. | |
| void | closeAll () |
| Закрывает все текущие клиентские соединения. Подробнее... | |
| int | getMaxClients () const |
| Возвращает настроенный максимум одновременных клиентов. | |
| void | setMaxClients (int new_max_clients) |
| Устанавливает максимальное число одновременных клиентов. Подробнее... | |
| int | clientsCount () const |
| Возвращает текущее количество подключенных клиентов. | |
| void | forEachClient (std::function< void(ServerClient *)> func) |
| Вызывает "func" для каждого текущего подключенного клиента. | |
| void | setClientFactory (std::function< ServerClient *()> f) |
| Устанавливает фабрику, создающую объекты принятых клиентов. | |
Открытые члены унаследованные от PIStreamPackerConfig | |
| PIStreamPackerConfig () | |
| Создает конфигурацию с параметрами пакетирования по умолчанию. | |
| void | setMaxPacketSize (int max_size) |
| Устанавливает максимальный размер одного отправляемого фрагмента. | |
| int | maxPacketSize () const |
| Возвращает максимальный размер одного отправляемого фрагмента. | |
| void | setPacketSign (ushort sign_) |
| Устанавливает сигнатуру пакета для поиска границ кадра. | |
| ushort | packetSign () const |
| Возвращает сигнатуру пакета. | |
| void | setaAggressiveOptimization (bool yes) |
| Включает более быструю ресинхронизацию при неверных данных в потоке. Подробнее... | |
| bool | aggressiveOptimization () const |
| Возвращает, включена ли агрессивная ресинхронизация. | |
| bool | cryptSizeEnabled () const |
| Возвращает, шифруется ли также поле размера пакета. | |
| void | setCryptSizeEnabled (bool on) |
| Включает или выключает шифрование поля размера пакета. | |
| const PIStreamPackerConfig & | configuration () const |
| Возвращает конфигурацию как константную ссылку на себя. | |
| PIStreamPackerConfig & | configuration () |
| Возвращает конфигурацию как изменяемую ссылку на себя. | |
| void | setConfiguration (const PIStreamPackerConfig &config) |
| Заменяет текущую конфигурацию пакетирования на "config". | |
Открытые члены унаследованные от PIEthUtilBase | |
| PIEthUtilBase () | |
| Создает помощник с выключенным слоем шифрования. | |
| ~PIEthUtilBase () | |
| Уничтожает помощник шифрования. | |
| void | setCryptEnabled (bool on) |
| Включает или выключает слой шифрования. | |
| void | cryptEnable () |
| Включает слой шифрования. | |
| void | cryptDisable () |
| Выключает слой шифрования. | |
| bool | isCryptEnabled () const |
| Возвращает, включен ли слой шифрования. | |
| void | setCryptKey (const PIByteArray &k) |
| Устанавливает ключ шифрования "k" и включает слой шифрования. | |
| void | createCryptKey (const PIString &k) |
| Генерирует ключ шифрования из парольной фразы "k" и включает слой шифрования. | |
| PIByteArray | cryptKey () const |
| Возвращает текущий ключ шифрования. | |
Дополнительные унаследованные члены | |
Открытые статические члены унаследованные от PIEthUtilBase | |
| static size_t | cryptSizeAddition () |
| Возвращает дополнительный размер, добавляемый шифрованием. | |
Защищенные члены унаследованные от PIEthUtilBase | |
| PIByteArray | cryptData (const PIByteArray &data) |
| Шифрует "data", если слой шифрования включен. | |
| PIByteArray | decryptData (const PIByteArray &data) |
| Дешифрует "data", если слой шифрования включен. Подробнее... | |
Реализация TCP сервера для клиент-серверного взаимодействия. Принимает входящие соединения и управляет несколькими клиентами с настраиваемой фабрикой для создания экземпляров клиентов.
|
inline |
Начинает прослушивание на всех интерфейсах на порту "port".
Эквивалентно listen({0, port}), привязывается ко всем доступным сетевым интерфейсам.
| void PIClientServer::Server::closeAll | ( | ) |
Закрывает все текущие клиентские соединения.
Немедленно закрывает все активные клиентские соединения без остановки сервера.
| void PIClientServer::Server::setMaxClients | ( | int | new_max_clients | ) |
Устанавливает максимальное число одновременных клиентов.
Устанавливает максимальное количество одновременных клиентских подключений. По умолчанию 1000.