Added raw UIX.RenderApi project

This commit is contained in:
Yoshi Askharoun
2021-07-11 22:59:29 -05:00
parent 6c9aacb510
commit 9fec520340
456 changed files with 45596 additions and 20 deletions
@@ -0,0 +1,49 @@
// Decompiled with JetBrains decompiler
// Type: Microsoft.Iris.Render.Protocol.LocalChannel
// Assembly: UIX.RenderApi, Version=4.8.0.0, Culture=neutral, PublicKeyToken=ddd0da4d3e678217
// MVID: D47658B8-A8EA-43D6-8837-ECE823BFFFC1
// Assembly location: C:\Program Files\Zune\UIX.RenderApi.dll
using Microsoft.Iris.Render.Common;
using System;
namespace Microsoft.Iris.Render.Protocol
{
internal class LocalChannel : RenderObject, IChannel
{
private IntPtr m_renderThread;
public LocalChannel(LocalConnectionInfo connectionInfo)
{
}
public bool IsConnected => this.m_renderThread != IntPtr.Zero;
public void Connect(
ContextID remoteContextId,
RENDERHANDLE brokerClassHandle,
MessageCookieLayout layout)
{
Debug2.Validate(remoteContextId != ContextID.NULL, typeof (ArgumentNullException), nameof (remoteContextId));
EngineApi.IFC(EngineApi.SpRenderThreadInit(ref new EngineApi.InitArgs(layout, remoteContextId)
{
idObjectBrokerClass = brokerClassHandle
}, out this.m_renderThread));
}
protected override void Dispose(bool inDispose)
{
try
{
if (!(this.m_renderThread != IntPtr.Zero))
return;
EngineApi.IFC(EngineApi.SpRenderThreadUninit(this.m_renderThread));
this.m_renderThread = IntPtr.Zero;
}
finally
{
base.Dispose(inDispose);
}
}
}
}