Nebula
Toggle main menu visibility
Loading...
Searching...
No Matches
threadsaferendereventhandler.h
Go to the documentation of this file.
1
#pragma once
2
//------------------------------------------------------------------------------
14
#include "
coregraphics/rendereventhandler.h
"
15
#include "
threading/safequeue.h
"
16
17
//------------------------------------------------------------------------------
18
namespace
CoreGraphics
19
{
20
class
ThreadSafeRenderEventHandler
:
public
RenderEventHandler
21
{
22
__DeclareClass
(
ThreadSafeRenderEventHandler
);
23
public
:
25
ThreadSafeRenderEventHandler
();
27
virtual
~ThreadSafeRenderEventHandler
();
29
virtual
bool
PutEvent
(
const
RenderEvent
& event);
31
void
HandlePendingEvents
();
32
33
protected
:
35
virtual
bool
HandleEvent
(
const
RenderEvent
& event);
36
37
Threading::SafeQueue<RenderEvent>
eventQueue
;
38
Util::Array<RenderEvent>
tmpPendingEvents
;
39
};
40
41
}
// namespace CoreGraphics
42
//------------------------------------------------------------------------------
43
CoreGraphics::RenderEventHandler::RenderEventHandler
RenderEventHandler()
constructor
Definition
rendereventhandler.cc:16
CoreGraphics::RenderEvent
Render events are sent by the RenderDevice to registered render event handlers.
Definition
renderevent.h:19
CoreGraphics::ThreadSafeRenderEventHandler::__DeclareClass
__DeclareClass(ThreadSafeRenderEventHandler)
CoreGraphics::ThreadSafeRenderEventHandler::~ThreadSafeRenderEventHandler
virtual ~ThreadSafeRenderEventHandler()
destructor
Definition
threadsaferendereventhandler.cc:26
CoreGraphics::ThreadSafeRenderEventHandler::HandlePendingEvents
void HandlePendingEvents()
handle all pending events (called by consumer thread)
Definition
threadsaferendereventhandler.cc:53
CoreGraphics::ThreadSafeRenderEventHandler::ThreadSafeRenderEventHandler
ThreadSafeRenderEventHandler()
constructor
Definition
threadsaferendereventhandler.cc:18
CoreGraphics::ThreadSafeRenderEventHandler::tmpPendingEvents
Util::Array< RenderEvent > tmpPendingEvents
Definition
threadsaferendereventhandler.h:38
CoreGraphics::ThreadSafeRenderEventHandler::eventQueue
Threading::SafeQueue< RenderEvent > eventQueue
Definition
threadsaferendereventhandler.h:37
CoreGraphics::ThreadSafeRenderEventHandler::HandleEvent
virtual bool HandleEvent(const RenderEvent &event)
called when an event should be processed, override this method in your subclass
Definition
threadsaferendereventhandler.cc:71
CoreGraphics::ThreadSafeRenderEventHandler::PutEvent
virtual bool PutEvent(const RenderEvent &event)
called by RenderDevice when an event happens
Definition
threadsaferendereventhandler.cc:38
Threading::SafeQueue
Thread-safe version of Util::Queue.
Definition
safequeue.h:27
Util::Array
Nebula's dynamic array class.
Definition
array.h:61
CoreGraphics
Acceleration structures are used to enable ray tracing on the GPU by dividing the scene into a BVH.
Definition
accelerationstructure.h:24
rendereventhandler.h
safequeue.h
code
render
coregraphics
threadsaferendereventhandler.h
Generated on
for Nebula. Dark theme by
Tilen Majerle
. All rights reserved.