/// <summary> /// Creates a new log summary. /// </summary> /// <param name="log">The log to create a summary of.</param> /// <param name="defaultClassifier">The event classifier to be used.</param> /// <param name="classifiers">Classifiers.</param> /// <param name="classifiers">A collection of additional event classifiers to /// be covered by the created log info instance.</param> public XLogInfo(XLog log, IXEventClassifier defaultClassifier, List <IXEventClassifier> classifiers) { this.log = log; this.defaultClassifier = defaultClassifier; if (classifiers == null) { classifiers = new List <IXEventClassifier>(0); } this.eventClasses = new Dictionary <IXEventClassifier, XEventClasses>(classifiers.Count + 4); foreach (IXEventClassifier classifier in classifiers) { this.eventClasses.Add(classifier, new XEventClasses(classifier)); } this.eventClasses.Add(this.defaultClassifier, new XEventClasses(this.defaultClassifier)); this.eventClasses.Add(NAME_CLASSIFIER, new XEventClasses(NAME_CLASSIFIER)); this.eventClasses.Add(RESOURCE_CLASSIFIER, new XEventClasses(RESOURCE_CLASSIFIER)); this.eventClasses.Add(LIFECYCLE_TRANSITION_CLASSIFIER, new XEventClasses(LIFECYCLE_TRANSITION_CLASSIFIER)); this.numberOfEvents = 0; this.numberOfTraces = 0; this.logBoundaries = new XTimeBounds(); this.traceBoundaries = new Dictionary <IXTrace, IXTimeBounds>(); this.logAttributeInfo = new XAttributeInfo(); this.traceAttributeInfo = new XAttributeInfo(); this.eventAttributeInfo = new XAttributeInfo(); this.metaAttributeInfo = new XAttributeInfo(); Setup(); }
public void Register(IXTimeBounds boundary) { Register(boundary.GetStartDate()); Register(boundary.GetEndDate()); }