/// <summary>
 ///
 /// </summary>
 /// <param name="extendedHandle">
 /// The CommandBuffer handle to extend.
 /// </param>
 public static unsafe void EndRenderPass2(this SharpVk.CommandBuffer extendedHandle)
 {
     try
     {
         CommandCache commandCache = default(CommandCache);
         SharpVk.Interop.Khronos.SubpassEndInfo *marshalledSubpassEndInfo = default(SharpVk.Interop.Khronos.SubpassEndInfo *);
         void *nextPointer = default(void *);
         commandCache                    = extendedHandle.commandCache;
         marshalledSubpassEndInfo        = (SharpVk.Interop.Khronos.SubpassEndInfo *)(Interop.HeapUtil.Allocate <SharpVk.Interop.Khronos.SubpassEndInfo>());
         marshalledSubpassEndInfo->SType = StructureType.SubpassEndInfo;
         marshalledSubpassEndInfo->Next  = nextPointer;
         SharpVk.Interop.Khronos.VkCommandBufferEndRenderPass2Delegate commandDelegate = commandCache.Cache.vkCmdEndRenderPass2KHR;
         commandDelegate(extendedHandle.handle, marshalledSubpassEndInfo);
     }
     finally
     {
         Interop.HeapUtil.FreeAll();
     }
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="extendedHandle">
 /// The CommandBuffer handle to extend.
 /// </param>
 public static unsafe void NextSubpass2(this SharpVk.CommandBuffer extendedHandle, SharpVk.Khronos.SubpassBeginInfo subpassBeginInfo, SharpVk.Khronos.SubpassEndInfo subpassEndInfo)
 {
     try
     {
         CommandCache commandCache = default(CommandCache);
         SharpVk.Interop.Khronos.SubpassBeginInfo *marshalledSubpassBeginInfo = default(SharpVk.Interop.Khronos.SubpassBeginInfo *);
         SharpVk.Interop.Khronos.SubpassEndInfo *  marshalledSubpassEndInfo   = default(SharpVk.Interop.Khronos.SubpassEndInfo *);
         commandCache = extendedHandle.commandCache;
         marshalledSubpassBeginInfo = (SharpVk.Interop.Khronos.SubpassBeginInfo *)(Interop.HeapUtil.Allocate <SharpVk.Interop.Khronos.SubpassBeginInfo>());
         subpassBeginInfo.MarshalTo(marshalledSubpassBeginInfo);
         marshalledSubpassEndInfo = (SharpVk.Interop.Khronos.SubpassEndInfo *)(Interop.HeapUtil.Allocate <SharpVk.Interop.Khronos.SubpassEndInfo>());
         subpassEndInfo.MarshalTo(marshalledSubpassEndInfo);
         SharpVk.Interop.Khronos.VkCommandBufferNextSubpass2Delegate commandDelegate = commandCache.Cache.vkCmdNextSubpass2KHR;
         commandDelegate(extendedHandle.handle, marshalledSubpassBeginInfo, marshalledSubpassEndInfo);
     }
     finally
     {
         Interop.HeapUtil.FreeAll();
     }
 }
Esempio n. 3
0
 /// <summary>
 ///
 /// </summary>
 internal unsafe void MarshalTo(SharpVk.Interop.Khronos.SubpassEndInfo *pointer)
 {
     pointer->SType = StructureType.SubpassEndInfo;
     pointer->Next  = null;
 }