#include <mesh_generator_thread.h>
Inheritance diagram for MeshUpdateWorkerThread:
Collaboration diagram for MeshUpdateWorkerThread:Public Member Functions | |
| MeshUpdateWorkerThread (Client *client, MeshUpdateQueue *queue_in, MeshUpdateManager *manager) | |
Public Member Functions inherited from UpdateThread | |
| UpdateThread (const std::string &name) | |
| ~UpdateThread ()=default | |
| void | deferUpdate () |
| void | stop () |
| void * | run () |
Public Member Functions inherited from Thread | |
| Thread (const std::string &name="") | |
| virtual | ~Thread () |
| bool | start () |
| bool | stop () |
| bool | wait () |
| bool | isCurrentThread () |
| bool | isRunning () |
| bool | stopRequested () |
| std::thread::id | getThreadId () |
| bool | getReturnValue (void **ret) |
| bool | bindToProcessor (unsigned int proc_number) |
| bool | setPriority (int prio) |
Protected Member Functions | |
| virtual void | doUpdate () |
Private Attributes | |
| Client * | m_client |
| MeshUpdateQueue * | m_queue_in |
| MeshUpdateManager * | m_manager |
| int | m_generation_interval |
Additional Inherited Members | |
Static Public Member Functions inherited from Thread | |
| static Thread * | getCurrentThread () |
| static void | setName (const std::string &name) |
| static unsigned int | getNumberOfProcessors () |
Protected Attributes inherited from Thread | |
| std::string | m_name |
| MeshUpdateWorkerThread::MeshUpdateWorkerThread | ( | Client * | client, |
| MeshUpdateQueue * | queue_in, | ||
| MeshUpdateManager * | manager ) |
References g_settings, Settings::getU16(), m_generation_interval, and rangelim.
Here is the call graph for this function:
|
protectedvirtual |
Implements UpdateThread.
References MeshUpdateResult::ack_list, QueuedMeshUpdate::ack_list, QueuedMeshUpdate::data, MeshUpdateQueue::done(), g_profiler, get_solid_sides(), m_client, m_generation_interval, m_manager, m_queue_in, MeshUpdateResult::map_blocks, QueuedMeshUpdate::map_blocks, MeshUpdateResult::mesh, MeshUpdateResult::p, QueuedMeshUpdate::p, MeshUpdateQueue::pop(), MeshUpdateManager::putResult(), sleep_ms, MeshUpdateResult::solid_sides, porting::TriggerMemoryTrim(), MeshUpdateResult::urgent, and QueuedMeshUpdate::urgent.
Here is the call graph for this function:
|
private |
Referenced by doUpdate().
|
private |
Referenced by MeshUpdateWorkerThread(), and doUpdate().
|
private |
Referenced by doUpdate().
|
private |
Referenced by doUpdate().