Terraria v1.4.4.9
Terraria source code documentation
Loading...
Searching...
No Matches
IPCClient.cs
Go to the documentation of this file.
1using System;
5
7
8public class IPCClient : IPCBase
9{
10 private bool _connectedFlag;
11
12 public event Action OnConnected;
13
14 public override event Action<byte[]> OnDataArrive
15 {
16 add
17 {
19 }
20 remove
21 {
23 }
24 }
25
30
31 private void ProcessConnectedEvent()
32 {
34 {
35 if (this.OnConnected != null)
36 {
37 this.OnConnected();
38 }
39 _connectedFlag = false;
40 }
41 }
42
44 {
46 {
47 Reset();
48 _pipeBrokenFlag = false;
49 }
50 }
51
58
59 public void Init(string clientName)
60 {
61 }
62
63 public void ConnectTo(string serverName)
64 {
65 if (GetPipeStream() != null)
66 {
67 return;
68 }
69 _pipeStream = new NamedPipeClientStream(".", serverName, PipeDirection.InOut, PipeOptions.Asynchronous);
71 Task.Factory.StartNew(delegate(object content)
72 {
74 if (!((CancellationToken)content).IsCancellationRequested)
75 {
78 _connectedFlag = true;
79 }
81 }
82
83 public void Tick()
84 {
86 }
87
88 public override void ReadCallback(IAsyncResult result)
89 {
91 base.ReadCallback(result);
92 if (!obj.CancelToken.IsCancellationRequested)
93 {
94 if (GetPipeStream().IsConnected)
95 {
97 }
98 }
99 else
100 {
101 WeGameHelper.WriteDebugString("ReadCallback cancel");
102 }
103 }
104}
static ? Delegate Remove(Delegate? source, Delegate? value)
Definition Delegate.cs:463
static ? Delegate Combine(Delegate? a, Delegate? b)
Definition Delegate.cs:379
virtual unsafe PipeTransmissionMode ReadMode
static new TaskFactory< TResult > Factory
Definition Task.cs:56
CancellationTokenSource _cancelTokenSrc
Definition IPCBase.cs:27
virtual bool BeginReadData()
Definition IPCBase.cs:103
virtual void ProcessDataArriveEvent()
Definition IPCBase.cs:86
Action< byte[]> _onDataArrive
Definition IPCBase.cs:29
volatile bool _pipeBrokenFlag
Definition IPCBase.cs:23
override Action< byte[]> OnDataArrive
Definition IPCClient.cs:15
void ConnectTo(string serverName)
Definition IPCClient.cs:63
override void ReadCallback(IAsyncResult result)
Definition IPCClient.cs:88
NamedPipeClientStream GetPipeStream()
Definition IPCClient.cs:26
void Init(string clientName)
Definition IPCClient.cs:59
static void WriteDebugString(string format, params object[] args)