Ejemplo n.º 1
0
        /// <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;
        }
Ejemplo n.º 2
0
        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);
            }
        }
Ejemplo n.º 3
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);
        }
Ejemplo n.º 4
0
        /// <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);
        }