Skip to main content

MTLParallelRenderCommandEncoder

Trait MTLParallelRenderCommandEncoder 

Source
pub unsafe trait MTLParallelRenderCommandEncoder: MTLCommandEncoder {
    // Provided methods
    fn renderCommandEncoder(
        &self,
    ) -> Option<Retained<ProtocolObject<dyn MTLRenderCommandEncoder>>>
       where Self: Sized + Message { ... }
    unsafe fn setColorStoreAction_atIndex(
        &self,
        store_action: MTLStoreAction,
        color_attachment_index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    fn setDepthStoreAction(&self, store_action: MTLStoreAction)
       where Self: Sized + Message { ... }
    fn setStencilStoreAction(&self, store_action: MTLStoreAction)
       where Self: Sized + Message { ... }
    unsafe fn setColorStoreActionOptions_atIndex(
        &self,
        store_action_options: MTLStoreActionOptions,
        color_attachment_index: NSUInteger,
    )
       where Self: Sized + Message { ... }
    fn setDepthStoreActionOptions(
        &self,
        store_action_options: MTLStoreActionOptions,
    )
       where Self: Sized + Message { ... }
    fn setStencilStoreActionOptions(
        &self,
        store_action_options: MTLStoreActionOptions,
    )
       where Self: Sized + Message { ... }
}
Available on crate features MTLCommandEncoder and MTLParallelRenderCommandEncoder only.
Expand description

The MTLParallelRenderCommandEncoder protocol is designed to allow a single render to texture operation to be efficiently (and safely) broken up across multiple threads.

See also Apple’s documentation

Provided Methods§

Source

fn renderCommandEncoder( &self, ) -> Option<Retained<ProtocolObject<dyn MTLRenderCommandEncoder>>>
where Self: Sized + Message,

Available on crate feature MTLRenderCommandEncoder only.

Return a new autoreleased object that conforms to <MTLRenderCommandEncoder

that may be used to encode on a different thread.

Source

unsafe fn setColorStoreAction_atIndex( &self, store_action: MTLStoreAction, color_attachment_index: NSUInteger, )
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for a given color attachment was set to MTLStoreActionUnknown when the render command encoder was created, setColorStoreAction:atIndex: must be used to finalize the store action before endEncoding is called.

Parameter storeAction: The desired store action for the given color attachment. This may be set to any value other than MTLStoreActionUnknown.

Parameter colorAttachmentIndex: The index of the color attachment

§Safety

colorAttachmentIndex might not be bounds-checked.

Source

fn setDepthStoreAction(&self, store_action: MTLStoreAction)
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for the depth attachment was set to MTLStoreActionUnknown when the render command encoder was created, setDepthStoreAction: must be used to finalize the store action before endEncoding is called.

Source

fn setStencilStoreAction(&self, store_action: MTLStoreAction)
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for the stencil attachment was set to MTLStoreActionUnknown when the render command encoder was created, setStencilStoreAction: must be used to finalize the store action before endEncoding is called.

Source

unsafe fn setColorStoreActionOptions_atIndex( &self, store_action_options: MTLStoreActionOptions, color_attachment_index: NSUInteger, )
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for a given color attachment was set to MTLStoreActionUnknown when the render command encoder was created, setColorStoreActionOptions:atIndex: may be used to finalize the store action options before endEncoding is called.

Parameter storeActionOptions: The desired store action options for the given color attachment.

Parameter colorAttachmentIndex: The index of the color attachment

§Safety

colorAttachmentIndex might not be bounds-checked.

Source

fn setDepthStoreActionOptions( &self, store_action_options: MTLStoreActionOptions, )
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for the depth attachment was set to MTLStoreActionUnknown when the render command encoder was created, setDepthStoreActionOptions: may be used to finalize the store action options before endEncoding is called.

Source

fn setStencilStoreActionOptions( &self, store_action_options: MTLStoreActionOptions, )
where Self: Sized + Message,

Available on crate feature MTLRenderPass only.

If the the store action for the stencil attachment was set to MTLStoreActionUnknown when the render command encoder was created, setStencilStoreActionOptions: may be used to finalize the store action options before endEncoding is called.

Trait Implementations§

Source§

impl<T> ImplementedBy<T> for dyn MTLParallelRenderCommandEncoder

Source§

impl ProtocolType for dyn MTLParallelRenderCommandEncoder

Source§

const NAME: &'static str = "MTLParallelRenderCommandEncoder"

The name of the Objective-C protocol that this type represents. Read more
Source§

fn protocol() -> Option<&'static AnyProtocol>

Get a reference to the Objective-C protocol object that this type represents. Read more

Dyn Compatibility§

This trait is dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety".

Implementations on Foreign Types§

Source§

impl<T> MTLParallelRenderCommandEncoder for ProtocolObject<T>

Implementors§