internal unsafe void MarshalTo(Interop.DescriptorSetAllocateInfo *pointer)
        {
            pointer->SType = StructureType.DescriptorSetAllocateInfo;
            pointer->Next  = null;
            this.DescriptorPool?.MarshalTo(&pointer->DescriptorPool);

            //SetLayouts
            if (this.SetLayouts != null)
            {
                var fieldPointer = (Interop.DescriptorSetLayout *)Interop.HeapUtil.AllocateAndClear <Interop.DescriptorSetLayout>(this.SetLayouts.Length);
                for (int index = 0; index < this.SetLayouts.Length; index++)
                {
                    this.SetLayouts[index].MarshalTo(&fieldPointer[index]);
                }
                pointer->SetLayouts = fieldPointer;
            }
            else
            {
                pointer->SetLayouts = null;
            }
            pointer->DescriptorSetCount = (uint)(this.SetLayouts?.Length ?? 0);
        }
Exemplo n.º 2
0
 internal DescriptorSetAllocateInfo(Interop.DescriptorSetAllocateInfo* ptr)
 {
     m = ptr;
     Initialize ();
 }
Exemplo n.º 3
0
 public DescriptorSetAllocateInfo()
 {
     m = (Interop.DescriptorSetAllocateInfo*) Interop.Structure.Allocate (typeof (Interop.DescriptorSetAllocateInfo));
     Initialize ();
 }