summaryrefslogblamecommitdiffstats
path: root/source/cChunkGenerator.h
blob: df29a3e608425092d85acbb4fcf7091303ff4e3b (plain) (tree)






















                                                                                                                                 
#pragma once

class cChunk;
class cChunkMap;
class cChunkGenerator
{
public:
	cChunkGenerator( cChunkMap* a_pChunkMap );
	~cChunkGenerator();

	void GenerateChunk( int a_X, int a_Z );

	cChunk* GetCurrentlyGenerating(); // WARNING - Be sure to Lock() before calling, and Unlock() after done with the chunk!
	void Lock();
	void Unlock();
private:
	static void GenerateThread( void* a_Params );

	cChunkMap* m_pChunkMap;

	struct sChunkGeneratorState;
	sChunkGeneratorState* m_pState;
};