Nebula
Toggle main menu visibility
Loading...
Searching...
No Matches
resourceloaderthread.h
Go to the documentation of this file.
1
#pragma once
2
//------------------------------------------------------------------------------
9
//------------------------------------------------------------------------------
10
#include "
threading/thread.h
"
11
#include "
threading/safequeue.h
"
12
#include <functional>
13
#include "
resourceid.h
"
14
15
namespace
IO
16
{
17
class
IoServer
;
18
}
19
20
namespace
Resources
21
{
22
class
ResourceLoaderThread
:
public
Threading::Thread
23
{
24
__DeclareClass
(
ResourceLoaderThread
);
25
public
:
27
ResourceLoaderThread
();
29
virtual
~ResourceLoaderThread
();
30
32
void
Wait
();
33
34
private
:
35
friend
class
ResourceLoader
;
36
38
void
DoWork
()
override
;
40
virtual
void
EmitWakeupSignal
()
override
;
41
42
Threading::SafeQueue
<std::function<void()>>
jobs
;
43
Threading::Event
completeEvent
;
44
Ptr<IO::IoServer>
ioServer
;
45
};
46
}
// namespace Resources
IO::IoServer
The central server object of the IO subsystem offers the following services:
Definition
ioserver.h:43
Ptr
Nebula's smart pointer class which manages the life time of RefCounted objects.
Definition
ptr.h:38
Resources::ResourceLoaderThread::jobs
Threading::SafeQueue< std::function< void()> > jobs
Definition
resourceloaderthread.h:42
Resources::ResourceLoaderThread::EmitWakeupSignal
virtual void EmitWakeupSignal() override
emit wakeup signal
Definition
resourceloaderthread.cc:70
Resources::ResourceLoaderThread::DoWork
void DoWork() override
perform work
Definition
resourceloaderthread.cc:39
Resources::ResourceLoaderThread::__DeclareClass
__DeclareClass(ResourceLoaderThread)
Resources::ResourceLoaderThread::ioServer
Ptr< IO::IoServer > ioServer
Definition
resourceloaderthread.h:44
Resources::ResourceLoaderThread::Wait
void Wait()
wait for the thread to be done (must be called from outside this thread!)
Definition
resourceloaderthread.cc:79
Resources::ResourceLoaderThread::completeEvent
Threading::Event completeEvent
Definition
resourceloaderthread.h:43
Resources::ResourceLoaderThread::ResourceLoader
friend class ResourceLoader
Definition
resourceloaderthread.h:35
Resources::ResourceLoaderThread::~ResourceLoaderThread
virtual ~ResourceLoaderThread()
destructor
Definition
resourceloaderthread.cc:27
Resources::ResourceLoaderThread::ResourceLoaderThread
ResourceLoaderThread()
constructor
Definition
resourceloaderthread.cc:17
Threading::SafeQueue
Thread-safe version of Util::Queue.
Definition
safequeue.h:27
IO
Instances of wrapped stream classes.
Definition
multiplayerfeatureunit.cc:324
Resources
A resource is a container for some type of file which is loaded.
Definition
resource.cc:9
resourceid.h
safequeue.h
thread.h
code
resource
resources
resourceloaderthread.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.