Сервер оптимизации пути
More...
#include <path_optimising_server.h>
|
| void | processCommand (int clientSocket, int command, Json::Value jsonData) override |
| |
| void | onSocketConnected (int clientSocket) override |
| |
| | PathOptimisingServer (const std::shared_ptr< bmpf::Scene > &scene, bool showTrace, unsigned int maxOpenSetSize, int gridSize, unsigned int maxNodeCnt, int checkCnt, int filterDivideCnt, int optimizeLoopCnt, int threadCnt=1) |
| |
| void | mainLoop () |
| |
| virtual void | init (int port, int maxClients, int delay) |
| |
| void | processRequests (int clientSocket) |
| |
| void | stop () |
| |
| int | acceptNewSocket () |
| |
| int | getServerFd () const |
| |
| const sockaddr_in & | getAddress () const |
| |
◆ PathOptimisingServer()
| PathOptimisingServer::PathOptimisingServer |
( |
const std::shared_ptr< bmpf::Scene > & |
scene, |
|
|
bool |
showTrace, |
|
|
unsigned int |
maxOpenSetSize, |
|
|
int |
gridSize, |
|
|
unsigned int |
maxNodeCnt, |
|
|
int |
checkCnt, |
|
|
int |
filterDivideCnt, |
|
|
int |
optimizeLoopCnt, |
|
|
int |
threadCnt = 1 |
|
) |
| |
|
inline |
конструктор
- Parameters
-
| scene | сцена |
| showTrace | флаг, нужно ли выводить информацию во время поиска пути |
| maxOpenSetSize | максимальный размер открытом множества |
| gridSize | размер сетки планирования |
| maxNodeCnt | максимальное кол-во нод в закрытом множестве |
| checkCnt | количество промежуточных проверок каждого этапа пути |
| filterDivideCnt | количество разбиений медианного фильтра |
| optimizeLoopCnt | количество проходов оптимизации |
| threadCnt | количество потоков планировщика |
◆ onSocketConnected()
| void PathOptimisingServer::onSocketConnected |
( |
int |
clientSocket | ) |
|
|
overridevirtual |
Обработка подключения нового клиента
- Parameters
-
Implements BaseServer.
◆ processCommand()
| void PathOptimisingServer::processCommand |
( |
int |
clientSocket, |
|
|
int |
command, |
|
|
Json::Value |
jsonData |
|
) |
| |
|
overridevirtual |
Обработка запроса клиента
- Parameters
-
| clientSocket | fd клиента |
| command | код команды |
| jsonData | данные команды |
Обработка запроса клиента
- Parameters
-
Implements BaseServer.
◆ startOptimisePath()
Запуск оптимизации пути
- Parameters
-
| pos | сервер оптимизации |
| po | оптимизатор пути |
| clientSocket | fd клиента |
| path | путь, который нужно потимизировать |
◆ _checkCnt
| int PathOptimisingServer::_checkCnt |
|
protected |
количество промежуточных проверок каждого этапа пути
◆ _filterDivideCnt
| int PathOptimisingServer::_filterDivideCnt |
|
protected |
Количество разбиений медианного фильтра
◆ _gridSize
| int PathOptimisingServer::_gridSize |
|
protected |
размер сетки планирования
◆ _maxNodeCnt
| unsigned int PathOptimisingServer::_maxNodeCnt |
|
protected |
максимальное кол-во нод в закрытом множестве
◆ _maxOpenSetSize
| unsigned int PathOptimisingServer::_maxOpenSetSize |
|
protected |
максимальный размер закрытого множества
◆ _optimizeLoopCnt
| int PathOptimisingServer::_optimizeLoopCnt |
|
protected |
Количество проходов оптимизации
◆ _scene
| std::shared_ptr<bmpf::Scene> PathOptimisingServer::_scene |
|
protected |
◆ _showTrace
| bool PathOptimisingServer::_showTrace |
|
protected |
флаг, нужно ли выводить информацию во время поиска пути
◆ _threadCnt
| int PathOptimisingServer::_threadCnt |
|
protected |
количество потоков планирования
◆ COMMAND_IS_READY
| const int PathOptimisingServer::COMMAND_IS_READY = 0 |
|
static |
Проверка, готов ли планировщик
◆ COMMAND_OPTIMIZE_PATH
| const int PathOptimisingServer::COMMAND_OPTIMIZE_PATH = 2 |
|
static |
◆ COMMAND_START_OPTIMIZE_PATH
| const int PathOptimisingServer::COMMAND_START_OPTIMIZE_PATH = 1 |
|
static |
◆ pathOptimisingReady
| std::unordered_map<int, bool> PathOptimisingServer::pathOptimisingReady |
|
protected |
Словарь флагов, готов ли оптимизатор для каждого fd сокета клиента
◆ paths
| std::unordered_map<int, std::vector<std::vector<double> > > PathOptimisingServer::paths |
|
protected |
Словарь путей для каждого fd сокета клиента
◆ pfs
Словарь оптимизаторов для каждого fd сокета клиента
The documentation for this class was generated from the following files: