public CANDatabase ParseFile(FileModel file, ParsingArguments arguments) { string line; CANDatabase dbcObject = new CANDatabase(); dbcObject.Name = file.Name; dbcObject.Messages = new List <Message>(); using FileStream fileStream = File.OpenRead(file.Location); using var streamReader = new StreamReader(fileStream); while ((line = streamReader.ReadLine()) != null) { if (LinePrefix.CheckLine(line, "BU_")) { dbcObject.NetworkNodes = NetworkNodeParser.ParseLine(line); } else if (LinePrefix.CheckLine(line, "BO_")) { Message message = MessageParser.ParseLine(line, arguments.Messages); dbcObject.Messages.Add(message); } else if (LinePrefix.CheckLine(line, " SG_")) { Signal signal = SignalParser.ParseLine(line, arguments.Signals); int indexOfLast = dbcObject.Messages.Count - 1; dbcObject.Messages[indexOfLast].Signals.Add(signal); } } return(dbcObject); }
/// <summary> /// Adds the new prefix. /// <example> /// <code> /// Add(@"IF (NOT EXISTS(SELECT OrganizationId FROM Organizations WHERE OrganizationId=777))"); /// using (NewPrefix("\t", "BEGIN", "END")) /// { /// Add("INSERT INTO Organizations (OrganizationId, OrganizationName) VALUES (777,'{0}')", "Some Organization"); /// } /// </code> /// </example> /// </summary> /// <param name="prefix">The prefix.</param> /// <param name="groupPrefix">The group prefix.</param> /// <param name="groupPostfix">The group postfix.</param> /// <returns></returns> protected IDisposable NewPrefix(string prefix, string groupPrefix, string groupPostfix) { Add(groupPrefix); Prefix = new LinePrefix(this, prefix, groupPostfix); return(Prefix); }
public static string GetLinePrefixText(LinePrefix prefix) { switch (prefix) { case LinePrefix.Comment: return(CommentLinePrefix); case LinePrefix.MetaData: return(MetaDataLinePrefix); case LinePrefix.PeptideData: return(PeptideDataLinePrefix); case LinePrefix.PeptideTable: return(PeptideTableLinePrefix); case LinePrefix.ProteinData: return(ProteinDataLinePrefix); case LinePrefix.ProteinTable: return(ProteinTableLinePrefix); case LinePrefix.PsmData: return(PsmDataLinePrefix); case LinePrefix.PsmTable: return(PsmTableLinePrefix); case LinePrefix.SmallMoleculeData: return(SmallMoleculeDataLinePrefix); case LinePrefix.SmallMoleculeTable: return(SmallMoleculeTableLinePrefix); } throw new Exception("Shouldn't be able to get here"); }
public static string GetLinePrefixText(LinePrefix prefix) { switch (prefix) { case LinePrefix.Comment: return CommentLinePrefix; case LinePrefix.MetaData: return MetaDataLinePrefix; case LinePrefix.PeptideData: return PeptideDataLinePrefix; case LinePrefix.PeptideTable: return PeptideTableLinePrefix; case LinePrefix.ProteinData: return ProteinDataLinePrefix; case LinePrefix.ProteinTable: return ProteinTableLinePrefix; case LinePrefix.PsmData: return PsmDataLinePrefix; case LinePrefix.PsmTable: return PsmTableLinePrefix; case LinePrefix.SmallMoleculeData: return SmallMoleculeDataLinePrefix; case LinePrefix.SmallMoleculeTable: return SmallMoleculeTableLinePrefix; } throw new Exception("Shouldn't be able to get here"); }