예제 #1
0
        public List <double> FindAllBaseRatios()
        {
            List <double> ratios = new List <double> ();

            if (!AppSettings.Processing.USE_THREADS.Item)
            {
                foreach (KeyValuePair <string, Scaffold> scaffpair in Scaffolds)
                {
                    List <double> scafRats = scaffpair.Value.GetFragmentBaseRatio(400);
                    ratios.AddRange(scafRats);
                }

                return(ratios);
            }
            else
            {
                List <List <double> > dataPool = MainThreader.RunDividedList <Scaffold, List <double> >
                                                     (FindSubGroupBaseRatio, ShuffledScaffolds);

                foreach (List <double> dl in dataPool)
                {
                    ratios.AddRange(dl);
                }
                return(ratios);
            }
        }
예제 #2
0
 public void SendReads(List <SeqScaffPair> sql)
 {
     if (!AppSettings.Processing.USE_THREADS.Item)
     {
         SendReadScaffList(sql);
     }
     else
     {
         MainThreader.RunDividedList <SeqScaffPair> (SendReadScaffList, sql);
     }
 }
예제 #3
0
 public void SendVars(List <VarScaffPair> vpr)
 {
     if (!AppSettings.Processing.USE_THREADS.Item)
     {
         SendVarsScaffList(vpr);
     }
     else
     {
         MainThreader.RunDividedList <VarScaffPair> (SendVarsScaffList, vpr);
     }
 }
예제 #4
0
        public Dictionary <string, List <List <double> > > GetAllSingleSpatialDepthCoverages()
        {
            if (!AppSettings.Processing.USE_THREADS.Item)
            {
                return(GetAllSingleSpatDepthCovScafffList(ShuffledScaffolds));
            }
            else
            {
                List <Dictionary <string, List <List <double> > > > thList = MainThreader.RunDividedList <Scaffold, Dictionary <string, List <List <double> > > >
                                                                                 (GetAllSingleSpatDepthCovScafffList, ShuffledScaffolds);

                return(MainData.TypeDict.MergeDownDicts2D <double> (thList));
            }
        }
예제 #5
0
        public Dictionary <string, List <double> > GetAllElementLengths()
        {
            if (!AppSettings.Processing.USE_THREADS.Item)
            {
                return(GetAllEleLenScaffList(new List <Scaffold> (Scaffolds.Values)));
            }
            else
            {
                List <Dictionary <string, List <double> > > thList = MainThreader.RunDividedList <Scaffold, Dictionary <string, List <double> > >
                                                                         (GetAllEleLenScaffList, ShuffledScaffolds);

                return(MainData.TypeDict.MergeDownDicts <double> (thList));
            }
        }
예제 #6
0
        public Dictionary <string, double> RSPExprValue(string item)
        {
            SingleSeqForRSP = item;

            if (!AppSettings.Processing.USE_THREADS.Item)
            {
                return(RSPExprValueScaffList(ShuffledScaffolds));
            }
            else
            {
                List <Dictionary <string, double> > thList = MainThreader.RunDividedList <Scaffold, Dictionary <string, double> >
                                                                 (RSPExprValueScaffList, ShuffledScaffolds);
                return(MainData.TypeDict.MergeDownDictsSingular <double> (thList));
            }
        }
예제 #7
0
        public Dictionary <string, List <double> > RSPOUTMethylCoverageDepthDivision(string item)
        {
            SingleSeqForRSP = item;

            if (!AppSettings.Processing.USE_THREADS.Item)
            {
                return(RSPOUTMethylCovDepthDivScafffList(ShuffledScaffolds));
            }
            else
            {
                List <Dictionary <string, List <double> > > thList = MainThreader.RunDividedList <Scaffold, Dictionary <string, List <double> > >
                                                                         (RSPOUTMethylCovDepthDivScafffList, ShuffledScaffolds);

                return(MainData.TypeDict.MergeDownDictsSingular <List <double> >(thList));
            }
        }