public static int SizeOfMarshalDirect(this VkCommandBufferInheritanceInfo s)
        {
            if (s == null)
            {
                throw new InvalidOperationException("Trying to directly marshal a null.");
            }

            return
                (s.Next.SizeOfMarshalIndirect());
        }
        public static VkCommandBufferInheritanceInfo.Raw *MarshalIndirect(this VkCommandBufferInheritanceInfo s, ref byte *unmanaged)
        {
            if (s == null)
            {
                return((VkCommandBufferInheritanceInfo.Raw *) 0);
            }
            var result = (VkCommandBufferInheritanceInfo.Raw *)unmanaged;

            unmanaged += VkCommandBufferInheritanceInfo.Raw.SizeInBytes;
            *result = s.MarshalDirect(ref unmanaged);
            return(result);
        }
        public static VkCommandBufferInheritanceInfo.Raw MarshalDirect(this VkCommandBufferInheritanceInfo s, ref byte *unmanaged)
        {
            if (s == null)
            {
                throw new InvalidOperationException("Trying to directly marshal a null.");
            }

            var pNext = s.Next.MarshalIndirect(ref unmanaged);

            VkCommandBufferInheritanceInfo.Raw result;
            result.sType                = VkStructureType.CommandBufferInheritanceInfo;
            result.pNext                = pNext;
            result.renderPass           = s.RenderPass?.Handle ?? VkRenderPass.HandleType.Null;
            result.subpass              = s.Subpass;
            result.framebuffer          = s.Framebuffer?.Handle ?? VkFramebuffer.HandleType.Null;
            result.occlusionQueryEnable = new VkBool32(s.OcclusionQueryEnable);
            result.queryFlags           = s.QueryFlags;
            result.pipelineStatistics   = s.PipelineStatistics;
            return(result);
        }
 public static int SizeOfMarshalIndirect(this VkCommandBufferInheritanceInfo s) =>
 s == null ? 0 : s.SizeOfMarshalDirect() + VkCommandBufferInheritanceInfo.Raw.SizeInBytes;