Ejemplo n.º 1
0
        public unsafe byte[] GetPipelineCacheData(PipelineCache pipelineCache)
        {
            PointerSize count = 0;

            GetPipelineCacheData(pipelineCache, ref count, IntPtr.Zero);

            var result = new byte[count];

            if (count > 0)
            {
                fixed(byte *resultPtr = &result[0])
                GetPipelineCacheData(pipelineCache, ref count, new IntPtr(resultPtr));
            }

            return(result);
        }
 private static RawBool DebugReport(DebugReportFlags flags, DebugReportObjectType objectType, ulong @object, PointerSize location, int messageCode, string layerPrefix, string message, IntPtr userData)
 {
     Debug.WriteLine($"{flags}: {message} ([{messageCode}] {layerPrefix})");
     return true;
 }
Ejemplo n.º 3
0
 /// <summary>
 ///   Determines whether the specified <see cref = "PointerSize" /> is equal to this instance.
 /// </summary>
 /// <param name = "other">The <see cref = "PointerSize" /> to compare with this instance.</param>
 /// <returns>
 ///   <c>true</c> if the specified <see cref = "PointerSize" /> is equal to this instance; otherwise, <c>false</c>.
 /// </returns>
 public bool Equals(PointerSize other)
 {
     return _size == other._size;
 }
Ejemplo n.º 4
0
 public unsafe void GetPipelineCacheData(PipelineCache pipelineCache, ref PointerSize dataSize, IntPtr data)
 {
     fixed (PointerSize* __dataSize__ = &dataSize)
     {
         vkGetPipelineCacheData(this, pipelineCache, __dataSize__, data).CheckError();
     }
 }
Ejemplo n.º 5
0
 public unsafe void GetQueryPoolResults(QueryPool queryPool, uint firstQuery, uint queryCount, PointerSize dataSize, IntPtr data, ulong stride, QueryResultFlags flags)
 {
     vkGetQueryPoolResults(this, queryPool, firstQuery, queryCount, dataSize, data, stride, flags).CheckError();
 }
Ejemplo n.º 6
0
 internal unsafe void DebugReportMessage(uint flags, DebugReportObjectType objectType, ulong @object, PointerSize location, int messageCode, ref byte layerPrefix, byte* message)
 {
     fixed (byte* __layerPrefix__ = &layerPrefix)
     {
         vkDebugReportMessageEXT(this, flags, objectType, @object, location, messageCode, __layerPrefix__, message);
     }
 }
Ejemplo n.º 7
0
 internal static unsafe extern void vkDebugReportMessageEXT(Instance instance, uint flags, DebugReportObjectType objectType, ulong @object, PointerSize location, int messageCode, byte* layerPrefix, byte* message);
Ejemplo n.º 8
0
 internal static unsafe extern Result vkGetQueryPoolResults(Device device, QueryPool queryPool, uint firstQuery, uint queryCount, PointerSize dataSize, IntPtr data, ulong stride, QueryResultFlags flags);
Ejemplo n.º 9
0
 internal static unsafe extern Result vkGetPipelineCacheData(Device device, PipelineCache pipelineCache, PointerSize* dataSize, IntPtr data);
Ejemplo n.º 10
0
 /// <summary>
 ///   Determines whether the specified <see cref = "PointerSize" /> is equal to this instance.
 /// </summary>
 /// <param name = "other">The <see cref = "PointerSize" /> to compare with this instance.</param>
 /// <returns>
 ///   <c>true</c> if the specified <see cref = "PointerSize" /> is equal to this instance; otherwise, <c>false</c>.
 /// </returns>
 public bool Equals(PointerSize other)
 {
     return(_size == other._size);
 }