AlphaTab.Audio.Model.MidiTickLookup.FindMasterBar C# (CSharp) Method

FindMasterBar() private method

private FindMasterBar ( int tick ) : MasterBarTickLookup
tick int
return MasterBarTickLookup
        private MasterBarTickLookup FindMasterBar(int tick)
        {
            var bars = MasterBars;
            var bottom = 0;
            var top = bars.Count - 1;

            while (bottom <= top)
            {
                var middle = (top + bottom) / 2;
                var bar = bars[middle];

                // found?
                if (tick >= bar.Start && tick < bar.End)
                {
                    return bar;
                }
                // search in lower half
                if (tick < bar.Start)
                {
                    top = middle - 1;
                }
                // search in upper half
                else
                {
                    bottom = middle + 1;
                }
            }

            return null;
        }