![]() |
XII Release 0.1.0
|
Copyright (c) Theophilus Eriata. All Rights Reserved. More...
#include <ScenePickingReadback.h>
Public Member Functions | |
| xiiResult | Poll (xiiUInt32 &out_uiCompletedSlot) |
| xiiResult | AddCapture (xiiRenderPipelinePassContext &context, xiiRenderGraphTextureHandle texture, xiiUInt32 &out_uiReservedSlot) |
| void | Invalidate () |
| Copyright (c) Theophilus Eriata. All Rights Reserved. | |
| bool | Matches (const xiiView &view) const |
| xiiSizeU32 | GetSize () const |
| xiiUInt32 | GetWordsPerPixel () const |
| xiiArrayPtr< const xiiUInt32 > | GetPixels () const |
Static Public Attributes | |
| static constexpr xiiUInt32 | SlotCount = 3 |
Copyright (c) Theophilus Eriata. All Rights Reserved.
Internal view-local capture transport shared by scene picking consumers. It owns only pixel and view snapshots; callers retain the matching native owner metadata in three slot tables. CPU frame-boundary access only. No submission or GPU wait occurs in this facility.
| xiiResult xiiScenePickingReadback::AddCapture | ( | xiiRenderPipelinePassContext & | context, |
| xiiRenderGraphTextureHandle | texture, | ||
| xiiUInt32 & | out_uiReservedSlot ) |
Requires Poll first. Supports R32UInt and RGBA32UInt, both single-sample 2D textures. Success with InvalidIndex means backpressure or a resize draining old captures. At most three captures are retained, including during repeated resizing and format changes.
| xiiResult xiiScenePickingReadback::Poll | ( | xiiUInt32 & | out_uiCompletedSlot | ) |
Publishes the newest completed image and returns its slot, or InvalidIndex when unchanged. Consume/swap that slot's metadata before AddCapture can reserve a slot again.