/// <summary> /// Converts an array of bytes into a DDS header object. /// </summary> /// <param name="byteArray"></param> /// <returns></returns> public static DDS_HEADER GetHeaderFromBytes(byte[] byteArray) { DDS_HEADER headerObject = new DDS_HEADER(); int size = Marshal.SizeOf(headerObject); IntPtr ptr = Marshal.AllocHGlobal(size); Marshal.Copy(byteArray, 0, ptr, size); headerObject = (DDS_HEADER)Marshal.PtrToStructure(ptr, headerObject.GetType()); Marshal.FreeHGlobal(ptr); return(headerObject); }