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.
Fields§
§s_type: StructureTypeNative field sType.
p_next: *const c_voidNative field pNext.
sample_type: GpaSampleTypeAMDNative field sampleType.
sample_internal_operations: Bool32Native field sampleInternalOperations.
cache_flush_on_counter_collection: Bool32Native field cacheFlushOnCounterCollection.
sq_shader_mask_enable: Bool32Native field sqShaderMaskEnable.
sq_shader_mask: GpaSqShaderStageFlagsAMDNative field sqShaderMask.
perf_counter_count: u32Native field perfCounterCount.
p_perf_counters: *const GpaPerfCounterAMDNative field pPerfCounters.
streaming_perf_trace_sample_interval: u32Native field streamingPerfTraceSampleInterval.
perf_counter_device_memory_limit: DeviceSizeNative field perfCounterDeviceMemoryLimit.
sq_thread_trace_enable: Bool32Native field sqThreadTraceEnable.
sq_thread_trace_suppress_instruction_tokens: Bool32Native field sqThreadTraceSuppressInstructionTokens.
sq_thread_trace_device_memory_limit: DeviceSizeNative field sqThreadTraceDeviceMemoryLimit.
timing_pre_sample: PipelineStageFlagsNative field timingPreSample.
timing_post_sample: PipelineStageFlagsNative field timingPostSample.
Implementations§
Source§impl<'a> GpaSampleBeginInfoAMD<'a>
impl<'a> GpaSampleBeginInfoAMD<'a>
Sourcepub fn new() -> Self
pub fn new() -> Self
Construct the record with its canonical sType tag and default native state.
Sourcepub fn set_sample_type(self, value: GpaSampleTypeAMD) -> Self
pub fn set_sample_type(self, value: GpaSampleTypeAMD) -> Self
Set native field sampleType without native effects.
Sourcepub fn set_sample_internal_operations(self, value: Bool32) -> Self
pub fn set_sample_internal_operations(self, value: Bool32) -> Self
Set native field sampleInternalOperations without native effects.
Sourcepub fn set_cache_flush_on_counter_collection(self, value: Bool32) -> Self
pub fn set_cache_flush_on_counter_collection(self, value: Bool32) -> Self
Set native field cacheFlushOnCounterCollection without native effects.
Sourcepub fn set_sq_shader_mask_enable(self, value: Bool32) -> Self
pub fn set_sq_shader_mask_enable(self, value: Bool32) -> Self
Set native field sqShaderMaskEnable without native effects.
Sourcepub fn set_sq_shader_mask(self, value: GpaSqShaderStageFlagsAMD) -> Self
pub fn set_sq_shader_mask(self, value: GpaSqShaderStageFlagsAMD) -> Self
Set native field sqShaderMask without native effects.
Sourcepub fn set_perf_counter_count(self, value: u32) -> Self
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.
Sourcepub fn set_perf_counters(
self,
value: &'a [GpaPerfCounterAMD],
) -> Result<Self, ConstructionError>
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.
Sourcepub fn set_streaming_perf_trace_sample_interval(self, value: u32) -> Self
pub fn set_streaming_perf_trace_sample_interval(self, value: u32) -> Self
Set native field streamingPerfTraceSampleInterval without native effects.
Sourcepub fn set_perf_counter_device_memory_limit(self, value: DeviceSize) -> Self
pub fn set_perf_counter_device_memory_limit(self, value: DeviceSize) -> Self
Set native field perfCounterDeviceMemoryLimit without native effects.
Sourcepub fn set_sq_thread_trace_enable(self, value: Bool32) -> Self
pub fn set_sq_thread_trace_enable(self, value: Bool32) -> Self
Set native field sqThreadTraceEnable without native effects.
Sourcepub fn set_sq_thread_trace_suppress_instruction_tokens(
self,
value: Bool32,
) -> Self
pub fn set_sq_thread_trace_suppress_instruction_tokens( self, value: Bool32, ) -> Self
Set native field sqThreadTraceSuppressInstructionTokens without native effects.
Sourcepub fn set_sq_thread_trace_device_memory_limit(self, value: DeviceSize) -> Self
pub fn set_sq_thread_trace_device_memory_limit(self, value: DeviceSize) -> Self
Set native field sqThreadTraceDeviceMemoryLimit without native effects.
Sourcepub fn set_timing_pre_sample(self, value: PipelineStageFlags) -> Self
pub fn set_timing_pre_sample(self, value: PipelineStageFlags) -> Self
Set native field timingPreSample without native effects.
Sourcepub fn set_timing_post_sample(self, value: PipelineStageFlags) -> Self
pub fn set_timing_post_sample(self, value: PipelineStageFlags) -> Self
Set native field timingPostSample without native effects.
Sourcepub fn push_next<T: Extends<Self>>(
self,
next: &'a mut T,
) -> Result<Self, ConstructionError>
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.