use crate::common::*;
use crate::Foundation::*;
use crate::Metal::*;
extern_protocol!(
pub unsafe trait MTLParallelRenderCommandEncoder: MTLCommandEncoder {
#[method_id(@__retain_semantics Other renderCommandEncoder)]
fn renderCommandEncoder(&self) -> Option<Id<ProtocolObject<dyn MTLRenderCommandEncoder>>>;
#[method(setColorStoreAction:atIndex:)]
unsafe fn setColorStoreAction_atIndex(
&self,
store_action: MTLStoreAction,
color_attachment_index: NSUInteger,
);
#[method(setDepthStoreAction:)]
unsafe fn setDepthStoreAction(&self, store_action: MTLStoreAction);
#[method(setStencilStoreAction:)]
unsafe fn setStencilStoreAction(&self, store_action: MTLStoreAction);
#[method(setColorStoreActionOptions:atIndex:)]
unsafe fn setColorStoreActionOptions_atIndex(
&self,
store_action_options: MTLStoreActionOptions,
color_attachment_index: NSUInteger,
);
#[method(setDepthStoreActionOptions:)]
unsafe fn setDepthStoreActionOptions(&self, store_action_options: MTLStoreActionOptions);
#[method(setStencilStoreActionOptions:)]
unsafe fn setStencilStoreActionOptions(&self, store_action_options: MTLStoreActionOptions);
}
unsafe impl ProtocolType for dyn MTLParallelRenderCommandEncoder {}
);