internal unsafe void MarshalTo(Interop.DescriptorPoolCreateInfo *pointer)
        {
            pointer->SType = StructureType.DescriptorPoolCreateInfo;
            pointer->Next  = null;

            //PoolSizes
            if (this.PoolSizes != null)
            {
                pointer->PoolSizes = (DescriptorPoolSize *)Interop.HeapUtil.Allocate <DescriptorPoolSize>(this.PoolSizes.Length).ToPointer();
                for (int index = 0; index < this.PoolSizes.Length; index++)
                {
                    pointer->PoolSizes[index] = this.PoolSizes[index];
                }
            }
            else
            {
                pointer->PoolSizes = null;
            }
            pointer->PoolSizeCount = (uint)(this.PoolSizes?.Length ?? 0);
            pointer->Flags         = this.Flags;
            pointer->MaxSets       = this.MaxSets;
        }
예제 #2
0
 internal DescriptorPoolCreateInfo(Interop.DescriptorPoolCreateInfo* ptr)
 {
     m = ptr;
     Initialize ();
 }
예제 #3
0
 public DescriptorPoolCreateInfo()
 {
     m = (Interop.DescriptorPoolCreateInfo*) Interop.Structure.Allocate (typeof (Interop.DescriptorPoolCreateInfo));
     Initialize ();
 }