pub struct RenderPipelineDescriptor(/* private fields */);Implementations§
Source§impl RenderPipelineDescriptor
impl RenderPipelineDescriptor
Sourcepub fn alloc() -> Option<Self>
pub fn alloc() -> Option<Self>
Allocate a new render pipeline descriptor.
C++ equivalent: static RenderPipelineDescriptor* alloc()
Sourcepub fn init(self) -> Option<Self>
pub fn init(self) -> Option<Self>
Initialize the descriptor.
C++ equivalent: RenderPipelineDescriptor* init()
Sourcepub fn set_label(&self, label: &str)
pub fn set_label(&self, label: &str)
Set the label.
C++ equivalent: void setLabel(const NS::String* label)
Sourcepub fn vertex_function(&self) -> Option<Function>
pub fn vertex_function(&self) -> Option<Function>
Get the vertex function.
C++ equivalent: Function* vertexFunction() const
Sourcepub fn set_vertex_function(&self, function: Option<&Function>)
pub fn set_vertex_function(&self, function: Option<&Function>)
Set the vertex function.
C++ equivalent: void setVertexFunction(const MTL::Function* vertexFunction)
Sourcepub fn fragment_function(&self) -> Option<Function>
pub fn fragment_function(&self) -> Option<Function>
Get the fragment function.
C++ equivalent: Function* fragmentFunction() const
Sourcepub fn set_fragment_function(&self, function: Option<&Function>)
pub fn set_fragment_function(&self, function: Option<&Function>)
Set the fragment function.
C++ equivalent: void setFragmentFunction(const MTL::Function* fragmentFunction)
Sourcepub fn color_attachments(&self) -> RenderPipelineColorAttachmentDescriptorArray
pub fn color_attachments(&self) -> RenderPipelineColorAttachmentDescriptorArray
Get the color attachments array.
C++ equivalent: RenderPipelineColorAttachmentDescriptorArray* colorAttachments() const
Sourcepub fn depth_attachment_pixel_format(&self) -> PixelFormat
pub fn depth_attachment_pixel_format(&self) -> PixelFormat
Get the depth attachment pixel format.
C++ equivalent: PixelFormat depthAttachmentPixelFormat() const
Sourcepub fn set_depth_attachment_pixel_format(&self, format: PixelFormat)
pub fn set_depth_attachment_pixel_format(&self, format: PixelFormat)
Set the depth attachment pixel format.
C++ equivalent: void setDepthAttachmentPixelFormat(MTL::PixelFormat depthAttachmentPixelFormat)
Sourcepub fn stencil_attachment_pixel_format(&self) -> PixelFormat
pub fn stencil_attachment_pixel_format(&self) -> PixelFormat
Get the stencil attachment pixel format.
C++ equivalent: PixelFormat stencilAttachmentPixelFormat() const
Sourcepub fn set_stencil_attachment_pixel_format(&self, format: PixelFormat)
pub fn set_stencil_attachment_pixel_format(&self, format: PixelFormat)
Set the stencil attachment pixel format.
C++ equivalent: void setStencilAttachmentPixelFormat(MTL::PixelFormat stencilAttachmentPixelFormat)
Sourcepub fn raster_sample_count(&self) -> UInteger
pub fn raster_sample_count(&self) -> UInteger
Get the raster sample count.
C++ equivalent: NS::UInteger rasterSampleCount() const
Sourcepub fn set_raster_sample_count(&self, count: UInteger)
pub fn set_raster_sample_count(&self, count: UInteger)
Set the raster sample count.
C++ equivalent: void setRasterSampleCount(NS::UInteger rasterSampleCount)
Sourcepub fn is_rasterization_enabled(&self) -> bool
pub fn is_rasterization_enabled(&self) -> bool
Check if rasterization is enabled.
C++ equivalent: bool isRasterizationEnabled() const
Sourcepub fn set_rasterization_enabled(&self, enabled: bool)
pub fn set_rasterization_enabled(&self, enabled: bool)
Set rasterization enabled.
C++ equivalent: void setRasterizationEnabled(bool rasterizationEnabled)
Sourcepub fn input_primitive_topology(&self) -> PrimitiveTopologyClass
pub fn input_primitive_topology(&self) -> PrimitiveTopologyClass
Get the input primitive topology.
C++ equivalent: PrimitiveTopologyClass inputPrimitiveTopology() const
Sourcepub fn set_input_primitive_topology(&self, topology: PrimitiveTopologyClass)
pub fn set_input_primitive_topology(&self, topology: PrimitiveTopologyClass)
Set the input primitive topology.
C++ equivalent: void setInputPrimitiveTopology(MTL::PrimitiveTopologyClass inputPrimitiveTopology)
Sourcepub fn is_alpha_to_coverage_enabled(&self) -> bool
pub fn is_alpha_to_coverage_enabled(&self) -> bool
Check if alpha-to-coverage is enabled.
C++ equivalent: bool isAlphaToCoverageEnabled() const
Sourcepub fn set_alpha_to_coverage_enabled(&self, enabled: bool)
pub fn set_alpha_to_coverage_enabled(&self, enabled: bool)
Set alpha-to-coverage enabled.
C++ equivalent: void setAlphaToCoverageEnabled(bool alphaToCoverageEnabled)
Sourcepub fn is_alpha_to_one_enabled(&self) -> bool
pub fn is_alpha_to_one_enabled(&self) -> bool
Check if alpha-to-one is enabled.
C++ equivalent: bool isAlphaToOneEnabled() const
Sourcepub fn set_alpha_to_one_enabled(&self, enabled: bool)
pub fn set_alpha_to_one_enabled(&self, enabled: bool)
Set alpha-to-one enabled.
C++ equivalent: void setAlphaToOneEnabled(bool alphaToOneEnabled)
Sourcepub fn max_tessellation_factor(&self) -> UInteger
pub fn max_tessellation_factor(&self) -> UInteger
Get the maximum tessellation factor.
C++ equivalent: NS::UInteger maxTessellationFactor() const
Sourcepub fn set_max_tessellation_factor(&self, factor: UInteger)
pub fn set_max_tessellation_factor(&self, factor: UInteger)
Set the maximum tessellation factor.
C++ equivalent: void setMaxTessellationFactor(NS::UInteger maxTessellationFactor)
Sourcepub fn is_tessellation_factor_scale_enabled(&self) -> bool
pub fn is_tessellation_factor_scale_enabled(&self) -> bool
Check if tessellation factor scale is enabled.
C++ equivalent: bool isTessellationFactorScaleEnabled() const
Sourcepub fn set_tessellation_factor_scale_enabled(&self, enabled: bool)
pub fn set_tessellation_factor_scale_enabled(&self, enabled: bool)
Set tessellation factor scale enabled.
C++ equivalent: void setTessellationFactorScaleEnabled(bool tessellationFactorScaleEnabled)
Sourcepub fn tessellation_factor_format(&self) -> TessellationFactorFormat
pub fn tessellation_factor_format(&self) -> TessellationFactorFormat
Get the tessellation factor format.
C++ equivalent: TessellationFactorFormat tessellationFactorFormat() const
Sourcepub fn set_tessellation_factor_format(&self, format: TessellationFactorFormat)
pub fn set_tessellation_factor_format(&self, format: TessellationFactorFormat)
Set the tessellation factor format.
C++ equivalent: void setTessellationFactorFormat(MTL::TessellationFactorFormat tessellationFactorFormat)
Sourcepub fn tessellation_control_point_index_type(
&self,
) -> TessellationControlPointIndexType
pub fn tessellation_control_point_index_type( &self, ) -> TessellationControlPointIndexType
Get the tessellation control point index type.
C++ equivalent: TessellationControlPointIndexType tessellationControlPointIndexType() const
Sourcepub fn set_tessellation_control_point_index_type(
&self,
index_type: TessellationControlPointIndexType,
)
pub fn set_tessellation_control_point_index_type( &self, index_type: TessellationControlPointIndexType, )
Set the tessellation control point index type.
C++ equivalent: void setTessellationControlPointIndexType(MTL::TessellationControlPointIndexType tessellationControlPointIndexType)
Sourcepub fn tessellation_factor_step_function(
&self,
) -> TessellationFactorStepFunction
pub fn tessellation_factor_step_function( &self, ) -> TessellationFactorStepFunction
Get the tessellation factor step function.
C++ equivalent: TessellationFactorStepFunction tessellationFactorStepFunction() const
Sourcepub fn set_tessellation_factor_step_function(
&self,
func: TessellationFactorStepFunction,
)
pub fn set_tessellation_factor_step_function( &self, func: TessellationFactorStepFunction, )
Set the tessellation factor step function.
C++ equivalent: void setTessellationFactorStepFunction(MTL::TessellationFactorStepFunction tessellationFactorStepFunction)
Sourcepub fn tessellation_output_winding_order(&self) -> Winding
pub fn tessellation_output_winding_order(&self) -> Winding
Get the tessellation output winding order.
C++ equivalent: Winding tessellationOutputWindingOrder() const
Sourcepub fn set_tessellation_output_winding_order(&self, winding: Winding)
pub fn set_tessellation_output_winding_order(&self, winding: Winding)
Set the tessellation output winding order.
C++ equivalent: void setTessellationOutputWindingOrder(MTL::Winding tessellationOutputWindingOrder)
Sourcepub fn tessellation_partition_mode(&self) -> TessellationPartitionMode
pub fn tessellation_partition_mode(&self) -> TessellationPartitionMode
Get the tessellation partition mode.
C++ equivalent: TessellationPartitionMode tessellationPartitionMode() const
Sourcepub fn set_tessellation_partition_mode(&self, mode: TessellationPartitionMode)
pub fn set_tessellation_partition_mode(&self, mode: TessellationPartitionMode)
Set the tessellation partition mode.
C++ equivalent: void setTessellationPartitionMode(MTL::TessellationPartitionMode tessellationPartitionMode)
Sourcepub fn support_indirect_command_buffers(&self) -> bool
pub fn support_indirect_command_buffers(&self) -> bool
Check if the pipeline supports indirect command buffers.
C++ equivalent: bool supportIndirectCommandBuffers() const
Sourcepub fn set_support_indirect_command_buffers(&self, support: bool)
pub fn set_support_indirect_command_buffers(&self, support: bool)
Set indirect command buffer support.
C++ equivalent: void setSupportIndirectCommandBuffers(bool supportIndirectCommandBuffers)
Sourcepub fn shader_validation(&self) -> ShaderValidation
pub fn shader_validation(&self) -> ShaderValidation
Get the shader validation mode.
C++ equivalent: ShaderValidation shaderValidation() const
Sourcepub fn set_shader_validation(&self, validation: ShaderValidation)
pub fn set_shader_validation(&self, validation: ShaderValidation)
Set the shader validation mode.
C++ equivalent: void setShaderValidation(MTL::ShaderValidation shaderValidation)
Sourcepub fn max_vertex_amplification_count(&self) -> UInteger
pub fn max_vertex_amplification_count(&self) -> UInteger
Get the maximum vertex amplification count.
C++ equivalent: NS::UInteger maxVertexAmplificationCount() const
Sourcepub fn set_max_vertex_amplification_count(&self, count: UInteger)
pub fn set_max_vertex_amplification_count(&self, count: UInteger)
Set the maximum vertex amplification count.
C++ equivalent: void setMaxVertexAmplificationCount(NS::UInteger maxVertexAmplificationCount)
Sourcepub fn max_vertex_call_stack_depth(&self) -> UInteger
pub fn max_vertex_call_stack_depth(&self) -> UInteger
Get the maximum vertex call stack depth.
C++ equivalent: NS::UInteger maxVertexCallStackDepth() const
Sourcepub fn set_max_vertex_call_stack_depth(&self, depth: UInteger)
pub fn set_max_vertex_call_stack_depth(&self, depth: UInteger)
Set the maximum vertex call stack depth.
C++ equivalent: void setMaxVertexCallStackDepth(NS::UInteger maxVertexCallStackDepth)
Sourcepub fn max_fragment_call_stack_depth(&self) -> UInteger
pub fn max_fragment_call_stack_depth(&self) -> UInteger
Get the maximum fragment call stack depth.
C++ equivalent: NS::UInteger maxFragmentCallStackDepth() const
Sourcepub fn set_max_fragment_call_stack_depth(&self, depth: UInteger)
pub fn set_max_fragment_call_stack_depth(&self, depth: UInteger)
Set the maximum fragment call stack depth.
C++ equivalent: void setMaxFragmentCallStackDepth(NS::UInteger maxFragmentCallStackDepth)
Sourcepub fn support_adding_vertex_binary_functions(&self) -> bool
pub fn support_adding_vertex_binary_functions(&self) -> bool
Check if support adding vertex binary functions is enabled.
C++ equivalent: bool supportAddingVertexBinaryFunctions() const
Sourcepub fn set_support_adding_vertex_binary_functions(&self, support: bool)
pub fn set_support_adding_vertex_binary_functions(&self, support: bool)
Set support adding vertex binary functions.
C++ equivalent: void setSupportAddingVertexBinaryFunctions(bool supportAddingVertexBinaryFunctions)
Sourcepub fn support_adding_fragment_binary_functions(&self) -> bool
pub fn support_adding_fragment_binary_functions(&self) -> bool
Check if support adding fragment binary functions is enabled.
C++ equivalent: bool supportAddingFragmentBinaryFunctions() const
Sourcepub fn set_support_adding_fragment_binary_functions(&self, support: bool)
pub fn set_support_adding_fragment_binary_functions(&self, support: bool)
Set support adding fragment binary functions.
C++ equivalent: void setSupportAddingFragmentBinaryFunctions(bool supportAddingFragmentBinaryFunctions)
Sourcepub fn sample_count(&self) -> UInteger
👎Deprecated: use raster_sample_count() instead
pub fn sample_count(&self) -> UInteger
Get the sample count (deprecated - use rasterSampleCount instead).
C++ equivalent: NS::UInteger sampleCount() const
Sourcepub fn set_sample_count(&self, count: UInteger)
👎Deprecated: use set_raster_sample_count() instead
pub fn set_sample_count(&self, count: UInteger)
Set the sample count (deprecated - use set_raster_sample_count instead).
C++ equivalent: void setSampleCount(NS::UInteger sampleCount)
Sourcepub fn vertex_descriptor(&self) -> Option<VertexDescriptor>
pub fn vertex_descriptor(&self) -> Option<VertexDescriptor>
Get the vertex descriptor.
C++ equivalent: VertexDescriptor* vertexDescriptor() const
Sourcepub fn set_vertex_descriptor(&self, descriptor: Option<&VertexDescriptor>)
pub fn set_vertex_descriptor(&self, descriptor: Option<&VertexDescriptor>)
Set the vertex descriptor.
C++ equivalent: void setVertexDescriptor(const MTL::VertexDescriptor* vertexDescriptor)
Sourcepub fn vertex_buffers(&self) -> Option<PipelineBufferDescriptorArray>
pub fn vertex_buffers(&self) -> Option<PipelineBufferDescriptorArray>
Get the vertex buffer descriptors array.
C++ equivalent: PipelineBufferDescriptorArray* vertexBuffers() const
Sourcepub fn fragment_buffers(&self) -> Option<PipelineBufferDescriptorArray>
pub fn fragment_buffers(&self) -> Option<PipelineBufferDescriptorArray>
Get the fragment buffer descriptors array.
C++ equivalent: PipelineBufferDescriptorArray* fragmentBuffers() const
Sourcepub fn vertex_linked_functions(&self) -> Option<LinkedFunctions>
pub fn vertex_linked_functions(&self) -> Option<LinkedFunctions>
Get the vertex linked functions.
C++ equivalent: LinkedFunctions* vertexLinkedFunctions() const
Sourcepub fn set_vertex_linked_functions(&self, functions: Option<&LinkedFunctions>)
pub fn set_vertex_linked_functions(&self, functions: Option<&LinkedFunctions>)
Set the vertex linked functions.
C++ equivalent: void setVertexLinkedFunctions(const MTL::LinkedFunctions* vertexLinkedFunctions)
Sourcepub fn fragment_linked_functions(&self) -> Option<LinkedFunctions>
pub fn fragment_linked_functions(&self) -> Option<LinkedFunctions>
Get the fragment linked functions.
C++ equivalent: LinkedFunctions* fragmentLinkedFunctions() const
Sourcepub fn set_fragment_linked_functions(&self, functions: Option<&LinkedFunctions>)
pub fn set_fragment_linked_functions(&self, functions: Option<&LinkedFunctions>)
Set the fragment linked functions.
C++ equivalent: void setFragmentLinkedFunctions(const MTL::LinkedFunctions* fragmentLinkedFunctions)
Sourcepub fn vertex_preloaded_libraries_raw(&self) -> *mut c_void
pub fn vertex_preloaded_libraries_raw(&self) -> *mut c_void
Get the vertex preloaded libraries array (raw pointer).
C++ equivalent: NS::Array* vertexPreloadedLibraries() const
Sourcepub unsafe fn set_vertex_preloaded_libraries_raw(
&self,
libraries: *const c_void,
)
pub unsafe fn set_vertex_preloaded_libraries_raw( &self, libraries: *const c_void, )
Set the vertex preloaded libraries array (raw pointer).
C++ equivalent: void setVertexPreloadedLibraries(const NS::Array* vertexPreloadedLibraries)
§Safety
The pointer must be a valid NS::Array of Library objects.
Sourcepub fn fragment_preloaded_libraries_raw(&self) -> *mut c_void
pub fn fragment_preloaded_libraries_raw(&self) -> *mut c_void
Get the fragment preloaded libraries array (raw pointer).
C++ equivalent: NS::Array* fragmentPreloadedLibraries() const
Sourcepub unsafe fn set_fragment_preloaded_libraries_raw(
&self,
libraries: *const c_void,
)
pub unsafe fn set_fragment_preloaded_libraries_raw( &self, libraries: *const c_void, )
Set the fragment preloaded libraries array (raw pointer).
C++ equivalent: void setFragmentPreloadedLibraries(const NS::Array* fragmentPreloadedLibraries)
§Safety
The pointer must be a valid NS::Array of Library objects.
Sourcepub fn binary_archives_raw(&self) -> *mut c_void
pub fn binary_archives_raw(&self) -> *mut c_void
Get the binary archives array (raw pointer).
C++ equivalent: NS::Array* binaryArchives() const
Sourcepub unsafe fn set_binary_archives_raw(&self, archives: *const c_void)
pub unsafe fn set_binary_archives_raw(&self, archives: *const c_void)
Set the binary archives array (raw pointer).
C++ equivalent: void setBinaryArchives(const NS::Array* binaryArchives)
§Safety
The pointer must be a valid NS::Array of BinaryArchive objects.