KiCad PCB EDA Suite
Loading...
Searching...
No Matches
KIGFX::GAL_MODERN::SCENE_LAYER Struct Reference

Public Attributes

float depth = 0.0f
 
bool hasNegatives = false
 
bool inOrder = false
 declared, so it has a place in the draw order
 
bool visible = true
 hidden layers keep their groups but are not uploaded
 
RHI_LAYER_DIM dim
 
bool overlayAlpha = false
 see SetSceneLayerOverlayAlpha
 
SCENE_ARENA< RHI_INSTANCE > instances [ARENA_INSTANCE_COUNT]
 
SCENE_ARENA< RHI_VERTEX > polygons
 
std::vector< int > residents
 groups holding a slot here
 
std::vector< int > bitmapResidents
 the residents that carry bitmap quads
 
std::optional< std::unordered_multimap< size_t, int > > retainedPrefixIndex
 
uint32_t alphaCount [256] = {}
 Elements per alpha value.
 
int bakedAlpha = -1
 hoisted alpha, or -1 when elements keep their own
 
bool alphaStale = false
 
bool translucent = false
 some element is drawn with less than full alpha
 
std::vector< POLARITY_RUN > runs
 The layer's content in the order and polarity it was placed in.
 
bool runsStale = false
 
uint32_t knockoutGroups = 0
 residents recorded as knockouts
 
std::shared_ptr< const RHI_RUN_TABLE > cullRuns
 Bounds of the arenas as last uploaded, for culling off-screen runs.
 
size_t cullCounted [ARENA_COUNT] = {}
 Elements each arena held when cullRuns was counted.
 

Detailed Description

Definition at line 684 of file gal_modern.h.

Member Data Documentation

◆ alphaCount

uint32_t KIGFX::GAL_MODERN::SCENE_LAYER::alphaCount[256] = {}

Elements per alpha value.

A layer whose elements all share one translucent alpha is composited with that alpha and stores opaque elements, as the full rebuild does.

Definition at line 705 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::countGroupAlpha(), and KIGFX::GAL_MODERN::flushScene().

◆ alphaStale

bool KIGFX::GAL_MODERN::SCENE_LAYER::alphaStale = false

◆ bakedAlpha

int KIGFX::GAL_MODERN::SCENE_LAYER::bakedAlpha = -1

hoisted alpha, or -1 when elements keep their own

Definition at line 706 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::flushScene(), and KIGFX::GAL_MODERN::writeGroupToScene().

◆ bitmapResidents

std::vector<int> KIGFX::GAL_MODERN::SCENE_LAYER::bitmapResidents

the residents that carry bitmap quads

Definition at line 698 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::placeGroupInScene(), and KIGFX::GAL_MODERN::removeGroupFromScene().

◆ cullCounted

size_t KIGFX::GAL_MODERN::SCENE_LAYER::cullCounted[ARENA_COUNT] = {}

Elements each arena held when cullRuns was counted.

Definition at line 722 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::updateSceneCullRuns().

◆ cullRuns

std::shared_ptr<const RHI_RUN_TABLE> KIGFX::GAL_MODERN::SCENE_LAYER::cullRuns

Bounds of the arenas as last uploaded, for culling off-screen runs.

Definition at line 719 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::flushScene(), and KIGFX::GAL_MODERN::updateSceneCullRuns().

◆ depth

float KIGFX::GAL_MODERN::SCENE_LAYER::depth = 0.0f

◆ dim

RHI_LAYER_DIM KIGFX::GAL_MODERN::SCENE_LAYER::dim

◆ hasNegatives

bool KIGFX::GAL_MODERN::SCENE_LAYER::hasNegatives = false

◆ inOrder

bool KIGFX::GAL_MODERN::SCENE_LAYER::inOrder = false

declared, so it has a place in the draw order

Definition at line 688 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::SetSceneLayerState().

◆ instances

◆ knockoutGroups

uint32_t KIGFX::GAL_MODERN::SCENE_LAYER::knockoutGroups = 0

residents recorded as knockouts

Definition at line 716 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::buildSceneRuns(), KIGFX::GAL_MODERN::placeGroupInScene(), and KIGFX::GAL_MODERN::removeGroupFromScene().

◆ overlayAlpha

bool KIGFX::GAL_MODERN::SCENE_LAYER::overlayAlpha = false

◆ polygons

◆ residents

◆ retainedPrefixIndex

std::optional<std::unordered_multimap<size_t, int> > KIGFX::GAL_MODERN::SCENE_LAYER::retainedPrefixIndex

◆ runs

std::vector<POLARITY_RUN> KIGFX::GAL_MODERN::SCENE_LAYER::runs

The layer's content in the order and polarity it was placed in.

Kept only where that order matters, and such a layer is drawn through the temp target.

Definition at line 714 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::buildSceneRuns(), and KIGFX::GAL_MODERN::sceneLayerComposited().

◆ runsStale

◆ translucent

bool KIGFX::GAL_MODERN::SCENE_LAYER::translucent = false

some element is drawn with less than full alpha

Definition at line 708 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::flushScene(), and KIGFX::GAL_MODERN::writeGroupToScene().

◆ visible

bool KIGFX::GAL_MODERN::SCENE_LAYER::visible = true

hidden layers keep their groups but are not uploaded

Definition at line 689 of file gal_modern.h.

Referenced by KIGFX::GAL_MODERN::appendSceneRanges(), KIGFX::GAL_MODERN::flushScene(), and KIGFX::GAL_MODERN::SetSceneLayerState().


The documentation for this struct was generated from the following file: