public ExpectedMid Parse <ExpectedMid>(byte[] package) where ExpectedMid : Mid { Mid mid = Parse(package); if (mid.GetType().Equals(typeof(ExpectedMid))) { return((ExpectedMid)mid); } throw new InvalidCastException($"Package is Mid {mid.GetType().Name}, cannot be casted to {typeof(ExpectedMid).Name}"); }
public override string ToString() { string header = string.Empty; header += Length.ToString().PadLeft(4, '0'); header += Mid.ToString().PadLeft(4, '0'); header += (Revision > 0) ? Revision.ToString().PadLeft(3, '0') : string.Empty.PadLeft(3, ' '); header += NoAckFlag.ToString().PadLeft(1, ' '); header += (StationID != null) ? StationID.ToString().PadLeft(2, '0') : StationID.ToString().PadLeft(2, ' '); header += (SpindleID != null) ? SpindleID.ToString().PadLeft(2, '0') : SpindleID.ToString().PadLeft(2, ' '); string usedAs = " "; if (UsedAs != null) { usedAs = string.Empty; foreach (DataField field in UsedAs) { usedAs += field.Value.ToString(); } } header += usedAs; return(header); }
public byte[] PackBytes(Mid mid) => mid.PackBytes();
public string Pack(Mid mid) => mid.Pack();
/// <summary> /// <see cref="Mid.Pack"/> then concatenate NUL charactor to it`s end /// </summary> /// <param name="mid">Mid instance</param> /// <returns>Mid's package in string with NUL character</returns> public static string PackWithNul(this Mid mid) { if (mid == default) { return(default);
internal void SetNextTemplate(Mid mid) => NextTemplate = mid;