Example #1
0
        /// <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);
            }
        }
Example #2
0
 /// <summary>
 /// リーダ接続検出時にプログラムを終了させる.
 /// XXX: 再接続処理の検討
 /// </summary>
 private static void OnUhfReaderConnectionLost(IUhfReader reader)
 {
     eventHandler?.Set();
 }