/// <summary>
        /// Adds an item to the manager (used by Profiler class)
        /// </summary>
        /// <param name="FunctionName">Function name/identifier</param>
        /// <param name="StartTime">Start time (in ms)</param>
        /// <param name="StopTime">Stop time (in ms)</param>
        public virtual void AddItem(string FunctionName, int StartTime, int StopTime)
        {
            ProfilerInfo Profiler = Profilers.Find(x => x.FunctionName == FunctionName);

            if (Profiler == null)
            {
                Profiler = new ProfilerInfo();
                Profiler.FunctionName = FunctionName;
                Profilers.Add(Profiler);
            }
            int Time = (StopTime - StartTime);

            Profiler.TotalTime += Time;
            Profiler.MaxTime    = Profiler.MaxTime.Max(Time);
            Profiler.MinTime    = Profiler.MinTime.Min(Time);
            ++Profiler.TimesCalled;
        }
Beispiel #2
0
 /// <summary>
 /// Adds an item to the manager (used by Profiler class)
 /// </summary>
 /// <param name="FunctionName">Function name/identifier</param>
 /// <param name="StartTime">Start time (in ms)</param>
 /// <param name="StopTime">Stop time (in ms)</param>
 public void AddItem(string FunctionName, int StartTime, int StopTime)
 {
     for(int x=0;x<Profilers.Count;++x)
     {
         if (Profilers[x].FunctionName.Equals(FunctionName))
         {
             int Time=(StopTime - StartTime);
             Profilers[x].TotalTime += Time;
             if (Profilers[x].MaxTime < Time)
                 Profilers[x].MaxTime = Time;
             else if (Profilers[x].MinTime > Time)
                 Profilers[x].MinTime = Time;
             ++Profilers[x].TimesCalled;
             return;
         }
     }
     ProfilerInfo Info = new ProfilerInfo();
     Info.FunctionName = FunctionName;
     Info.TotalTime = Info.MaxTime = Info.MinTime = StopTime - StartTime;
     Info.TimesCalled = 1;
     Profilers.Add(Info);
 }