CanvasBin.CanvasBin.ScreenObservedTags C# (CSharp) Method

ScreenObservedTags() static private method

Remove any observed alignment if it wasn't 'possible'.
static private ScreenObservedTags ( HitArray>.IDictionary observedAlignments, BitArray>.IDictionary possibleAlignments ) : void
observedAlignments HitArray>.IDictionary BitArrays of observed alignment positions.
possibleAlignments BitArray>.IDictionary BitArrays of possible alignment positions.
return void
        static void ScreenObservedTags(IDictionary<string, HitArray> observedAlignments, IDictionary<string, BitArray> possibleAlignments)
        {
            foreach (string chr in possibleAlignments.Keys)
            {
                if (!observedAlignments.ContainsKey(chr))
                    continue;
                HitArray observed = observedAlignments[chr];
                BitArray possible = possibleAlignments[chr];
                for (int i = 0; i < possible.Length; i++)
                {
                    if (!possible[i])
                    {
                        observed.Data[i] = 0;
                    }
                }
            }
        }