mirror of
https://github.com/ZuneDev/Xune.git
synced 2026-07-27 13:13:10 -07:00
50 lines
1.4 KiB
C#
50 lines
1.4 KiB
C#
// 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);
|
|
}
|
|
}
|
|
}
|
|
}
|