pub struct Range {
pub class: u8,
pub id: u32,
pub lower: u32,
pub count: u32,
pub extra: u32,
pub space: u32,
pub element: Option<u32>,
pub stride: Option<u32>,
pub counter: bool,
pub variable: Option<ValueId>,
}Expand description
A bound resource range: class (0 SRV, 1 UAV, 2 constant buffer, 3 sampler), range id, first register, count.
Fields§
§class: u80 SRV, 1 UAV, 2 constant buffer, 3 sampler.
id: u32The range id the resource operations name the range by.
lower: u32The first register of the range.
count: u32The number of registers; u32::MAX where the range is unbounded.
extra: u32Constant buffers: their size in bytes; SRVs and UAVs: their shape (DxilResourceKind, 2 a 2D texture);
samplers: their kind (0 default, 1 comparison, 2 mono).
space: u32The register space.
element: Option<u32>An SRV’s or UAV’s element type tag (DxilComponentType), where its tags state one.
stride: Option<u32>A structured SRV’s or UAV’s element stride in bytes, where its tags state one.
counter: boolAn unordered-access view with a hidden counter (an append or consume buffer, IncrementCounter).
variable: Option<ValueId>The module global a library names the resource by (a program of a library makes its handles from the global’s value).