/// <summary> /// Loads a mass tag database. /// </summary> /// <param name="databaseDefinition"></param> /// <param name="options">Loading options.</param> /// <returns>The mass tag database.</returns> public static IMtdbLoader Create(InputDatabase databaseDefinition, MassTagDatabaseOptions options) { IMtdbLoader loader = null; switch (databaseDefinition.DatabaseFormat) { case MassTagDatabaseFormat.SkipAlignment: loader = new DriftTimeTextFileDatabaseLoader(databaseDefinition.LocalPath); break; case MassTagDatabaseFormat.MassTagSystemSql: loader = new MtsMassTagDatabaseLoader(databaseDefinition.DatabaseName, databaseDefinition.DatabaseServer, options); break; case MassTagDatabaseFormat.Sqlite: loader = new SQLiteMassTagDatabaseLoader(databaseDefinition.LocalPath, options); break; case MassTagDatabaseFormat.MtdbCreator: loader = new MtdbCreatorDatabaseLoader(databaseDefinition.LocalPath); break; case MassTagDatabaseFormat.DelimitedTextFile: loader = new MetaSampleDatbaseLoader(databaseDefinition.LocalPath, options); break; } return loader; }
public void OnlyLoadWithDriftTime(string server, string databaseName) { var analysis = new MultiAlignAnalysis(); analysis.Options.MassTagDatabaseOptions.OnlyLoadTagsWithDriftTime = true; analysis.MetaData.Database = new InputDatabase(MassTagDatabaseFormat.MassTagSystemSql) { DatabaseServer = server, DatabaseName = databaseName }; var loader = new MtsMassTagDatabaseLoader(databaseName, server, analysis.Options.MassTagDatabaseOptions); var database = loader.LoadDatabase(); foreach (var tag in database.MassTags) { Assert.IsTrue(tag.DriftTime > 0); } }
public void LoadWithoutDriftTime(string server, string databaseName) { var analysis = new MultiAlignAnalysis(); analysis.Options.MassTagDatabaseOptions.OnlyLoadTagsWithDriftTime = false; analysis.MetaData.Database = new InputDatabase(MassTagDatabaseFormat.MassTagSystemSql) { DatabaseServer = server, DatabaseName = databaseName }; MassTagDatabaseLoader loader = new MtsMassTagDatabaseLoader(databaseName, server, analysis.Options.MassTagDatabaseOptions); var database = loader.LoadDatabase(); MassTagDatabaseLoader loader2 = new MtsMassTagDatabaseLoader(databaseName, server, analysis.Options.MassTagDatabaseOptions); loader2.Options.OnlyLoadTagsWithDriftTime = true; var database2 = loader.LoadDatabase(); Assert.Greater(database.MassTags.Count, database2.MassTags.Count); }
/// <summary> /// Loads a mass tag database. /// </summary> /// <param name="databaseDefinition"></param> /// <param name="options">Loading options.</param> /// <returns>The mass tag database.</returns> public static IMtdbLoader Create(InputDatabase databaseDefinition, MassTagDatabaseOptions options) { IMtdbLoader loader = null; switch (databaseDefinition.DatabaseFormat) { case MassTagDatabaseFormat.SkipAlignment: loader = new DriftTimeTextFileDatabaseLoader(databaseDefinition.LocalPath); break; case MassTagDatabaseFormat.MassTagSystemSql: loader = new MtsMassTagDatabaseLoader(databaseDefinition.DatabaseName, databaseDefinition.DatabaseServer, options); break; case MassTagDatabaseFormat.Sqlite: loader = new SQLiteMassTagDatabaseLoader(databaseDefinition.LocalPath, options); break; case MassTagDatabaseFormat.MtdbCreator: loader = new MtdbCreatorDatabaseLoader(databaseDefinition.LocalPath); break; case MassTagDatabaseFormat.DelimitedTextFile: loader = new MetaSampleDatbaseLoader(databaseDefinition.LocalPath, options); break; case MassTagDatabaseFormat.LiquidResultsFile: loader = new LiquidResultsFileLoader(databaseDefinition.LocalPath); break; case MassTagDatabaseFormat.GenericTsvFile: loader = new MtdbFromGenericTsvReader(databaseDefinition.LocalPath); break; } return(loader); }