This is the documentation for Enlighten.

class Enlighten WorkerThreadData

class Enlighten::WorkerThreadData

Helper class for holding per-thread working data.

Note that each thread needs its own copy of the InputLights because they may set different visibility data for each light.

Variables

Name Description
void ** m_ThreadVisibilityPointers

List of visibility pointers for the current task.

void * m_WorkingMemory

Workspace memory for this thread.

Functions

Name Description
EnsureThreadVisibilityPointerListSize(Geo::u32)

Helper function to (re)allocate the list of visibility pointers, if necessary.

EnsureWorkingMemorySize(Geo::u32)

Helper function to (re)allocate the lighting workspace array, if necessary.

GetSizeOfWorkingMemory()

Returns the size of the currently reserved working memory for this thread.

NonCopyable(NonCopyable &&)

Defaulted to allow move.

operator=(NonCopyable &&)

Defaulted to allow move.


void Enlighten::WorkerThreadData::EnsureThreadVisibilityPointerListSize


public: void EnsureThreadVisibilityPointerListSize
(
    Geo::u32 minimumSize
)


Helper function to (re)allocate the list of visibility pointers, if necessary.


void Enlighten::WorkerThreadData::EnsureWorkingMemorySize


public: void EnsureWorkingMemorySize
(
    Geo::u32 minimumWorkspaceSize
)


Helper function to (re)allocate the lighting workspace array, if necessary.


Geo::u32 Enlighten::WorkerThreadData::GetSizeOfWorkingMemory


public: Geo::u32 GetSizeOfWorkingMemory() const


Returns the size of the currently reserved working memory for this thread.


Geo::NonCopyable::NonCopyable


public: NonCopyable
(
    NonCopyable &&
)


Defaulted to allow move.


NonCopyable& Geo::NonCopyable::operator=


public: NonCopyable & operator=
(
    NonCopyable &&
)


Defaulted to allow move.