31#define BLOCK_EMERGE_ALLOW_GEN (1 << 0)
32#define BLOCK_EMERGE_FORCE_QUEUE (1 << 1)
34#define EMERGE_DBG_OUT(x) { \
35 if (enable_mapgen_debug_info) \
36 infostream << "EmergeThread: " x << std::endl; \
184 bool ignore_queue_limits=
false);
191 void *callback_param);
235 void *callback_param,
236 bool *entry_already_exists);
Definition: mg_biome.h:94
Definition: mg_biome.h:211
Definition: mg_decoration.h:127
bool enable_mapgen_debug_info
Definition: emerge.h:138
OreManager * oremgr
Definition: emerge.h:223
BiomeGen * biomegen
Definition: emerge.h:221
MapSettingsManager * map_settings_mgr
Definition: emerge.h:154
std::vector< Mapgen * > m_mapgens
Definition: emerge.h:204
u32 gen_notify_on
Definition: emerge.h:141
~EmergeManager()
Definition: emerge.cpp:134
void stopThreads()
Definition: emerge.cpp:235
const BiomeManager * getBiomeManager() const
Definition: emerge.h:164
const OreManager * getOreManager() const
Definition: emerge.h:165
void reportCompletedEmerge(EmergeAction action)
Definition: emerge.cpp:439
OreManager * getWritableOreManager()
Definition: emerge.cpp:167
bool isBlockUnderground(v3s16 blockpos)
Definition: emerge.cpp:342
u32 m_qlimit_generate
Definition: emerge.h:214
void startThreads()
Definition: emerge.cpp:223
bool isBlockInQueue(v3s16 pos)
Definition: emerge.cpp:306
bool enqueueBlockEmergeEx(v3s16 blockpos, session_t peer_id, u16 flags, EmergeCompletionCallback callback, void *callback_param)
Definition: emerge.cpp:276
const NodeDefManager * ndef
Definition: emerge.h:137
bool isRunning()
Definition: emerge.cpp:254
BiomeManager * getWritableBiomeManager()
Definition: emerge.cpp:160
u32 m_qlimit_diskonly
Definition: emerge.h:213
std::set< u32 > gen_notify_on_deco_ids
Definition: emerge.h:142
Mapgen * getCurrentMapgen()
Definition: emerge.cpp:208
std::set< std::string > gen_notify_on_custom
Definition: emerge.h:143
void initMapgens(MapgenParams *mgparams)
Definition: emerge.cpp:189
SchematicManager * schemmgr
Definition: emerge.h:225
BiomeManager * biomemgr
Definition: emerge.h:222
EmergeThread * getOptimalThread()
Definition: emerge.cpp:419
static v3s16 getContainingChunk(v3s16 blockpos, s16 chunksize)
Definition: emerge.cpp:319
bool pushBlockEmergeData(v3s16 pos, u16 peer_requested, u16 flags, EmergeCompletionCallback callback, void *callback_param, bool *entry_already_exists)
Definition: emerge.cpp:348
std::mutex m_queue_mutex
Definition: emerge.h:208
u32 m_qlimit_total
Definition: emerge.h:212
bool m_threads_active
Definition: emerge.h:206
DISABLE_CLASS_COPY(EmergeManager)
SchematicManager * getWritableSchematicManager()
Definition: emerge.cpp:181
std::vector< EmergeThread * > m_threads
Definition: emerge.h:205
const DecorationManager * getDecorationManager() const
Definition: emerge.h:166
MapgenParams * mgparams
Definition: emerge.h:148
const SchematicManager * getSchematicManager() const
Definition: emerge.h:167
bool enqueueBlockEmerge(session_t peer_id, v3s16 blockpos, bool allow_generate, bool ignore_queue_limits=false)
Definition: emerge.cpp:260
std::map< v3s16, BlockEmergeData > m_blocks_enqueued
Definition: emerge.h:209
std::unordered_map< u16, u32 > m_peer_queue_count
Definition: emerge.h:210
bool popBlockEmergeData(v3s16 pos, BlockEmergeData *bedata)
Definition: emerge.cpp:396
const BiomeGen * getBiomeGen() const
Definition: emerge.h:161
MetricCounterPtr m_completed_emerge_counter[5]
Definition: emerge.h:217
DecorationManager * decomgr
Definition: emerge.h:224
int getSpawnLevelAtPoint(v2s16 p)
Definition: emerge.cpp:329
DecorationManager * getWritableDecorationManager()
Definition: emerge.cpp:174
bool enable_mapgen_debug_info
Definition: emerge.h:106
GenerateNotifier createNotifier() const
Definition: emerge.h:118
const std::set< u32 > * gen_notify_on_deco_ids
Definition: emerge.h:109
BiomeGen * biomegen
Definition: emerge.h:112
~EmergeParams()
Definition: emerge.cpp:47
DISABLE_CLASS_COPY(EmergeParams)
u32 gen_notify_on
Definition: emerge.h:108
OreManager * oremgr
Definition: emerge.h:114
BiomeManager * biomemgr
Definition: emerge.h:113
const NodeDefManager * ndef
Definition: emerge.h:105
DecorationManager * decomgr
Definition: emerge.h:115
const std::set< std::string > * gen_notify_on_custom
Definition: emerge.h:110
SchematicManager * schemmgr
Definition: emerge.h:116
Definition: emerge_internal.h:40
Definition: map_settings_manager.h:45
Definition: metricsbackend.h:54
This class is for getting the actual properties of nodes from their content ID.
Definition: nodedef.h:556
Definition: mg_schematic.h:132
Definition: settings.h:124
Definition: container.h:41
std::vector< std::pair< EmergeCompletionCallback, void * > > EmergeCallbackList
Definition: emerge.h:90
EmergeAction
Definition: emerge.h:65
@ EMERGE_FROM_DISK
Definition: emerge.h:69
@ EMERGE_FROM_MEMORY
Definition: emerge.h:68
@ EMERGE_GENERATED
Definition: emerge.h:70
@ EMERGE_CANCELLED
Definition: emerge.h:66
@ EMERGE_ERRORED
Definition: emerge.h:67
constexpr const char * emergeActionStrs[]
Definition: emerge.h:73
void(* EmergeCompletionCallback)(v3s16 blockpos, EmergeAction action, void *param)
Definition: emerge.h:82
core::vector2d< s16 > v2s16
Definition: irr_v2d.h:27
core::vector3d< s16 > v3s16
Definition: irr_v3d.h:28
std::shared_ptr< MetricCounter > MetricCounterPtr
Definition: metricsbackend.h:37
Definition: activeobjectmgr.cpp:26
u16 session_t
Definition: networkprotocol.h:251
u16 flags
Definition: emerge.h:94
u16 peer_requested
Definition: emerge.h:93
EmergeCallbackList callbacks
Definition: emerge.h:95
~BlockMakeData()
Definition: emerge.h:61
v3s16 blockpos_max
Definition: emerge.h:55
u64 seed
Definition: emerge.h:53
const NodeDefManager * nodedef
Definition: emerge.h:57
MMVManip * vmanip
Definition: emerge.h:52
UniqueQueue< v3s16 > transforming_liquid
Definition: emerge.h:56
v3s16 blockpos_min
Definition: emerge.h:54
Definition: l_mapgen.cpp:42
static std::string p(std::string path)
Definition: test_filesys.cpp:64