Nebula
Loading...
Searching...
No Matches
Visibility::VisibilitySystem Class Reference

#include <visibilitysystem.h>

Inherited by Visibility::BoxSystem, Visibility::BruteforceSystem, Visibility::OctreeSystem, Visibility::PortalSystem, and Visibility::QuadtreeSystem.

Classes

struct  Entity
 
struct  Observer
 

Public Member Functions

 VisibilitySystem ()
 Constructor.
 
virtual void PrepareObservers (const Math::mat4 *transforms, bool *orthoFlags, Util::Array< Math::ClipStatus::Type > *results, const SizeT count)
 setup observers
 
virtual void PrepareEntities (const Math::bbox *transforms, const uint32 *ranges, const Graphics::GraphicsEntityId *entities, const uint32_t *entityFlags, const SizeT count)
 prepare system with entities to insert into the structure
 
virtual void Run (const Threading::AtomicCounter *previousSystemCompletionCounters, const Util::FixedArray< const Threading::AtomicCounter *, true > &extraCounters)
 run system
 
const Threading::AtomicCounter GetCompletionCounter (IndexT i) const
 Return completion counter for an observer.
 
const Threading::AtomicCounterGetCompletionCounters () const
 Return completion counter for all observers.
 

Protected Attributes

Math::vec3 center
 
Math::bbox boundingbox
 
struct Visibility::VisibilitySystem::Observer obs
 
struct Visibility::VisibilitySystem::Entity ent
 

Constructor & Destructor Documentation

◆ VisibilitySystem()

Visibility::VisibilitySystem::VisibilitySystem ( )

Constructor.

Member Function Documentation

◆ GetCompletionCounter()

const Threading::AtomicCounter Visibility::VisibilitySystem::GetCompletionCounter ( IndexT i) const

Return completion counter for an observer.

◆ GetCompletionCounters()

const Threading::AtomicCounter * Visibility::VisibilitySystem::GetCompletionCounters ( ) const

Return completion counter for all observers.

◆ PrepareEntities()

void Visibility::VisibilitySystem::PrepareEntities ( const Math::bbox * transforms,
const uint32 * ranges,
const Graphics::GraphicsEntityId * entities,
const uint32_t * entityFlags,
const SizeT count )
virtual

prepare system with entities to insert into the structure

◆ PrepareObservers()

void Visibility::VisibilitySystem::PrepareObservers ( const Math::mat4 * transforms,
bool * orthoFlags,
Util::Array< Math::ClipStatus::Type > * results,
const SizeT count )
virtual

setup observers

◆ Run()

void Visibility::VisibilitySystem::Run ( const Threading::AtomicCounter * previousSystemCompletionCounters,
const Util::FixedArray< const Threading::AtomicCounter *, true > & extraCounters )
virtual

run system

Reimplemented in Visibility::BruteforceSystem.

Member Data Documentation

◆ boundingbox

Math::bbox Visibility::VisibilitySystem::boundingbox
protected

◆ center

Math::vec3 Visibility::VisibilitySystem::center
protected

◆ ent

struct Visibility::VisibilitySystem::Entity Visibility::VisibilitySystem::ent
protected

◆ obs

struct Visibility::VisibilitySystem::Observer Visibility::VisibilitySystem::obs
protected

The documentation for this class was generated from the following files: