public void BeginReceiveData(int DataLength) { FullData = null; Status = ReceiverStatus.Preparing; this.DataLength = DataLength; FullData = new byte[DataLength]; ReceivedLength = 0; }
private static void ReceiverChannelStatusChanged(object sender, EventArgs e) { recChanel = (IReceiverChannel)sender; Task.Run(async() => { recStatus = await recChanel.GetStatusAsync(); }); }
public Receiver(int bufferSize) { //this.isRunning = false; //this.isReconnecting = false; //this._Buffer= new byte[bufferSize]; this._Buffer = new CircularBuffer(bufferSize); this.head = 0; this.status = ReceiverStatus.Disconnected; }
internal static string ToSerializedValue(this ReceiverStatus value) { switch (value) { case ReceiverStatus.NotSpecified: return("NotSpecified"); case ReceiverStatus.Enabled: return("Enabled"); case ReceiverStatus.Disabled: return("Disabled"); } return(null); }
private void ReceiverChannelStatusChanged(object sender, EventArgs e) { if (!IsInitialized) { ReceiverStatus status = ((IReceiverChannel)sender).Status; if (status != null) { if (status.Volume.Level != null) { Volume = (float)status.Volume.Level; } if (status.Volume.IsMuted != null) { IsMuted = (bool)status.Volume.IsMuted; } } } }
public T ReceiveData <T>() where T : ISerializable { if (Status != ReceiverStatus.Extractable) { throw new NullReferenceException("数据尚未接收完毕。"); } MemoryStream = new MemoryStream(FullData) { Position = 0 }; BinaryFormatter BinaryFormatter = new BinaryFormatter(); if (MemoryStream.Capacity > 0) { Status = ReceiverStatus.Ready; return(BinaryFormatter.Deserialize <T>(MemoryStream)); } throw new EndOfStreamException("内存流字节为0。"); }
public override bool Dispose() { try { if (this.reconnectionThread != null) { this.reconnectionThread.Abort(); } } catch { } finally { this.reconnectionThread = null; } try { if (this.bluetoothStream != null) { this.bluetoothStream._Status = BluetoothStatus.Disconnected; } } catch { } finally { this.bluetoothStream = null; } try{ this._Status = ReceiverStatus.Disconnected; this._Reconnections = 0; this._SuccessfulConnections = 0; return(true); } catch (Exception) { return(false); } }
public void ReceiveCompleted(object Sender, SocketEventArgs E) { Status = ReceiverStatus.Receiving; int ReceiveCount = E.DataLength; if (ReceiveCount == 0) { Status = ReceiverStatus.Extractable; ReceiveOnce?.Invoke(this, new ReceiveOnceEventArgs() { Socket = Socket, NewData = null, CumulativeLength = ReceivedLength, ReceivedLength = 0, TotalLength = DataLength, Status = Status }); return; } //var Temp = Buffer.Clone() as byte[]; //Buffer = new byte[ReceivedLength + ReceiveCount]; //Temp.CopyTo(Buffer, 0); //E.Data.CopyTo(Buffer, ReceivedLength); Buffer = E.Data; Buffer.CopyTo(FullData, ReceivedLength); ReceivedLength += ReceiveCount; ReceiveOnce?.Invoke(this, new ReceiveOnceEventArgs() { Socket = Socket, NewData = Buffer, CumulativeLength = ReceivedLength, ReceivedLength = ReceiveCount, TotalLength = DataLength, Status = Status }); if (ReceivedLength >= DataLength) { Status = ReceiverStatus.Extractable; } }
public static string ReceiverStatusString(ReceiverStatus value) { switch (value) { case ReceiverStatus.DoingFixes: return("Doing Fixes"); case ReceiverStatus.NoGPSTime: return("No GPS Time"); case ReceiverStatus.Reserved: return("Reserved"); case ReceiverStatus.PDOPTooHigh: return("PDOP Too High"); case ReceiverStatus.NoUsableSats: return("No Sats Avail"); case ReceiverStatus.Only1Sat: return("Only One Sat"); case ReceiverStatus.Only2Sats: return("Only 2 Sats"); case ReceiverStatus.Only3Sats: return("Only 3 Sats"); case ReceiverStatus.SatUnusable: return("Sat Unuseable"); case ReceiverStatus.TAIMRejected: return("TAIM Rejected"); default: return("Unknown"); } }
public static string ToSerialString(this ReceiverStatus value) => value switch {
private void ebolt_health1(TsipPacket tp) { Debug.Print(":0x46 (E Receiver Health 1st Packet):"); receiver_status = (ReceiverStatus)tp.GetNextByte(); //byte sv_fix = tsip_byte(); byte antenna_fault = tp.GetNextByte(); }
private void secondary_timing(TsipPacket tp) { Debug.Print(":0x8F.AC (Secondary Timing)"); byte spare; try { receiver_mode = (ReceiverMode)tp.GetNextByte(); } catch { receiver_mode = ReceiverMode.Unknown; } try { discipline_mode = (DiscipliningMode)tp.GetNextByte(); } catch { discipline_mode = DiscipliningMode.Unknown; } survey_progress = tp.GetNextByte(); // 0-100% holdover = tp.GetNextDWord(); // seconds critical_alarms = tp.GetNextWord(); minor_alarms = tp.GetNextWord(); try { gps_status = (ReceiverStatus)tp.GetNextByte(); } catch { gps_status = ReceiverStatus.Unknown; } try { discipline = (DiscipliningActivity)tp.GetNextByte(); } catch { discipline = DiscipliningActivity.Unknown; } spare = tp.GetNextByte(); spare = tp.GetNextByte(); pps_offset = tp.GetNextSingle(); // in nano seconds (ns) osc_offset = tp.GetNextSingle(); // in parts per billion (ppb) dac_value = tp.GetNextDWord(); dac_voltage = tp.GetNextSingle(); // in V temperature = tp.GetNextSingle(); // in C position.Latitude = tp.GetNextDouble(); position.Longitude = tp.GetNextDouble(); position.Altitude = tp.GetNextDouble(); if (SecondaryTimingChanged != null) SecondaryTimingChanged(this, null); raise_position_change(); clear_sat_tracking(); //?? }
public ReceiverStatusChangedEventArgs(ReceiverStatus newStatus) { this.NewStatus = newStatus; }