Skip to main content

RuntimeInfo

Struct RuntimeInfo 

Source
pub struct RuntimeInfo {
Show 13 fields pub stage_words: [u32; 4], pub min_wave_lanes: u32, pub max_wave_lanes: u32, pub stage: u8, pub uses_view_id: bool, pub stage_data: u16, pub element_counts: [u8; 3], pub input_vectors: u8, pub output_vectors: [u8; 4], pub num_threads: Option<[u32; 3]>, pub entry_name: Option<u32>, pub group_shared_bytes: Option<u32>, pub size: u32,
}
Expand description

The runtime information of a PSV0 part.

Fields§

§stage_words: [u32; 4]

The stage-dependent 16 bytes, as four words (see the module documentation).

§min_wave_lanes: u32

The smallest wave lane count the program expects (0 where it states none).

§max_wave_lanes: u32

The largest wave lane count the program expects (u32::MAX where it states none).

§stage: u8

The shader kind (0 pixel, 1 vertex, 2 geometry, 3 hull, 4 domain, 5 compute, 13 mesh, …), as in the program header.

§uses_view_id: bool

The program uses SV_ViewID.

§stage_data: u16

A geometry program’s largest output vertex count; in the low byte a hull or domain program’s patch-constant vector count.

§element_counts: [u8; 3]

The input, output and patch-constant element counts as stored (the lengths of Psv::inputs and the others).

§input_vectors: u8

How many input vectors (registers) the program reads.

§output_vectors: [u8; 4]

How many output vectors it writes, per stream.

§num_threads: Option<[u32; 3]>

The thread group size, from 48 bytes of runtime info.

§entry_name: Option<u32>

The offset of the entry point’s name in the string table, from 52 bytes of runtime info.

§group_shared_bytes: Option<u32>

The bytes of group-shared memory a compute, mesh or amplification program uses, from 56 bytes of runtime info.

§size: u32

The size of the runtime info in bytes (36, 48, 52 or 56), which says which of its versions the part holds.

Trait Implementations§

Source§

impl Clone for RuntimeInfo

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Copy for RuntimeInfo

Source§

impl Debug for RuntimeInfo

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Eq for RuntimeInfo

Source§

impl PartialEq for RuntimeInfo

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for RuntimeInfo

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
where ST: ?Sized, DT: ?Sized,

Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Read<Exclusive, BecauseExclusive> for T
where T: ?Sized,

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.