Got RenderApi project to compile

This commit is contained in:
Yoshi Askharoun
2021-07-11 23:41:18 -05:00
parent dfb03d2ec5
commit c2a463bd0e
45 changed files with 96 additions and 91 deletions
@@ -19,17 +19,16 @@ namespace Microsoft.Iris.Render.Internal
public override bool Equals(object oCompare) public override bool Equals(object oCompare)
{ {
switch (oCompare) uint num;
{
case uint num: if (oCompare is EventCookie eventCookie)
label_3: num = eventCookie.m_value;
return (int)this.m_value == (int)num; else if (oCompare is uint value)
case EventCookie eventCookie: num = value;
num = eventCookie.m_value; else
goto label_3; return false;
default:
return false; return (int)m_value == (int)num;
}
} }
public override int GetHashCode() => (int)this.m_value; public override int GetHashCode() => (int)this.m_value;
@@ -213,14 +213,14 @@ namespace Microsoft.Iris.Render.Internal
InitMessageDump(); InitMessageDump();
if (uMsg >= s_rgsMessageNames.Length) if (uMsg >= s_rgsMessageNames.Length)
return null; return null;
string rgsMessageName = s_rgsMessageNames[(IntPtr)uMsg]; string rgsMessageName = s_rgsMessageNames[uMsg];
if (rgsMessageName != null) if (rgsMessageName != null)
return rgsMessageName; return rgsMessageName;
uint num = uMsg; uint num = uMsg;
while (uMsg > 0U) while (uMsg > 0U)
{ {
--num; --num;
rgsMessageName = s_rgsMessageNames[(IntPtr)num]; rgsMessageName = s_rgsMessageNames[num];
if (rgsMessageName != null) if (rgsMessageName != null)
break; break;
} }
@@ -98,7 +98,7 @@ namespace Microsoft.Iris.Render.Protocol
else else
{ {
byte* numPtr2 = (byte*)chPtr1; byte* numPtr2 = (byte*)chPtr1;
for (byte* numPtr3 = numPtr2 + ((IntPtr)(str.Length + 1) * 2).ToInt64(); numPtr2 < numPtr3; numPtr2 += 2) for (byte* numPtr3 = numPtr2 + ((long)(str.Length + 1) * 2); numPtr2 < numPtr3; numPtr2 += 2)
{ {
*numPtr1++ = numPtr2[1]; *numPtr1++ = numPtr2[1];
*numPtr1++ = *numPtr2; *numPtr1++ = *numPtr2;
@@ -123,7 +123,7 @@ namespace Microsoft.Iris.Render.Protocol
else else
{ {
byte* numPtr2 = (byte*)renderhandlePtr; byte* numPtr2 = (byte*)renderhandlePtr;
for (byte* numPtr3 = numPtr2 + ((IntPtr)renderhandleArray.Length * 4).ToInt64(); numPtr2 < numPtr3; numPtr2 += 4) for (byte* numPtr3 = numPtr2 + ((long)renderhandleArray.Length * 4); numPtr2 < numPtr3; numPtr2 += 4)
{ {
*numPtr1++ = numPtr2[3]; *numPtr1++ = numPtr2[3];
*numPtr1++ = numPtr2[2]; *numPtr1++ = numPtr2[2];
@@ -80,7 +80,7 @@ namespace Microsoft.Iris.Render.Protocol
get get
{ {
this.ValidateSlot(index); this.ValidateSlot(index);
GCHandle gcHandle = this.m_objects[(IntPtr)index]; GCHandle gcHandle = this.m_objects[index];
return !gcHandle.IsAllocated ? null : (IRenderHandleOwner)gcHandle.Target; return !gcHandle.IsAllocated ? null : (IRenderHandleOwner)gcHandle.Target;
} }
set set
@@ -101,7 +101,7 @@ namespace Microsoft.Iris.Render.Protocol
{ {
if (!this.ValidateAccess(index, expectedUniqueness, fAllowInvalid)) if (!this.ValidateAccess(index, expectedUniqueness, fAllowInvalid))
return null; return null;
GCHandle gcHandle = this.m_objects[(IntPtr)index]; GCHandle gcHandle = this.m_objects[index];
return !gcHandle.IsAllocated ? null : (IRenderHandleOwner)gcHandle.Target; return !gcHandle.IsAllocated ? null : (IRenderHandleOwner)gcHandle.Target;
} }
@@ -185,16 +185,16 @@ namespace Microsoft.Iris.Render.Protocol
private void SetIndex(uint index, IRenderHandleOwner newOwner) private void SetIndex(uint index, IRenderHandleOwner newOwner)
{ {
GCHandle gch = this.m_objects[(IntPtr)index]; GCHandle gch = this.m_objects[index];
if (!IsEmpty(gch)) if (!IsEmpty(gch))
{ {
((IRenderHandleOwner)gch.Target)?.OnDisconnect(); ((IRenderHandleOwner)gch.Target)?.OnDisconnect();
gch.Free(); gch.Free();
} }
if (newOwner != null) if (newOwner != null)
this.m_objects[(IntPtr)index] = GCHandle.Alloc(newOwner, this.m_ht); this.m_objects[index] = GCHandle.Alloc(newOwner, this.m_ht);
else else
this.m_objects[(IntPtr)index] = s_gchEmpty; this.m_objects[index] = s_gchEmpty;
} }
private void UpdateUniqueness(uint index, out uint unique) private void UpdateUniqueness(uint index, out uint unique)
@@ -202,9 +202,9 @@ namespace Microsoft.Iris.Render.Protocol
byte num1 = 0; byte num1 = 0;
if (this.m_uniqueness != null) if (this.m_uniqueness != null)
{ {
byte num2 = this.m_uniqueness[(IntPtr)index]; byte num2 = this.m_uniqueness[index];
num1 = num2 >= byte.MaxValue ? (byte)1 : (byte)(num2 + 1U); num1 = num2 >= byte.MaxValue ? (byte)1 : (byte)(num2 + 1U);
this.m_uniqueness[(IntPtr)index] = num1; this.m_uniqueness[index] = num1;
} }
unique = num1; unique = num1;
} }
@@ -214,7 +214,7 @@ namespace Microsoft.Iris.Render.Protocol
Debug2.Validate(unique <= byte.MaxValue, typeof(ArgumentOutOfRangeException), "Uniqueness must be a byte"); Debug2.Validate(unique <= byte.MaxValue, typeof(ArgumentOutOfRangeException), "Uniqueness must be a byte");
if (this.m_uniqueness == null) if (this.m_uniqueness == null)
return; return;
this.m_uniqueness[(IntPtr)index] = (byte)(unique & byte.MaxValue); this.m_uniqueness[index] = (byte)(unique & byte.MaxValue);
} }
private void ValidateSlot(uint index) => this.ValidateSlot(index, false); private void ValidateSlot(uint index) => this.ValidateSlot(index, false);
@@ -222,7 +222,7 @@ namespace Microsoft.Iris.Render.Protocol
private bool ValidateSlot(uint index, bool fAllowInvalid) private bool ValidateSlot(uint index, bool fAllowInvalid)
{ {
bool flag = false; bool flag = false;
if (index < this.m_alloc && ((int)this.m_usage[(IntPtr)(index >> 5)] & 1 << (int)index) != 0) if (index < this.m_alloc && ((int)this.m_usage[index >> 5] & 1 << (int)index) != 0)
flag = true; flag = true;
Debug2.Throw(flag || fAllowInvalid, "Slot is not allocated"); Debug2.Throw(flag || fAllowInvalid, "Slot is not allocated");
return flag; return flag;
@@ -233,7 +233,7 @@ namespace Microsoft.Iris.Render.Protocol
private bool ValidateSlotFree(uint index, bool fAllowInvalid) private bool ValidateSlotFree(uint index, bool fAllowInvalid)
{ {
bool flag = false; bool flag = false;
if (index < this.m_alloc && ((int)this.m_usage[(IntPtr)(index >> 5)] & 1 << (int)index) == 0) if (index < this.m_alloc && ((int)this.m_usage[index >> 5] & 1 << (int)index) == 0)
flag = true; flag = true;
Debug2.Throw(flag || fAllowInvalid, "Slot is not free"); Debug2.Throw(flag || fAllowInvalid, "Slot is not free");
return flag; return flag;
@@ -247,7 +247,7 @@ namespace Microsoft.Iris.Render.Protocol
return false; return false;
uint num = 0; uint num = 0;
if (this.m_uniqueness != null) if (this.m_uniqueness != null)
num = this.m_uniqueness[(IntPtr)index]; num = this.m_uniqueness[index];
bool flag = (int)expectedUniqueness == (int)num; bool flag = (int)expectedUniqueness == (int)num;
Debug2.Throw(flag || fAllowInvalid, "Slot uniqueness is stale"); Debug2.Throw(flag || fAllowInvalid, "Slot uniqueness is stale");
return flag; return flag;
@@ -259,7 +259,7 @@ namespace Microsoft.Iris.Render.Protocol
uint hint; uint hint;
for (hint = this.m_hint; hint < m_usage.Length; ++hint) for (hint = this.m_hint; hint < m_usage.Length; ++hint)
{ {
num1 = this.m_usage[(IntPtr)hint]; num1 = this.m_usage[hint];
if (num1 != uint.MaxValue) if (num1 != uint.MaxValue)
break; break;
} }
@@ -278,7 +278,7 @@ namespace Microsoft.Iris.Render.Protocol
maxValue >>= (int)num2; maxValue >>= (int)num2;
} }
while (num2 != 0U); while (num2 != 0U);
this.m_usage[(IntPtr)hint] |= 1U << (int)num3; this.m_usage[hint] |= 1U << (int)num3;
++this.m_used; ++this.m_used;
return hint << 5 | num3; return hint << 5 | num3;
} }
@@ -286,14 +286,14 @@ namespace Microsoft.Iris.Render.Protocol
private void AllocSlotAt(uint index) private void AllocSlotAt(uint index)
{ {
this.ValidateSlotFree(index); this.ValidateSlotFree(index);
this.m_usage[(IntPtr)(index >> 5)] |= 1U << (int)index; this.m_usage[index >> 5] |= 1U << (int)index;
++this.m_used; ++this.m_used;
} }
private void FreeSlot(uint index) private void FreeSlot(uint index)
{ {
uint num = index >> 5; uint num = index >> 5;
this.m_usage[(IntPtr)num] &= (uint)~(1 << (int)index); this.m_usage[num] &= (uint)~(1 << (int)index);
--this.m_used; --this.m_used;
if (this.m_hint <= num) if (this.m_hint <= num)
return; return;
@@ -315,15 +315,15 @@ namespace Microsoft.Iris.Render.Protocol
{ {
Debug2.Validate(newSize > this.m_alloc, typeof(ArgumentException), nameof(newSize)); Debug2.Validate(newSize > this.m_alloc, typeof(ArgumentException), nameof(newSize));
Debug2.Validate(newSize <= this.m_maxObjects, typeof(InvalidOperationException), "Too many video resources have been allocated"); Debug2.Validate(newSize <= this.m_maxObjects, typeof(InvalidOperationException), "Too many video resources have been allocated");
GCHandle[] gcHandleArray = new GCHandle[(IntPtr)newSize]; GCHandle[] gcHandleArray = new GCHandle[newSize];
uint[] numArray1 = null; uint[] numArray1 = null;
byte[] numArray2 = null; byte[] numArray2 = null;
uint num = (uint)((int)newSize + 32 - 1) >> 5; uint num = (uint)((int)newSize + 32 - 1) >> 5;
if (this.m_usage == null || m_usage.Length < num) if (this.m_usage == null || m_usage.Length < num)
numArray1 = new uint[(IntPtr)num]; numArray1 = new uint[num];
if (this.m_uniqueness != null) if (this.m_uniqueness != null)
{ {
numArray2 = new byte[(IntPtr)newSize]; numArray2 = new byte[newSize];
Array.Copy(m_uniqueness, numArray2, this.m_uniqueness.Length); Array.Copy(m_uniqueness, numArray2, this.m_uniqueness.Length);
} }
if (this.m_objects != null) if (this.m_objects != null)
@@ -347,16 +347,16 @@ namespace Microsoft.Iris.Render.Protocol
public ObjectCopy(HandleGroup map) public ObjectCopy(HandleGroup map)
{ {
uint used = map.m_used; uint used = map.m_used;
this.m_arObjects = new IRenderHandleOwner[(IntPtr)used]; this.m_arObjects = new IRenderHandleOwner[used];
uint num = 0; uint num = 0;
for (uint index = 0; index < used; ++index) for (uint index = 0; index < used; ++index)
{ {
GCHandle gch = map.m_objects[(IntPtr)index]; GCHandle gch = map.m_objects[index];
if (!IsEmpty(gch)) if (!IsEmpty(gch))
{ {
IRenderHandleOwner target = (IRenderHandleOwner)gch.Target; IRenderHandleOwner target = (IRenderHandleOwner)gch.Target;
if (target != null) if (target != null)
this.m_arObjects[(IntPtr)num++] = target; this.m_arObjects[num++] = target;
} }
} }
} }
@@ -25,10 +25,11 @@ namespace Microsoft.Iris.Render.Protocol
MessageCookieLayout layout) MessageCookieLayout layout)
{ {
Debug2.Validate(remoteContextId != ContextID.NULL, typeof(ArgumentNullException), nameof(remoteContextId)); Debug2.Validate(remoteContextId != ContextID.NULL, typeof(ArgumentNullException), nameof(remoteContextId));
EngineApi.IFC(EngineApi.SpRenderThreadInit(ref new EngineApi.InitArgs(layout, remoteContextId) var args = new EngineApi.InitArgs(layout, remoteContextId)
{ {
idObjectBrokerClass = brokerClassHandle idObjectBrokerClass = brokerClassHandle
}, out this.m_renderThread)); };
EngineApi.IFC(EngineApi.SpRenderThreadInit(ref args, out this.m_renderThread));
} }
protected override void Dispose(bool inDispose) protected override void Dispose(bool inDispose)
@@ -71,10 +71,10 @@ namespace Microsoft.Iris.Render.Protocol
break; break;
ushort* numPtr1 = (ushort*)pointer1; ushort* numPtr1 = (ushort*)pointer1;
ushort* numPtr2 = (ushort*)pointer1; ushort* numPtr2 = (ushort*)pointer1;
ushort* numPtr3 = (ushort*)((IntPtr)numPtr2 + new IntPtr(2)); ushort* numPtr3 = (ushort*)(numPtr2 + 2);
ushort num3 = *numPtr2; ushort num3 = *numPtr2;
ushort* numPtr4 = numPtr1; ushort* numPtr4 = numPtr1;
ushort* numPtr5 = (ushort*)((IntPtr)numPtr4 + new IntPtr(2)); ushort* numPtr5 = (ushort*)(numPtr4 + 2);
int num4 = (ushort)((num3 & 65280) >> 8 | (num3 & byte.MaxValue) << 8); int num4 = (ushort)((num3 & 65280) >> 8 | (num3 & byte.MaxValue) << 8);
*numPtr4 = (ushort)num4; *numPtr4 = (ushort)num4;
break; break;
@@ -39,7 +39,7 @@ namespace Microsoft.Iris.Render.Protocol
{ {
} }
internal MessagingSession( internal unsafe MessagingSession(
IRenderHost renderHost, IRenderHost renderHost,
RenderToken token, RenderToken token,
TimeoutHandler handlerTimeout, TimeoutHandler handlerTimeout,
@@ -13,7 +13,7 @@ namespace Microsoft.Iris.Render.Protocol
{ {
private bool m_fFreeOnDispose; private bool m_fFreeOnDispose;
protected RenderPort m_renderPort; protected RenderPort m_renderPort;
protected RENDERHANDLE m_renderHandle; internal RENDERHANDLE m_renderHandle;
public RemoteObject(RenderPort port, IRenderHandleOwner owner) public RemoteObject(RenderPort port, IRenderHandleOwner owner)
{ {
@@ -215,28 +215,30 @@ namespace Microsoft.Iris.Render.Protocol
{ {
Debug2.Validate(idRemoteBuffer != RENDERHANDLE.NULL, typeof(ArgumentNullException), nameof(idRemoteBuffer)); Debug2.Validate(idRemoteBuffer != RENDERHANDLE.NULL, typeof(ArgumentNullException), nameof(idRemoteBuffer));
this.UpdateTraffic(0U, cbSize); this.UpdateTraffic(0U, cbSize);
EngineApi.IFC(EngineApi.SpBufferOpen(&new EngineApi.BufferInfo() var info = new EngineApi.BufferInfo
{ {
idContextSrc = this._session.LocalContext, idContextSrc = this._session.LocalContext,
idContextDest = this._idRemoteContext, idContextDest = this._idRemoteContext,
idBuffer = idRemoteBuffer, idBuffer = idRemoteBuffer,
nFlags = 0, nFlags = 0,
cbSizeBuffer = cbSize cbSizeBuffer = cbSize
}, pvData)); };
EngineApi.IFC(EngineApi.SpBufferOpen(&info, pvData));
} }
public unsafe void SendBatchBuffer(void* pvData, uint cbSize, RENDERHANDLE idRemoteBuffer) public unsafe void SendBatchBuffer(void* pvData, uint cbSize, RENDERHANDLE idRemoteBuffer)
{ {
int num = idRemoteBuffer != RENDERHANDLE.NULL ? 1 : 0; int num = idRemoteBuffer != RENDERHANDLE.NULL ? 1 : 0;
this.UpdateTraffic(cbSize, 0U); this.UpdateTraffic(cbSize, 0U);
EngineApi.IFC(EngineApi.SpBufferOpen(&new EngineApi.BufferInfo() var info = new EngineApi.BufferInfo()
{ {
idContextSrc = this._session.LocalContext, idContextSrc = this._session.LocalContext,
idContextDest = this._idRemoteContext, idContextDest = this._idRemoteContext,
idBuffer = idRemoteBuffer, idBuffer = idRemoteBuffer,
nFlags = EngineApi.BufferFlags.IsBatch, nFlags = EngineApi.BufferFlags.IsBatch,
cbSizeBuffer = cbSize cbSizeBuffer = cbSize
}, pvData)); };
EngineApi.IFC(EngineApi.SpBufferOpen(&info, pvData));
} }
public unsafe void SendMessageBuffer(Message* pmsg) public unsafe void SendMessageBuffer(Message* pmsg)
@@ -245,14 +247,15 @@ namespace Microsoft.Iris.Render.Protocol
uint src = pmsg->cbSize; uint src = pmsg->cbSize;
if (this.ForeignByteOrder) if (this.ForeignByteOrder)
src = Memory.ConvertEndian(src); src = Memory.ConvertEndian(src);
EngineApi.IFC(EngineApi.SpBufferOpen(&new EngineApi.BufferInfo() var info = new EngineApi.BufferInfo()
{ {
idContextSrc = this._session.LocalContext, idContextSrc = this._session.LocalContext,
idContextDest = this._idRemoteContext, idContextDest = this._idRemoteContext,
idBuffer = RENDERHANDLE.NULL, idBuffer = RENDERHANDLE.NULL,
nFlags = EngineApi.BufferFlags.CopyData, nFlags = EngineApi.BufferFlags.CopyData,
cbSizeBuffer = src cbSizeBuffer = src
}, pmsg)); };
EngineApi.IFC(EngineApi.SpBufferOpen(&info, pmsg));
} }
private void UpdateTraffic(uint uControl, uint uData) private void UpdateTraffic(uint uControl, uint uData)
@@ -571,7 +574,7 @@ namespace Microsoft.Iris.Render.Protocol
private void DeferredHeapReleaseWorker(object args) => this._spareHeapCache.Push((MessageHeap)args); private void DeferredHeapReleaseWorker(object args) => this._spareHeapCache.Push((MessageHeap)args);
private object HeapCacheCallback(ObjectCache.Operation operation, object data) private unsafe object HeapCacheCallback(ObjectCache.Operation operation, object data)
{ {
this.Session.AssertOwningThread(); this.Session.AssertOwningThread();
MessageHeap key = data as MessageHeap; MessageHeap key = data as MessageHeap;
@@ -660,12 +663,12 @@ namespace Microsoft.Iris.Render.Protocol
uint num2 = 2U * num1; uint num2 = 2U * num1;
if (num2 == 0U) if (num2 == 0U)
num2 = 16U; num2 = 16U;
RENDERHANDLE[] renderhandleArray = new RENDERHANDLE[(IntPtr)num2]; RENDERHANDLE[] renderhandleArray = new RENDERHANDLE[num2];
if (num1 > 0U) if (num1 > 0U)
Array.Copy(_pendingBatchDeletes, renderhandleArray, this._pendingBatchDeletes.Length); Array.Copy(_pendingBatchDeletes, renderhandleArray, this._pendingBatchDeletes.Length);
this._pendingBatchDeletes = renderhandleArray; this._pendingBatchDeletes = renderhandleArray;
} }
this._pendingBatchDeletes[(IntPtr)this._pendingBatchDeleteSlot] = handle; this._pendingBatchDeletes[this._pendingBatchDeleteSlot] = handle;
++this._pendingBatchDeleteSlot; ++this._pendingBatchDeleteSlot;
} }
@@ -690,12 +693,12 @@ namespace Microsoft.Iris.Render.Protocol
uint num2 = 2U * num1; uint num2 = 2U * num1;
if (num2 == 0U) if (num2 == 0U)
num2 = 16U; num2 = 16U;
RENDERGROUP[] rendergroupArray = new RENDERGROUP[(IntPtr)num2]; RENDERGROUP[] rendergroupArray = new RENDERGROUP[num2];
if (num1 > 0U) if (num1 > 0U)
Array.Copy(_pendingBatchGroupDeletes, rendergroupArray, this._pendingBatchGroupDeletes.Length); Array.Copy(_pendingBatchGroupDeletes, rendergroupArray, this._pendingBatchGroupDeletes.Length);
this._pendingBatchGroupDeletes = rendergroupArray; this._pendingBatchGroupDeletes = rendergroupArray;
} }
this._pendingBatchGroupDeletes[(IntPtr)this._pendingBatchGroupDeleteSlot] = group; this._pendingBatchGroupDeletes[this._pendingBatchGroupDeleteSlot] = group;
++this._pendingBatchGroupDeleteSlot; ++this._pendingBatchGroupDeleteSlot;
} }
@@ -46,7 +46,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,
@@ -34,7 +34,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,
@@ -40,7 +40,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,
@@ -32,7 +32,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,
@@ -32,7 +32,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
RemoteDesktopManager remoteDesktopManager = new RemoteDesktopManager(port, _priv_owner); RemoteDesktopManager remoteDesktopManager = new RemoteDesktopManager(port, _priv_owner);
uint num = (uint)sizeof(RemoteDesktopManager.Msg2_Create); uint num = (uint)sizeof(RemoteDesktopManager.Msg2_Create);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
RemoteDesktopManager.Msg2_Create* msg2CreatePtr = (RemoteDesktopManager.Msg2_Create*)pMem; RemoteDesktopManager.Msg2_Create* msg2CreatePtr = (RemoteDesktopManager.Msg2_Create*)pMem;
msg2CreatePtr->_priv_size = num; msg2CreatePtr->_priv_size = num;
msg2CreatePtr->_priv_msgid = 2U; msg2CreatePtr->_priv_msgid = 2U;
@@ -28,7 +28,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner); RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner);
uint num = (uint)sizeof(RemoteFormWindow.Msg41_Create); uint num = (uint)sizeof(RemoteFormWindow.Msg41_Create);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*)pMem; RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*)pMem;
msg41CreatePtr->_priv_size = num; msg41CreatePtr->_priv_size = num;
msg41CreatePtr->_priv_msgid = 41U; msg41CreatePtr->_priv_msgid = 41U;
@@ -33,7 +33,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Nt
RemoteHwndHostWindow remoteHwndHostWindow = new RemoteHwndHostWindow(port, _priv_owner); RemoteHwndHostWindow remoteHwndHostWindow = new RemoteHwndHostWindow(port, _priv_owner);
uint num = (uint)sizeof(RemoteHwndHostWindow.Msg4_Create); uint num = (uint)sizeof(RemoteHwndHostWindow.Msg4_Create);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
RemoteHwndHostWindow.Msg4_Create* msg4CreatePtr = (RemoteHwndHostWindow.Msg4_Create*)pMem; RemoteHwndHostWindow.Msg4_Create* msg4CreatePtr = (RemoteHwndHostWindow.Msg4_Create*)pMem;
msg4CreatePtr->_priv_size = num; msg4CreatePtr->_priv_size = num;
msg4CreatePtr->_priv_msgid = 4U; msg4CreatePtr->_priv_msgid = 4U;
@@ -30,7 +30,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop
RemoteInputRouter remoteInputRouter = new RemoteInputRouter(port, _priv_owner); RemoteInputRouter remoteInputRouter = new RemoteInputRouter(port, _priv_owner);
uint num = (uint)sizeof(RemoteInputRouter.Msg2_Create); uint num = (uint)sizeof(RemoteInputRouter.Msg2_Create);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
RemoteInputRouter.Msg2_Create* msg2CreatePtr = (RemoteInputRouter.Msg2_Create*)pMem; RemoteInputRouter.Msg2_Create* msg2CreatePtr = (RemoteInputRouter.Msg2_Create*)pMem;
msg2CreatePtr->_priv_size = num; msg2CreatePtr->_priv_size = num;
msg2CreatePtr->_priv_msgid = 2U; msg2CreatePtr->_priv_msgid = 2U;
@@ -27,7 +27,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Desktop.Xenon
RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner); RemoteFormWindow remoteFormWindow = new RemoteFormWindow(port, _priv_owner);
uint num = (uint)sizeof(RemoteFormWindow.Msg41_Create); uint num = (uint)sizeof(RemoteFormWindow.Msg41_Create);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*)pMem; RemoteFormWindow.Msg41_Create* msg41CreatePtr = (RemoteFormWindow.Msg41_Create*)pMem;
msg41CreatePtr->_priv_size = num; msg41CreatePtr->_priv_size = num;
msg41CreatePtr->_priv_msgid = 41U; msg41CreatePtr->_priv_msgid = 41U;
@@ -34,7 +34,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,
@@ -28,7 +28,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
RENDERHANDLE callbackInstance = _priv_protocolInstance.RenderPortCallback_CallbackInstance; RENDERHANDLE callbackInstance = _priv_protocolInstance.RenderPortCallback_CallbackInstance;
uint num = (uint)sizeof(LocalRenderPortCallback.Msg0_OnBatchProcessed); uint num = (uint)sizeof(LocalRenderPortCallback.Msg0_OnBatchProcessed);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
LocalRenderPortCallback.Msg0_OnBatchProcessed* onBatchProcessedPtr = (LocalRenderPortCallback.Msg0_OnBatchProcessed*)pMem; LocalRenderPortCallback.Msg0_OnBatchProcessed* onBatchProcessedPtr = (LocalRenderPortCallback.Msg0_OnBatchProcessed*)pMem;
onBatchProcessedPtr->_priv_size = num; onBatchProcessedPtr->_priv_size = num;
onBatchProcessedPtr->_priv_msgid = 0U; onBatchProcessedPtr->_priv_msgid = 0U;
@@ -48,7 +48,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
RENDERHANDLE callbackInstance = _priv_protocolInstance.RenderPortCallback_CallbackInstance; RENDERHANDLE callbackInstance = _priv_protocolInstance.RenderPortCallback_CallbackInstance;
uint num = (uint)sizeof(LocalRenderPortCallback.Msg1_OnPingReply); uint num = (uint)sizeof(LocalRenderPortCallback.Msg1_OnPingReply);
// ISSUE: untyped stack allocation // ISSUE: untyped stack allocation
byte* pMem = (byte*)__untypedstackalloc(1 * (int)num); byte* pMem = stackalloc byte[(int)num];
LocalRenderPortCallback.Msg1_OnPingReply* msg1OnPingReplyPtr = (LocalRenderPortCallback.Msg1_OnPingReply*)pMem; LocalRenderPortCallback.Msg1_OnPingReply* msg1OnPingReplyPtr = (LocalRenderPortCallback.Msg1_OnPingReply*)pMem;
msg1OnPingReplyPtr->_priv_size = num; msg1OnPingReplyPtr->_priv_size = num;
msg1OnPingReplyPtr->_priv_msgid = 1U; msg1OnPingReplyPtr->_priv_msgid = 1U;
@@ -75,7 +75,7 @@ namespace Microsoft.Iris.Render.Protocols.Splash.Messaging
public override int GetHashCode() => base.GetHashCode(); public override int GetHashCode() => base.GetHashCode();
internal static RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _); internal static unsafe RENDERHANDLE BindCallback(RenderPort port) => port.RegisterCallback(new PortCallback(DispatchCallback), out uint _);
private static unsafe void DispatchCallback( private static unsafe void DispatchCallback(
RenderPort port, RenderPort port,

Some files were not shown because too many files have changed in this diff Show More