Skip to main content

GpaSampleBeginInfoAMD

Struct GpaSampleBeginInfoAMD 

Source
pub struct GpaSampleBeginInfoAMD<'a> {
Show 16 fields pub s_type: StructureType, pub p_next: *const c_void, pub sample_type: GpaSampleTypeAMD, pub sample_internal_operations: Bool32, pub cache_flush_on_counter_collection: Bool32, pub sq_shader_mask_enable: Bool32, pub sq_shader_mask: GpaSqShaderStageFlagsAMD, pub perf_counter_count: u32, pub p_perf_counters: *const GpaPerfCounterAMD, pub streaming_perf_trace_sample_interval: u32, pub perf_counter_device_memory_limit: DeviceSize, pub sq_thread_trace_enable: Bool32, pub sq_thread_trace_suppress_instruction_tokens: Bool32, pub sq_thread_trace_device_memory_limit: DeviceSize, pub timing_pre_sample: PipelineStageFlags, pub timing_post_sample: PipelineStageFlags, /* private fields */
}
Expand description

Native structure VkGpaSampleBeginInfoAMD.

Khronos reference: VkGpaSampleBeginInfoAMD

Fields§

§s_type: StructureType

Native field sType.

§p_next: *const c_void

Native field pNext.

§sample_type: GpaSampleTypeAMD

Native field sampleType.

§sample_internal_operations: Bool32

Native field sampleInternalOperations.

§cache_flush_on_counter_collection: Bool32

Native field cacheFlushOnCounterCollection.

§sq_shader_mask_enable: Bool32

Native field sqShaderMaskEnable.

§sq_shader_mask: GpaSqShaderStageFlagsAMD

Native field sqShaderMask.

§perf_counter_count: u32

Native field perfCounterCount.

§p_perf_counters: *const GpaPerfCounterAMD

Native field pPerfCounters.

§streaming_perf_trace_sample_interval: u32

Native field streamingPerfTraceSampleInterval.

§perf_counter_device_memory_limit: DeviceSize

Native field perfCounterDeviceMemoryLimit.

§sq_thread_trace_enable: Bool32

Native field sqThreadTraceEnable.

§sq_thread_trace_suppress_instruction_tokens: Bool32

Native field sqThreadTraceSuppressInstructionTokens.

§sq_thread_trace_device_memory_limit: DeviceSize

Native field sqThreadTraceDeviceMemoryLimit.

§timing_pre_sample: PipelineStageFlags

Native field timingPreSample.

§timing_post_sample: PipelineStageFlags

Native field timingPostSample.

Implementations§

Source§

impl<'a> GpaSampleBeginInfoAMD<'a>

Source

pub fn new() -> Self

Construct the record with its canonical sType tag and default native state.

Source

pub fn set_sample_type(self, value: GpaSampleTypeAMD) -> Self

Set native field sampleType without native effects.

Source

pub fn set_sample_internal_operations(self, value: Bool32) -> Self

Set native field sampleInternalOperations without native effects.

Source

pub fn set_cache_flush_on_counter_collection(self, value: Bool32) -> Self

Set native field cacheFlushOnCounterCollection without native effects.

Source

pub fn set_sq_shader_mask_enable(self, value: Bool32) -> Self

Set native field sqShaderMaskEnable without native effects.

Source

pub fn set_sq_shader_mask(self, value: GpaSqShaderStageFlagsAMD) -> Self

Set native field sqShaderMask without native effects.

Source

pub fn set_perf_counter_count(self, value: u32) -> Self

Set native count perfCounterCount directly without checking associated pointer extents. Use the borrowed array helpers to derive matching storage and counts together. Direct count edits support null-query/dynamic-state paths and remain a native-call validity obligation, including after earlier borrowed setters.

Source

pub fn set_perf_counters( self, value: &'a [GpaPerfCounterAMD], ) -> Result<Self, ConstructionError>

Borrow pPerfCounters and set checked native count perfCounterCount. The borrow covers this storage only; nested raw pointers, format, alignment and asynchronous retention remain native-call obligations. Output storage must be initialized; returned sizes do not enlarge its capacity.

§Errors

Returns a construction error if the length exceeds the native count width.

Source

pub fn set_streaming_perf_trace_sample_interval(self, value: u32) -> Self

Set native field streamingPerfTraceSampleInterval without native effects.

Source

pub fn set_perf_counter_device_memory_limit(self, value: DeviceSize) -> Self

Set native field perfCounterDeviceMemoryLimit without native effects.

Source

pub fn set_sq_thread_trace_enable(self, value: Bool32) -> Self

Set native field sqThreadTraceEnable without native effects.

Source

pub fn set_sq_thread_trace_suppress_instruction_tokens( self, value: Bool32, ) -> Self

Set native field sqThreadTraceSuppressInstructionTokens without native effects.

Source

pub fn set_sq_thread_trace_device_memory_limit(self, value: DeviceSize) -> Self

Set native field sqThreadTraceDeviceMemoryLimit without native effects.

Source

pub fn set_timing_pre_sample(self, value: PipelineStageFlags) -> Self

Set native field timingPreSample without native effects.

Source

pub fn set_timing_post_sample(self, value: PipelineStageFlags) -> Self

Set native field timingPostSample without native effects.

Source

pub fn push_next<T: Extends<Self>>( self, next: &'a mut T, ) -> Result<Self, ConstructionError>

Prepend one registry-compatible node, retaining its exclusive borrow.

The node must have a null p_next and both headers must have canonical tags. Existing links are never traversed and remain written after the borrow ends. Type compatibility does not establish enabled extensions or Vulkan valid usage.

§Errors

Returns a construction error for a changed structure tag or already-linked node.

Trait Implementations§

Source§

impl<'a> Default for GpaSampleBeginInfoAMD<'a>

Source§

fn default() -> Self

Returns the “default value” for a type. Read more

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<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, 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.