示例#1
0
        internal static unsafe DeviceGeneratedCommandsLimits MarshalFrom(Interop.DeviceGeneratedCommandsLimits *value)
        {
            DeviceGeneratedCommandsLimits result = new DeviceGeneratedCommandsLimits();

            result.MaxIndirectCommandsLayoutTokenCount = value->MaxIndirectCommandsLayoutTokenCount;
            result.MaxObjectEntryCounts = value->MaxObjectEntryCounts;
            result.MinSequenceCountBufferOffsetAlignment = value->MinSequenceCountBufferOffsetAlignment;
            result.MinSequenceIndexBufferOffsetAlignment = value->MinSequenceIndexBufferOffsetAlignment;
            result.MinCommandsTokenBufferOffsetAlignment = value->MinCommandsTokenBufferOffsetAlignment;
            return(result);
        }
示例#2
0
 /// <summary>
 /// Returns device-generated commands related properties of a physical
 /// device.
 /// </summary>
 public DeviceGeneratedCommandsLimits GetGeneratedCommandsProperties(DeviceGeneratedCommandsFeatures features)
 {
     unsafe
     {
         try
         {
             var commandDelegate = this.commandCache.GetCommandDelegate <Interop.vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX>("vkGetPhysicalDeviceGeneratedCommandsPropertiesNVX", "device");
             DeviceGeneratedCommandsLimits           result = default(DeviceGeneratedCommandsLimits);
             Interop.DeviceGeneratedCommandsFeatures marshalledFeatures;
             features.MarshalTo(&marshalledFeatures);
             Interop.DeviceGeneratedCommandsLimits marshalledLimits;
             commandDelegate(this.handle, &marshalledFeatures, &marshalledLimits);
             result = DeviceGeneratedCommandsLimits.MarshalFrom(&marshalledLimits);
             return(result);
         }
         finally
         {
             Interop.HeapUtil.FreeLog();
         }
     }
 }