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

            //Attachments
            if (this.Attachments != null)
            {
                pointer->Attachments = (PipelineColorBlendAttachmentState *)Interop.HeapUtil.Allocate <PipelineColorBlendAttachmentState>(this.Attachments.Length).ToPointer();
                for (int index = 0; index < this.Attachments.Length; index++)
                {
                    pointer->Attachments[index] = this.Attachments[index];
                }
            }
            else
            {
                pointer->Attachments = null;
            }
            Validate.CheckLength(this.BlendConstants, 4, "BlendConstants");
            MemUtil.WriteToPtr((IntPtr)(pointer->BlendConstants), this.BlendConstants, 0, 4);
            pointer->AttachmentCount = (uint)(this.Attachments?.Length ?? 0);
            pointer->Flags           = this.Flags;
            pointer->LogicOpEnable   = this.LogicOpEnable;
            pointer->LogicOp         = this.LogicOp;
        }
Exemple #2
0
 internal PipelineColorBlendStateCreateInfo(Interop.PipelineColorBlendStateCreateInfo* ptr)
 {
     m = ptr;
     Initialize ();
 }
Exemple #3
0
 public PipelineColorBlendStateCreateInfo()
 {
     m = (Interop.PipelineColorBlendStateCreateInfo*) Interop.Structure.Allocate (typeof (Interop.PipelineColorBlendStateCreateInfo));
     Initialize ();
 }