Re-exports§
pub use crate::render_features::ExtractResources;
pub use crate::render_features::FramePacketData;
pub use crate::render_features::FramePacketSize;
pub use crate::render_features::PreparedRenderData;
pub use crate::render_features::RenderFeature;
pub use crate::render_features::RenderFeatureDebugConstants;
pub use crate::render_features::RenderFeatureExtractJob;
pub use crate::render_features::RenderFeatureFramePacket;
pub use crate::render_features::RenderFeatureIndex;
pub use crate::render_features::RenderFeaturePrepareJob;
pub use crate::render_features::RenderFeatureSubmitNode;
pub use crate::render_features::RenderFeatureSubmitNodeBlock;
pub use crate::render_features::RenderFeatureSubmitPacket;
pub use crate::render_features::RenderFeatureViewPacket;
pub use crate::render_features::RenderFeatureViewSubmitPacket;
pub use crate::render_features::RenderFeatureWriteJob;
pub use crate::render_features::RenderObjectHandle;
pub use crate::render_features::RenderObjectId;
pub use crate::render_features::RenderObjectInstanceId;
pub use crate::render_features::RenderObjectInstanceObjectIds;
pub use crate::render_features::RenderObjectInstancePerViewId;
pub use crate::render_features::RenderObjectsMap;
pub use crate::render_features::RenderPhase;
pub use crate::render_features::RenderPhaseIndex;
pub use crate::render_features::RenderRegistry;
pub use crate::render_features::RenderRegistryBuilder;
pub use crate::render_features::RenderView;
pub use crate::render_features::RenderViewIndex;
pub use crate::render_features::RenderViewSet;
pub use crate::render_features::RenderViewSubmitNodeCount;
pub use crate::render_features::RenderViewVisibilityQuery;
pub use crate::render_features::SubmitNode;
pub use crate::render_features::SubmitNodeBlocks;
pub use crate::render_features::SubmitNodeId;
pub use crate::render_features::SubmitNodeSortKey;
pub use crate::render_features::SubmitPacketData;
pub use crate::render_features::ViewFrameIndex;
pub use crate::render_features::ViewPacketSize;
pub use crate::render_features::ViewPhase;
pub use crate::render_features::ViewPhaseSubmitNodeBlock;
pub use crate::render_features::ViewVisibilityJob;
pub use crate::render_features::VisibleRenderObjects;
pub use crate::visibility::ObjectId;
pub use crate::visibility::VisibilityResource;
pub use crate::render_features::RenderFeatureFramePacketAsConcrete;
pub use crate::render_features::RenderFeatureFramePacketIntoConcrete;
pub use crate::render_features::RenderFeatureSubmitPacketAsConcrete;
pub use crate::render_features::RenderFeatureSubmitPacketIntoConcrete;
pub use crate::render_features::RenderFeatureViewPacketAsConcrete;
pub use crate::render_features::RenderFeatureViewPacketIntoConcrete;
pub use crate::render_features::RenderFeatureViewSubmitPacketAsConcrete;
pub use crate::render_features::RenderFeatureViewSubmitPacketIntoConcrete;
pub use crate::render_features::ExtractJob;
pub use crate::render_features::ExtractJobEntryPoints;
pub use crate::render_features::FramePacket;
pub use crate::render_features::PrepareJob;
pub use crate::render_features::PrepareJobEntryPoints;
pub use crate::render_features::RenderObjectInstance;
pub use crate::render_features::RenderObjectInstancePerView;
pub use crate::render_features::SubmitNodeBlock;
pub use crate::render_features::SubmitPacket;
pub use crate::render_features::ViewPacket;
pub use crate::render_features::ViewSubmitPacket;
pub use crate::render_features::DefaultJobContext;
pub use crate::render_features::ExtractPerFrameContext;
pub use crate::render_features::ExtractPerViewContext;
pub use crate::render_features::ExtractRenderObjectInstanceContext;
pub use crate::render_features::ExtractRenderObjectInstancePerViewContext;
pub use crate::render_features::PreparePerFrameContext;
pub use crate::render_features::PreparePerViewContext;
pub use crate::render_features::PrepareRenderObjectInstanceContext;
pub use crate::render_features::PrepareRenderObjectInstancePerViewContext;
pub use crate::render_features::RenderJobBeginExecuteGraphContext;
pub use crate::render_features::RenderJobCommandBufferContext;
pub use crate::render_features::RenderJobExtractAllocationContext;
pub use crate::render_features::RenderJobExtractContext;
pub use crate::render_features::RenderJobPrepareContext;
pub use crate::render_features::RenderJobWriteContext;
pub use crate::render_features::RenderObjectsJobContext;
Structs§
- A thread-safe container that does not require default initialization. The cell may be initialized with
set
and then retrieved as a reference withget
. Callingset
is thread-safe. The cell will panic if theset
function is called more than once. The cell will only drop initialized elements. - A fixed-size array with
capacity
determined at run-time. The elements of the array are uninitialized. Elements may be initialized withset
and then retrieved as a reference withget
. Callingset
is thread-safe. The array will panic if thecapacity
is exceeded, or theindex
is out of range, or theset
function is called more than once on an index whenT
is not zero-sized. The array will only drop initialized elements. - A fixed-size stack with
capacity
determined at run-time. The elements of the stack are uninitialized. Elements may be initialized withpush
and then retrieved as a reference withget
.push
returns the index of the element in the stack. The caller may reserve space for multiple elements withreserve_uninit
. Reserved elements must be initialized withset
. Callingpush
,reserve_uninit
, orset
is thread-safe. The stack will panic if thecapacity
is exceeded, or theindex
is out of range, or theset
function is called more than once on an index whenT
is not zero-sized, or if theset
function is called on an index that was not reserved by a prior call toreserve_uninit
. The stack will only drop initialized elements. - A custom cell container that is a
RefCell
with thread-safety.
Type Aliases§
- A mutual exclusion primitive useful for protecting shared data
- An RAII implementation of a “scoped lock” of a mutex. When this structure is dropped (falls out of scope), the lock will be unlocked.
- A reader-writer lock
- RAII structure used to release the shared read access of a lock when dropped.
- RAII structure used to release the exclusive write access of a lock when dropped.