Skip to main content

Statistics

Struct Statistics 

Source
pub struct Statistics {
    pub words: Vec<u32>,
}
Expand description

The counters of a STAT part, as stored.

Fields§

§words: Vec<u32>

Every word of the part.

Implementations§

Source§

impl Statistics

Source

pub fn instructions(&self) -> Option<u32>

Word 0: the program’s instructions, declarations not counted (equal to the decoder’s instruction count in all 466 containers that have the part and decode).

Source

pub fn temp_registers(&self) -> Option<u32>

Word 1: the temporary registers: the largest dcl_temps of the program (a hull program declares them once a phase), the only one in the other stages; equal to the decoder’s in the same 466 containers and the fixtures.

Source

pub fn declarations(&self) -> Option<u32>

Word 3: the declarations (D3D11_SHADER_DESC::DclCount). It is not a simple sum of the declaration opcodes.

Source

pub fn float_instructions(&self) -> Option<u32>

Word 4: the floating-point instructions.

Source

pub fn int_instructions(&self) -> Option<u32>

Word 5: the signed-integer instructions.

Source

pub fn uint_instructions(&self) -> Option<u32>

Word 6: the unsigned-integer instructions.

Source

pub fn static_flow_control(&self) -> Option<u32>

Word 7: the static flow control instructions.

Source

pub fn dynamic_flow_control(&self) -> Option<u32>

Word 8: the dynamic flow control instructions.

Source

pub fn texture_normal(&self) -> Option<u32>

Word 14: the texture instructions that sample normally (sample, gather4, …).

Source

pub fn texture_load(&self) -> Option<u32>

Word 15: the texture load instructions.

Source

pub fn texture_comparison(&self) -> Option<u32>

Word 16: the comparison texture instructions.

Source

pub fn texture_gradient(&self) -> Option<u32>

Word 18: the instructions that sample with explicit gradients (sample_d; equal to the decoder’s count in the same 466 containers).

Source

pub fn movc_instructions(&self) -> Option<u32>

Word 20: the movc instructions (equal to the decoder’s count of them in all 466 containers that have the part and decode, the 21 small programs among them).

Source

pub fn sample_frequency(&self) -> Option<u32>

Word 28: 1 for a pixel program that runs once per sample (an input interpolated per sample, or the sample index), 0 otherwise; the disassembler’s “runs at sample frequency” note follows it.

Source

pub fn control_points(&self) -> Option<u32>

Word 30: a hull program’s output control points, a domain program’s input control points.

Source

pub fn tessellator_output_primitive(&self) -> Option<u32>

Word 31: a hull program’s tessellator output primitive (D3D_TESSELLATOR_OUTPUT_PRIMITIVE: 1 point, 2 line, 3 clockwise triangles, 4 counter-clockwise).

Source

pub fn tessellator_partitioning(&self) -> Option<u32>

Word 32: a hull program’s tessellator partitioning (D3D_TESSELLATOR_PARTITIONING: 1 integer, 2 power of two, 3 odd fractional, 4 even fractional).

Source

pub fn tessellator_domain(&self) -> Option<u32>

Word 33: the tessellator domain of a hull or domain program (D3D_TESSELLATOR_DOMAIN: 1 isoline, 2 triangle, 3 quad).

Trait Implementations§

Source§

impl Clone for Statistics

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 Debug for Statistics

Source§

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

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

impl Eq for Statistics

Source§

impl PartialEq for Statistics

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 Statistics

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.