Пример #1
0
        public void PopulateEnableBits()
        {
            var lookup      = new Dictionary <Tuple <int, ulong>, EnableBit>();
            int bitPosition = 0;

            foreach (var evt in Events)
            {
                int   level = evt.LevelValue;
                ulong mask  = evt.KeywordMask;
                var   key   = Tuple.Create(level, mask);

                if (!lookup.TryGetValue(key, out var bit))
                {
                    bit = new EnableBit(bitPosition++, level, mask);
                    lookup.Add(key, bit);
                    enableBits.Add(bit);
                }

                evt.EnableBit = bit;
            }
        }
Пример #2
0
        public void GetMask(int bit, int itemSize, int index, ulong mask)
        {
            var enableBit = new EnableBit(bit, 0, 0);

            Assert.Equal(mask, enableBit.GetMask(itemSize));
        }