Example #1
0
        public override void UpdateInstance(ZoneHighlighterInstance zhi, int fromIdx, int toIdx)
        {
            ZoneHighlighterInstance.XRange activeRange = zhi.ActiveRange;

            for (int i = fromIdx; i <= toIdx; i++)
            {
                FrameRecord fr = zhi.LogView.m_logData.FrameRecords[i];

                foreach (UserMarkerLocation uml in fr.UserMarkers)
                {
                    if (activeRange == null)
                    {
                        if (FromMarker != null && FromMarker.Matches(uml))
                        {
                            activeRange = zhi.StartRange(fr);
                        }
                    }
                    else
                    {
                        if (ToMarker != null && ToMarker.Matches(uml))
                        {
                            activeRange = zhi.EndRange(fr, activeRange);
                        }
                    }
                }
            }
        }
        public override void UpdateInstance(ZoneHighlighterInstance zhi, int fromIdx, int toIdx)
        {
            if (!IsValid(zhi.LogView))
            {
                return;
            }

            ZoneHighlighterInstance.XRange activeRange = zhi.ActiveRange;
            FrameRecord     previousFR, fr = null;
            ViewFrameRecord vfr;

            for (int i = fromIdx; i <= toIdx; i++)
            {
                previousFR = fr;
                fr         = zhi.LogView.m_baseLogData.FrameRecords[i];
                vfr        = zhi.LogView.m_baseViewFRs[i];

                float value = GetValue(fr, vfr, zhi.LogView);

                if (activeRange == null)
                {
                    if (value > MinThreshold && (value < MaxThreshold || MaxThreshold == -1.0f))
                    {
                        activeRange = zhi.StartRange(fr);
                    }
                    //activeRange = zhi.StartRange(previousFR != null ? previousFR : fr);
                }
                else
                {
                    if (value < MinThreshold || (value > MaxThreshold && MaxThreshold != -1.0f))
                    {
                        activeRange = zhi.EndRange(fr, activeRange);
                    }
                }
            }
        }