1
0
Fork 0
mirror of https://github.com/luanti-org/luanti.git synced 2025-06-27 16:36:03 +00:00

Remove threads.h and replace its definitions with their C++11 equivalents (#5957)

This also changes threadProc's signature, since C++11 supports arbitrary
thread function signatures.
This commit is contained in:
ShadowNinja 2017-06-11 03:43:05 -04:00 committed by Loïc Blot
parent 5cc8ad946e
commit 6c5e5e2023
16 changed files with 82 additions and 160 deletions

View file

@ -386,7 +386,7 @@ public:
private:
// The id of the thread that is allowed to use irrlicht directly
threadid_t m_main_thread;
std::thread::id m_main_thread;
// The irrlicht device
IrrlichtDevice *m_device;
@ -445,7 +445,7 @@ TextureSource::TextureSource(IrrlichtDevice *device):
{
assert(m_device); // Pre-condition
m_main_thread = thr_get_current_thread_id();
m_main_thread = std::this_thread::get_id();
// Add a NULL TextureInfo as the first index, named ""
m_textureinfo_cache.push_back(TextureInfo(""));
@ -508,7 +508,7 @@ u32 TextureSource::getTextureId(const std::string &name)
/*
Get texture
*/
if (thr_is_current_thread(m_main_thread))
if (std::this_thread::get_id() == m_main_thread)
{
return generateTexture(name);
}
@ -616,7 +616,7 @@ u32 TextureSource::generateTexture(const std::string &name)
/*
Calling only allowed from main thread
*/
if (!thr_is_current_thread(m_main_thread)) {
if (std::this_thread::get_id() != m_main_thread) {
errorstream<<"TextureSource::generateTexture() "
"called not from main thread"<<std::endl;
return 0;
@ -695,7 +695,7 @@ video::ITexture* TextureSource::getTextureForMesh(const std::string &name, u32 *
Palette* TextureSource::getPalette(const std::string &name)
{
// Only the main thread may load images
sanity_check(thr_is_current_thread(m_main_thread));
sanity_check(std::this_thread::get_id() == m_main_thread);
if (name == "")
return NULL;
@ -771,7 +771,7 @@ void TextureSource::insertSourceImage(const std::string &name, video::IImage *im
{
//infostream<<"TextureSource::insertSourceImage(): name="<<name<<std::endl;
sanity_check(thr_is_current_thread(m_main_thread));
sanity_check(std::this_thread::get_id() == m_main_thread);
m_sourcecache.insert(name, img, true, m_device->getVideoDriver());
m_source_image_existence.set(name, true);