aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Logging/ViewModels/TimelineEventGroup.cs
blob: 6a86f38e69aea6f402f8076276561d91b08eb5cf (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
using System;
using System.Collections.Generic;
using System.Collections.ObjectModel;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Tango.BL.Entities;
using Tango.Core;

namespace Tango.MachineStudio.Logging.ViewModels
{
    public class TimelineEventGroup : ExtendedObject
    {
        public String Name { get; set; }

        private double _height;
        public double Height
        {
            get { return _height; }
            set { _height = value; RaisePropertyChangedAuto(); }
        }

        public ObservableCollection<MachinesEvent> Events { get; set; }

        public TimelineEventGroup()
        {
            Events = new ObservableCollection<MachinesEvent>();
        }

        public TimelineEventGroup(String name) : this()
        {
            Name = name;
        }
    }
}
class="p">.ParseExact(logs[i].Replace("[", "").Replace("]", ""), "HH:mm:ss.ff", CultureInfo.InvariantCulture); logText = logs[i + 1]; var matches = Regex.Matches(logText, @"(?<=\[)(.*?)(?=\])"); MessageLogItem item = new MessageLogItem(); item.TimeStamp = new DateTime(datetime.Year, datetime.Month, datetime.Day, date.Hour, date.Minute, date.Second, date.Millisecond); item.Category = (LogCategory)Enum.Parse(typeof(LogCategory), matches[0].ToString()); item.CallerFile = matches[1].ToString(); item.CallerMethodName = matches[2].ToString(); item.CallerLineNumber = int.Parse(matches[3].ToString()); int messageStartIndex = matches[3].Index + matches[3].Length + 2; item.Message = logText.Substring(messageStartIndex, logText.Length - messageStartIndex); logItems.Add(item); } catch (Exception ex) { LogManager.Default.Log(ex, "Could not parse log line: " + logText); } } } } }