private void ParseDataEntry(IEnumerable<string> stringsToParse, ref bool error) { var entryToParse = new SignalDataEntry((int)_header.SignalElementCount); uint lastParsedTime = 0; foreach (string line in stringsToParse) { if (lastParsedTime < _header.EndTimeAsUnixTime) { if ((uint)entryToParse.ElementStatesCount < _header.SignalElementCount & !entryToParse.ParseData(line)) { error = true; } if ((uint)entryToParse.ElementStatesCount == _header.SignalElementCount) { entryToParse.Freeze(); _dataEntries.TryAdd(entryToParse.TimeAsUnixTime, entryToParse); lastParsedTime = entryToParse.TimeAsUnixTime; entryToParse = new SignalDataEntry((int)_header.SignalElementCount); } } } }