/// <summary></summary> private static void OnUhfReaderDetectedTag(IUhfReader reader, TagData tag) { var tagInfo = new TagInfo( antennaId: tag.AntennaId, angle: tag.PhaseAngle, detectedAt: DateTime.Now); //Console.Error.WriteLine($"Debug {tag.AntennaId} {tag.Epc}"); lock (oLock) { if (!tagBuffer.ContainsKey(tag.Epc)) { // 新規検出タグ tagBuffer.Add(tag.Epc, new List <TagInfo>()); } var infos = tagBuffer[tag.Epc]; if (infos.Count == 25) { infos.RemoveAt(13); } infos.Add(tagInfo); } }
/// <summary> /// リーダ接続検出時にプログラムを終了させる. /// XXX: 再接続処理の検討 /// </summary> private static void OnUhfReaderConnectionLost(IUhfReader reader) { eventHandler?.Set(); }