コード例 #1
0
        public void TestBadMetricException()
        {
            int[] tmp = new int[] {
                6, 34, 1, 7, 2, 10, 20, 25, 30, 35, 40, 9, 19, 24, 29, 34, 39, 40, 2, 14, 21, 27, 32, 36, 40
                , 7, 0, 90, 4, 1, 0, 0, 0, 0, 0, -70, 22, 4, 0, -81, -49, 1, 0, -68, 16, 0, 0, 78, -86, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 2, 0, 0, 0, 0, 0, 75, -81, 3, 0, -96, -81, 0, 0, 76, 4, 0, 0, 112, 62, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 3, 0, 0, 0, 0, 0, -80, 60, 3, 0, -74, -46, 0, 0, -85, 1, 0, 0, -106, -112, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());
            uint             ALL_IDS = (uint)filter_options.UseAll.ALL_IDS;
            filter_options   options = new filter_options(tile_naming_method.FourDigit, ALL_IDS, 0, dna_bases.A, ALL_IDS, 1, 1);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            flowcell_data data = new flowcell_data();

            c_csharp_plot.plot_flowcell_map(run, "NoMetric", options, data);
        }
コード例 #2
0
 public info(flowcell_layout flowcell, read_info_vector reads) : this(c_csharp_runPINVOKE.new_info__SWIG_11(flowcell_layout.getCPtr(flowcell), read_info_vector.getCPtr(reads)), true)
 {
     if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #3
0
 public read_info_vector(read_info_vector other) : this(c_csharp_runPINVOKE.new_read_info_vector__SWIG_1(read_info_vector.getCPtr(other)), true)
 {
     if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #4
0
        public void TestListErrorMetricFilenames()
        {
            run_metrics run = new run_metrics();

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 3));
            run.run_info(new info(new flowcell_layout(2, 2, 2, 16),
                                  reads
                                  ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            string_vector filenames = new string_vector();

            run.list_filenames(metric_group.Error, filenames, "RunFolder");
            Assert.AreEqual(filenames.Count, 4);
            string interopFolder       = Path.Combine("RunFolder", "InterOp");
            string interopFolderCycle1 = Path.Combine(interopFolder, "C1.1");
            string interopFolderCycle2 = Path.Combine(interopFolder, "C2.1");
            string interopFolderCycle3 = Path.Combine(interopFolder, "C3.1");

            Assert.AreEqual(filenames[0], Path.Combine(interopFolder, "ErrorMetricsOut.bin"));
            Assert.AreEqual(filenames[1], Path.Combine(interopFolderCycle1, "ErrorMetricsOut.bin"));
            Assert.AreEqual(filenames[2], Path.Combine(interopFolderCycle2, "ErrorMetricsOut.bin"));
            Assert.AreEqual(filenames[3], Path.Combine(interopFolderCycle3, "ErrorMetricsOut.bin"));
        }
コード例 #5
0
 public run_summary(read_info_vector reads, uint lane_count, uint surface_count, uint channel_count) : this(c_csharp_summaryPINVOKE.new_run_summary__SWIG_2(read_info_vector.getCPtr(reads), lane_count, surface_count, channel_count), true)
 {
     if (c_csharp_summaryPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_summaryPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #6
0
		public void Histogram()
		{

			int[] tmp = new int[]{
                6,34,1,7,2,10,20,25,30,35,40,9,19,24,29,34,39,40,2,14,21,27,32,36,40
                ,7,0,90,4,1,0,0,0,0,0,-70,22,4,0,-81,-49,1,0,-68,16,0,0,78,-86,42,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,2,0,0,0,0,0,75,-81,3,0,-96,-81,0,0,76,4,0,0,112,62,44,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,3,0,0,0,0,0,-80,60,3,0,-74,-46,0,0,-85,1,0,0,-106,-112,44,0,0,0,0,0,0,0,0,0
			};
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());

            filter_options options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            bar_plot_data data = new bar_plot_data();
            c_csharp_plot.plot_qscore_histogram(run, options, data);
            Assert.AreEqual(data.size(), 1);

		}
コード例 #7
0
        public void Histogram()
        {
            int[] tmp = new int[] {
                6, 34, 1, 7, 2, 10, 20, 25, 30, 35, 40, 9, 19, 24, 29, 34, 39, 40, 2, 14, 21, 27, 32, 36, 40
                , 7, 0, 90, 4, 1, 0, 0, 0, 0, 0, -70, 22, 4, 0, -81, -49, 1, 0, -68, 16, 0, 0, 78, -86, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 2, 0, 0, 0, 0, 0, 75, -81, 3, 0, -96, -81, 0, 0, 76, 4, 0, 0, 112, 62, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 3, 0, 0, 0, 0, 0, -80, 60, 3, 0, -74, -46, 0, 0, -85, 1, 0, 0, -106, -112, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());

            filter_options   options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            bar_plot_data data = new bar_plot_data();

            c_csharp_plot.plot_qscore_histogram(run, options, data);
            Assert.AreEqual(data.size(), 1);
        }
コード例 #8
0
        public void TestListErrorMetricFilenames()
        {
            run_metrics run = new run_metrics();

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 3));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            string_vector filenames = new string_vector();

            run.list_error_metric_filenames(filenames, "RunFolder");
            Assert.AreEqual(filenames.Count, 1);
            Assert.AreEqual(filenames[0], Path.Combine("RunFolder", "InterOp", "ErrorMetricsOut.bin"));
        }
コード例 #9
0
 public read_info_vectorEnumerator(read_info_vector collection)
 {
     collectionRef = collection;
     currentIndex  = -1;
     currentObject = null;
     currentSize   = collectionRef.Count;
 }
コード例 #10
0
 public void SetRange(int index, read_info_vector values)
 {
     c_csharp_runPINVOKE.read_info_vector_SetRange(swigCPtr, index, read_info_vector.getCPtr(values));
     if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #11
0
 public void reads(read_info_vector read_vec)
 {
     c_csharp_runPINVOKE.info_reads__SWIG_1(swigCPtr, read_info_vector.getCPtr(read_vec));
     if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #12
0
 public void initialize(read_info_vector reads, uint lane_count, uint surface_count, uint channel_count)
 {
     c_csharp_summaryPINVOKE.run_summary_initialize__SWIG_1(swigCPtr, read_info_vector.getCPtr(reads), lane_count, surface_count, channel_count);
     if (c_csharp_summaryPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_summaryPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #13
0
 public void copy_reads(read_info_vector dst)
 {
     c_csharp_summaryPINVOKE.run_summary_copy_reads(swigCPtr, read_info_vector.getCPtr(dst));
     if (c_csharp_summaryPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_summaryPINVOKE.SWIGPendingException.Retrieve();
     }
 }
コード例 #14
0
        public void IntensityTest()
        {
            int[] tmp = new int[] { 2, 10
                                    , 7, 0, 90, 4, 100, 0, -67, -66, 15, 74
                                    , 7, 0, 90, 4, 102, 0, 74, 122, -59, 74
                                    , 7, 0, 90, 4, 101, 0, 12, 94, -115, 73
                                    , 7, 0, 90, 4, 103, 0, 16, 54, 66, 74
                                    , 7, 0, 90, 4, -56, 0, 82, -11, 80, 58
                                    , 7, 0, 90, 4, -55, 0, -62, 42, -99, 58
                                    , 7, 0, 90, 4, 44, 1, -102, 113, 39, 64
                                    , 7, 0, -66, 4, 100, 0, -67, -66, 15, 74
                                    , 7, 0, -66, 4, 102, 0, 74, 122, -59, 74
                                    , 7, 0, -66, 4, 101, 0, 46, 103, -113, 73
                                    , 7, 0, -66, 4, 103, 0, 0, 2, 69, 74
                                    , 7, 0, -66, 4, -56, 0, 21, 111, -87, 58
                                    , 7, 0, -66, 4, -55, 0, -86, 29, -79, 58
                                    , 7, 0, -66, 4, 44, 1, 6, -42, 39, 64
                                    , 7, 0, 66, 8, 100, 0, -67, -66, 15, 74
                                    , 7, 0, 66, 8, 102, 0, 74, 122, -59, 74
                                    , 7, 0, 66, 8, 101, 0, 67, -26, -109, 73
                                    , 7, 0, 66, 8, 103, 0, 92, 47, 75, 74
                                    , 7, 0, 66, 8, -56, 0, 123, 22, -100, 58
                                    , 7, 0, 66, 8, -55, 0, 85, 6, 115, 58
                                    , 7, 0, 66, 8, 44, 1, 57, 97, 31, 64 };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.tile_metric_set());

            filter_options   options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            candle_stick_plot_data data = new candle_stick_plot_data();

            c_csharp_plot.plot_by_lane(run, metric_type.ClusterCountPF, options, data);
            Assert.AreEqual(data.size(), 1);
        }
コード例 #15
0
        public read_info_vector GetRange(int index, int count)
        {
            global::System.IntPtr cPtr = c_csharp_runPINVOKE.read_info_vector_GetRange(swigCPtr, index, count);
            read_info_vector      ret  = (cPtr == global::System.IntPtr.Zero) ? null : new read_info_vector(cPtr, true);

            if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
            {
                throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
            }
            return(ret);
        }
コード例 #16
0
        public static read_info_vector Repeat(read_info value, int count)
        {
            global::System.IntPtr cPtr = c_csharp_runPINVOKE.read_info_vector_Repeat(read_info.getCPtr(value), count);
            read_info_vector      ret  = (cPtr == global::System.IntPtr.Zero) ? null : new read_info_vector(cPtr, true);

            if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
            {
                throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
            }
            return(ret);
        }
コード例 #17
0
        public void Heatmap()
        {
            int[] tmp = new int[] {
                6, 34, 1, 7, 2, 10, 20, 25, 30, 35, 40, 9, 19, 24, 29, 34, 39, 40, 2, 14, 21, 27, 32, 36, 40
                , 7, 0, 90, 4, 1, 0, 0, 0, 0, 0, -70, 22, 4, 0, -81, -49, 1, 0, -68, 16, 0, 0, 78, -86, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 2, 0, 0, 0, 0, 0, 75, -81, 3, 0, -96, -81, 0, 0, 76, 4, 0, 0, 112, 62, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 3, 0, 0, 0, 0, 0, -80, 60, 3, 0, -74, -46, 0, 0, -85, 1, 0, 0, -106, -112, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());

            filter_options   options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            uint         row_count = c_csharp_plot.count_rows_for_heatmap(run);
            uint         col_count = c_csharp_plot.count_columns_for_heatmap(run);
            var          buffer    = new float[row_count * col_count];
            heatmap_data data      = new heatmap_data();

            c_csharp_plot.plot_qscore_heatmap(run, options, data, buffer);
            Assert.AreEqual(data.row_count(), 3);
            Assert.AreEqual(data.column_count(), 40);
            heatmap_data data2 = new heatmap_data();

            c_csharp_plot.plot_qscore_heatmap(run, options, data2);
            for (uint row = 0; row < data.row_count(); row++)
            {
                for (uint col = 0; col < data.column_count(); col++)
                {
                    Assert.AreEqual(buffer[row * data.column_count() + col], data2.at(row, col));
                }
            }
        }
コード例 #18
0
		public void IntensityTest()
		{
            int[] tmp = new int[]{2,10
                        ,7,0,90,4,100,0,-67,-66,15,74
                        ,7,0,90,4,102,0,74,122,-59,74
                        ,7,0,90,4,101,0,12,94,-115,73
                        ,7,0,90,4,103,0,16,54,66,74
                        ,7,0,90,4,-56,0,82,-11,80,58
                        ,7,0,90,4,-55,0,-62,42,-99,58
                        ,7,0,90,4,44,1,-102,113,39,64
                        ,7,0,-66,4,100,0,-67,-66,15,74
                        ,7,0,-66,4,102,0,74,122,-59,74
                        ,7,0,-66,4,101,0,46,103,-113,73
                        ,7,0,-66,4,103,0,0,2,69,74
                        ,7,0,-66,4,-56,0,21,111,-87,58
                        ,7,0,-66,4,-55,0,-86,29,-79,58
                        ,7,0,-66,4,44,1,6,-42,39,64
                        ,7,0,66,8,100,0,-67,-66,15,74
                        ,7,0,66,8,102,0,74,122,-59,74
                        ,7,0,66,8,101,0,67,-26,-109,73
                        ,7,0,66,8,103,0,92,47,75,74
                        ,7,0,66,8,-56,0,123,22,-100,58
                        ,7,0,66,8,-55,0,85,6,115,58
                        ,7,0,66,8,44,1,57,97,31,64
            			};
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.tile_metric_set());

            filter_options options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(2, 2, 2, 16),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            candle_stick_plot_data data = new candle_stick_plot_data();
            c_csharp_plot.plot_by_lane(run, metric_type.ClusterCountPF, options, data);
            Assert.AreEqual(data.size(), 1);

		}
コード例 #19
0
        public void PopulateFloatBackedTableTest()
        {
            int[] tmp = new int[] {
                2, 38
                , 7, 0, 90, 4, 1, 0, -12, -56, 15, 64, -98, 35, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 46, 1, 17, 1, 0, 0, 0, 0, 96, -41, -104, 36, 122, -86, -46, -120
                , 7, 0, -66, 4, 1, 0, 96, -43, 14, 64, -63, 49, 13, 64, 0, 0, 0, 0, 0, 0, 0, 0, 56, 1, 17, 1, 0, 0, 0, 0, 112, 125, 77, 38, 122, -86, -46, -120
                , 7, 0, 66, 8, 1, 0, 74, -68, 6, 64, -118, -7, 8, 64, 0, 0, 0, 0, 0, 0, 0, 0, 93, 1, 46, 1, 0, 0, 0, 0, -47, -104, 2, 40, 122, -86, -46, -120
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.extraction_metric_set());

            var run_param = new parameters();

            Assert.AreEqual(run_param.version(), 0);
            Assert.AreEqual(run.extraction_metric_set().max_cycle(), 1);

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);

            imaging_column_vector columnVector = new imaging_column_vector();

            c_csharp_table.create_imaging_table_columns(run, columnVector);
            map_id_offset rowOffsets = new map_id_offset();

            c_csharp_table.count_table_rows(run, rowOffsets);
            uint columnCount = c_csharp_table.count_table_columns(columnVector);
            var  data        = new float[rowOffsets.Count * columnCount];

            c_csharp_table.populate_imaging_table_data(run, columnVector, rowOffsets, data, (uint)data.Length);
            Assert.AreEqual(rowOffsets.Count, 3);
            Assert.AreEqual(data[0], 7);
        }
コード例 #20
0
ファイル: PlotQScoreHeatmap.cs プロジェクト: Illumina/interop
		public void Heatmap()
		{
			int[] tmp = new int[]{
                6,34,1,7,2,10,20,25,30,35,40,9,19,24,29,34,39,40,2,14,21,27,32,36,40
                ,7,0,90,4,1,0,0,0,0,0,-70,22,4,0,-81,-49,1,0,-68,16,0,0,78,-86,42,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,2,0,0,0,0,0,75,-81,3,0,-96,-81,0,0,76,4,0,0,112,62,44,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,3,0,0,0,0,0,-80,60,3,0,-74,-46,0,0,-85,1,0,0,-106,-112,44,0,0,0,0,0,0,0,0,0
			};
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());

            filter_options options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            uint row_count = c_csharp_plot.count_rows_for_heatmap(run);
            uint col_count = c_csharp_plot.count_columns_for_heatmap(run);
            var buffer = new float[row_count*col_count];
            heatmap_data data = new heatmap_data();
            c_csharp_plot.plot_qscore_heatmap(run, options, data, buffer);
            Assert.AreEqual(data.row_count(), 3);
            Assert.AreEqual(data.column_count(), 40);
            heatmap_data data2 = new heatmap_data();
            c_csharp_plot.plot_qscore_heatmap(run, options, data2);
            for(uint row=0;row<data.row_count();row++)
            {
                for(uint col=0;col<data.column_count();col++)
                {
                    Assert.AreEqual(buffer[row*data.column_count()+col], data2.at(row,col));
                }
            }

		}
コード例 #21
0
        public void PlotFlowcellMap()
        {
            int[] tmp = new int[] {
                6, 34, 1, 7, 2, 10, 20, 25, 30, 35, 40, 9, 19, 24, 29, 34, 39, 40, 2, 14, 21, 27, 32, 36, 40
                , 7, 0, 90, 4, 1, 0, 0, 0, 0, 0, -70, 22, 4, 0, -81, -49, 1, 0, -68, 16, 0, 0, 78, -86, 42, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 2, 0, 0, 0, 0, 0, 75, -81, 3, 0, -96, -81, 0, 0, 76, 4, 0, 0, 112, 62, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
                , 7, 0, 90, 4, 3, 0, 0, 0, 0, 0, -80, 60, 3, 0, -74, -46, 0, 0, -85, 1, 0, 0, -106, -112, 44, 0, 0, 0, 0, 0, 0, 0, 0, 0
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());
            uint             ALL_IDS = (uint)filter_options.UseAll.ALL_IDS;
            filter_options   options = new filter_options(tile_naming_method.FourDigit, ALL_IDS, 0, dna_bases.A, ALL_IDS, 1, 1);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            var  layout      = run.run_info().flowcell();
            uint lane_count  = layout.lane_count();
            uint swath_count = layout.total_swaths(layout.surface_count() > 1 && !options.is_specific_surface());
            uint tile_count  = layout.tiles_per_lane();

            float[]       data_buffer = new float[lane_count * swath_count * tile_count];
            uint[]        tile_buffer = new uint[lane_count * swath_count * tile_count];
            flowcell_data data        = new flowcell_data();

            c_csharp_plot.plot_flowcell_map(run, metric_type.QScore, options, data, data_buffer, tile_buffer);
            Assert.AreEqual(data.row_count(), 8);
        }
コード例 #22
0
        public void IntensityTest()
        {
            int[] tmp = new int[] {
                2, 38
                , 7, 0, 90, 4, 1, 0, -12, -56, 15, 64, -98, 35, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 46, 1, 17, 1, 0, 0, 0, 0, 96, -41, -104, 36, 122, -86, -46, -120
                , 7, 0, -66, 4, 1, 0, 96, -43, 14, 64, -63, 49, 13, 64, 0, 0, 0, 0, 0, 0, 0, 0, 56, 1, 17, 1, 0, 0, 0, 0, 112, 125, 77, 38, 122, -86, -46, -120
                , 7, 0, 66, 8, 1, 0, 74, -68, 6, 64, -118, -7, 8, 64, 0, 0, 0, 0, 0, 0, 0, 0, 93, 1, 46, 1, 0, 0, 0, 0, -47, -104, 2, 40, 122, -86, -46, -120
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.extraction_metric_set());

            var run_param = new parameters();

            Assert.AreEqual(run_param.version(), 0);
            Assert.AreEqual(run.extraction_metric_set().max_cycle(), 1);

            filter_options   options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads   = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            candle_stick_plot_data data = new candle_stick_plot_data();

            c_csharp_plot.plot_by_cycle(run, metric_type.Intensity, options, data);
            Assert.AreEqual(data.size(), 4);
        }
コード例 #23
0
        public void PopulateTableTest()
        {
            int[] tmp = new int[] {
                2, 38
                , 7, 0, 90, 4, 1, 0, -12, -56, 15, 64, -98, 35, 12, 64, 0, 0, 0, 0, 0, 0, 0, 0, 46, 1, 17, 1, 0, 0, 0, 0, 96, -41, -104, 36, 122, -86, -46, -120
                , 7, 0, -66, 4, 1, 0, 96, -43, 14, 64, -63, 49, 13, 64, 0, 0, 0, 0, 0, 0, 0, 0, 56, 1, 17, 1, 0, 0, 0, 0, 112, 125, 77, 38, 122, -86, -46, -120
                , 7, 0, 66, 8, 1, 0, 74, -68, 6, 64, -118, -7, 8, 64, 0, 0, 0, 0, 0, 0, 0, 0, 93, 1, 46, 1, 0, 0, 0, 0, -47, -104, 2, 40, 122, -86, -46, -120
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for (int i = 0; i < expected_binary_data.Length; i++)
            {
                expected_binary_data[i] = (byte)tmp[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.extraction_metric_set());

            var run_param = new parameters();

            Assert.AreEqual(run_param.version(), 0);
            Assert.AreEqual(run.extraction_metric_set().max_cycle(), 1);

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);

            imaging_table table = new imaging_table();

            c_csharp_table.create_imaging_table(run, table);
            Assert.AreEqual(table.row_count(), 3);
            Assert.AreEqual(table.at(0u, 0u), 7);
        }
コード例 #24
0
ファイル: ImagingTableLogic.cs プロジェクト: Illumina/interop
		public void PopulateFloatBackedTableTest()
		{
            int[] tmp = new int[]{
                 2,38
                 ,7,0,90,4,1,0,-12,-56,15,64,-98,35,12,64,0,0,0,0,0,0,0,0,46,1,17,1,0,0,0,0,96,-41,-104,36,122,-86,-46,-120
                 ,7,0,-66,4,1,0,96,-43,14,64,-63,49,13,64,0,0,0,0,0,0,0,0,56,1,17,1,0,0,0,0,112,125,77,38,122,-86,-46,-120
                 ,7,0,66,8,1,0,74,-68,6,64,-118,-7,8,64,0,0,0,0,0,0,0,0,93,1,46,1,0,0,0,0,-47,-104,2,40,122,-86,-46,-120
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.extraction_metric_set());

            var run_param = new parameters();
            Assert.AreEqual(run_param.version(), 0);
            Assert.AreEqual(run.extraction_metric_set().MaxCycle, 1);

            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(2, 2, 2, 16),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.legacy_channel_update(instrument_type.HiSeq);

            imaging_column_vector columnVector = new imaging_column_vector();
            c_csharp_imaging.create_imaging_table_columns(run, columnVector);
            map_id_offset rowOffsets = new map_id_offset();
            c_csharp_imaging.count_table_rows(run, rowOffsets);
            uint columnCount = c_csharp_imaging.count_table_columns(columnVector);
            var data = new float[rowOffsets.Count*columnCount];
            c_csharp_imaging.populate_imaging_table_data(run, columnVector, rowOffsets, data, (uint)data.Length);
            Assert.AreEqual(rowOffsets.Count, 3);
            Assert.AreEqual(data[0], 7);

		}
コード例 #25
0
ファイル: PlotFlowcellMap.cs プロジェクト: Illumina/interop
		public void PlotFlowcellMap()
		{
			int[] tmp = new int[]{
                6,34,1,7,2,10,20,25,30,35,40,9,19,24,29,34,39,40,2,14,21,27,32,36,40
                ,7,0,90,4,1,0,0,0,0,0,-70,22,4,0,-81,-49,1,0,-68,16,0,0,78,-86,42,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,2,0,0,0,0,0,75,-81,3,0,-96,-81,0,0,76,4,0,0,112,62,44,0,0,0,0,0,0,0,0,0
                ,7,0,90,4,3,0,0,0,0,0,-80,60,3,0,-74,-46,0,0,-85,1,0,0,-106,-112,44,0,0,0,0,0,0,0,0,0
			};
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.q_metric_set());
            uint ALL_IDS = (uint)filter_options.UseAll.ALL_IDS;
            filter_options options = new filter_options(tile_naming_method.FourDigit, ALL_IDS, 0, dna_bases.A, ALL_IDS, 1, 1);
            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(8, 2, 2, 36, 1, 1, new string_vector(), tile_naming_method.FourDigit),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.legacy_channel_update(instrument_type.HiSeq);
            run.finalize_after_load();

            var layout = run.run_info().flowcell();
            uint lane_count = layout.lane_count();
            uint swath_count = layout.total_swaths(layout.surface_count() > 1 && !options.is_specific_surface());
            uint tile_count = layout.tiles_per_lane();
            float[] data_buffer = new float[lane_count*swath_count*tile_count];
            uint[] tile_buffer  = new uint[lane_count*swath_count*tile_count];
            flowcell_data data = new flowcell_data();
            c_csharp_plot.plot_flowcell_map(run,  metric_type.QScore, options, data, data_buffer, tile_buffer);
            Assert.AreEqual(data.row_count(), 8);
		}
コード例 #26
0
		public void IntensityTest()
		{
            int[] tmp = new int[]{
                 2,38
                 ,7,0,90,4,1,0,-12,-56,15,64,-98,35,12,64,0,0,0,0,0,0,0,0,46,1,17,1,0,0,0,0,96,-41,-104,36,122,-86,-46,-120
                 ,7,0,-66,4,1,0,96,-43,14,64,-63,49,13,64,0,0,0,0,0,0,0,0,56,1,17,1,0,0,0,0,112,125,77,38,122,-86,-46,-120
                 ,7,0,66,8,1,0,74,-68,6,64,-118,-7,8,64,0,0,0,0,0,0,0,0,93,1,46,1,0,0,0,0,-47,-104,2,40,122,-86,-46,-120
            };
            byte[] expected_binary_data = new byte[tmp.Length];
            for(int i=0;i<expected_binary_data.Length;i++) expected_binary_data[i] = (byte)tmp[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data, (uint)expected_binary_data.Length, run.extraction_metric_set());

            var run_param = new parameters();
            Assert.AreEqual(run_param.version(), 0);
            Assert.AreEqual(run.extraction_metric_set().MaxCycle, 1);

            filter_options options = new filter_options(tile_naming_method.FourDigit);
            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(2, 2, 2, 16),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.set_naming_method(tile_naming_method.FourDigit);
            run.legacy_channel_update(instrument_type.HiSeq);

            candle_stick_plot_data data = new candle_stick_plot_data();
            c_csharp_plot.plot_by_cycle(run, metric_type.Intensity, options, data);
            Assert.AreEqual(data.size(), 4);

		}
コード例 #27
0
        protected override void SetUp()
        {
            string xml_file = "<?xml version=\"1.0\"?>\n" +
                              "<RunInfo xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" Version=\"2\">\n" +
                              "  <Run Id=\"120705_M00903_0009_A000000000-A12V4\" Number=\"8\">\n" +
                              "    <Flowcell>000000000-A12V4</Flowcell>\n" +
                              "    <Instrument>M00903</Instrument>\n" +
                              "    <Date>120705</Date>\n" +
                              "    <Reads>\n" +
                              "      <Read NumCycles=\"251\" Number=\"1\" IsIndexedRead=\"N\" />\n" +
                              "      <Read NumCycles=\"12\" Number=\"2\" IsIndexedRead=\"Y\" />\n" +
                              "      <Read NumCycles=\"251\" Number=\"3\" IsIndexedRead=\"N\" />\n" +
                              "    </Reads>\n" +
                              "    <FlowcellLayout LaneCount=\"1\" SurfaceCount=\"2\" SwathCount=\"1\" TileCount=\"14\" />\n" +
                              "  </Run>\n" +
                              "</RunInfo>";

            string_vector Tiles         = new string_vector();
            string_vector ImageChannels = new string_vector();

            read_info[] ReadsArr = new read_info[] {
                /*Number,    IsIndexedRead, CycleStart, CycleEnd*/
                new read_info(1, 1, 251, false),
                new read_info(2, 252, 263, true),
                new read_info(3, 264, 514, false)
            };
            read_info_vector Reads = new read_info_vector();

            for (int i = 0; i < ReadsArr.Length; i++)
            {
                Reads.Add(ReadsArr[i]);
            }
            tile_naming_method TileNamingConvention = tile_naming_method.UnknownTileNamingMethod;
            uint            LaneCount      = 1;
            uint            SurfaceCount   = 2;
            uint            SwathCount     = 1;
            uint            TileCount      = 14;
            uint            SectionPerLane = 1;
            uint            LanePerSection = 1;
            flowcell_layout FlowcellLayout = new flowcell_layout(
                LaneCount,
                SurfaceCount,
                SwathCount,
                TileCount,
                SectionPerLane,
                LanePerSection,
                Tiles,
                TileNamingConvention);

            string           Run_Id          = "120705_M00903_0009_A000000000-A12V4";
            string           Date            = "120705";
            string           InstrumentName  = "M00903";
            uint             RunNumber       = 8;
            uint             version         = 2;
            image_dimensions ImageDimensions = new image_dimensions(/*Width*/ 0, /*Height*/ 0);

            expected_run_info = new info(Run_Id,
                                         Date,
                                         InstrumentName,
                                         RunNumber,
                                         version,
                                         FlowcellLayout,
                                         ImageChannels,
                                         ImageDimensions,
                                         Reads);
            run_info.parse(xml_file);
        }
コード例 #28
0
        public void TestLogic()
        {
            int[] tmp1 = new int[] { 1
                                     , 1, 0, 74, 47, 3, 0
                                     , 17, 0, 65, 84, 67, 65, 67, 71, 65, 67, 45, 65, 65, 71, 71, 84, 84, 67, 65, 218, 17, 0, 0, 1, 0, 49, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115
                                     , 2, 0, 74, 47, 3, 0 // changed to lane 2
                                     , 17, 0, 65, 67, 65, 71, 84, 71, 71, 84, 45, 65, 65, 71, 71, 84, 84, 67, 65, 125, 17, 0, 0, 1, 0, 50, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115
                                     , 3, 0, 74, 47, 3, 0 // changed to lane 3
                                     , 17, 0, 67, 65, 71, 65, 84, 67, 67, 65, 45, 65, 65, 71, 71, 84, 84, 67, 65, 226, 17, 0, 0, 1, 0, 51, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115 };
            int[] tmp2 = new int[] { 2, 10
                                     , 7, 0, 90, 4, 100, 0, -67, -66, 15, 74
                                     , 7, 0, 90, 4, 102, 0, 74, 122, -59, 74
                                     , 7, 0, 90, 4, 101, 0, 12, 94, -115, 73
                                     , 7, 0, 90, 4, 103, 0, 16, 54, 66, 74
                                     , 7, 0, 90, 4, -56, 0, 82, -11, 80, 58
                                     , 7, 0, 90, 4, -55, 0, -62, 42, -99, 58
                                     , 7, 0, 90, 4, 44, 1, -102, 113, 39, 64
                                     , 7, 0, -66, 4, 100, 0, -67, -66, 15, 74
                                     , 7, 0, -66, 4, 102, 0, 74, 122, -59, 74
                                     , 7, 0, -66, 4, 101, 0, 46, 103, -113, 73
                                     , 7, 0, -66, 4, 103, 0, 0, 2, 69, 74
                                     , 7, 0, -66, 4, -56, 0, 21, 111, -87, 58
                                     , 7, 0, -66, 4, -55, 0, -86, 29, -79, 58
                                     , 7, 0, -66, 4, 44, 1, 6, -42, 39, 64
                                     , 7, 0, 66, 8, 100, 0, -67, -66, 15, 74
                                     , 7, 0, 66, 8, 102, 0, 74, 122, -59, 74
                                     , 7, 0, 66, 8, 101, 0, 67, -26, -109, 73
                                     , 7, 0, 66, 8, 103, 0, 92, 47, 75, 74
                                     , 7, 0, 66, 8, -56, 0, 123, 22, -100, 58
                                     , 7, 0, 66, 8, -55, 0, 85, 6, 115, 58
                                     , 7, 0, 66, 8, 44, 1, 57, 97, 31, 64 };
            byte[] expected_binary_data1 = new byte[tmp1.Length];
            for (int i = 0; i < expected_binary_data1.Length; i++)
            {
                expected_binary_data1[i] = (byte)tmp1[i];
            }
            byte[] expected_binary_data2 = new byte[tmp2.Length];
            for (int i = 0; i < expected_binary_data2.Length; i++)
            {
                expected_binary_data2[i] = (byte)tmp2[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data1, (uint)expected_binary_data1.Length, run.index_metric_set());
            c_csharp_comm.read_interop_from_buffer(expected_binary_data2, (uint)expected_binary_data2.Length, run.tile_metric_set());

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             "",
                             "",
                             1,
                             new flowcell_layout(2, 2, 2, 16),
                             new string_vector(),
                             new image_dimensions(),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);

            index_flowcell_summary summary = new index_flowcell_summary();

            c_csharp_summary.summarize_index_metrics(run, summary);
            Assert.AreEqual(summary.size(), 2);
            //Assert.AreEqual(summary.at(0).at(0).total_reads(), 2);
        }
コード例 #29
0
ファイル: PlotSampleQC.cs プロジェクト: mszhanghm/interop
        public void ReadsIdentified()
        {
            int[] tmp1 = new int[] { 1
                                     , 1, 0, 74, 47, 3, 0
                                     , 17, 0, 65, 84, 67, 65, 67, 71, 65, 67, 45, 65, 65, 71, 71, 84, 84, 67, 65, 218, 17, 0, 0, 1, 0, 49, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115
                                     , 2, 0, 74, 47, 3, 0 // changed to lane 2
                                     , 17, 0, 65, 67, 65, 71, 84, 71, 71, 84, 45, 65, 65, 71, 71, 84, 84, 67, 65, 125, 17, 0, 0, 1, 0, 50, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115
                                     , 3, 0, 74, 47, 3, 0 // changed to lane 3
                                     , 17, 0, 67, 65, 71, 65, 84, 67, 67, 65, 45, 65, 65, 71, 71, 84, 84, 67, 65, 226, 17, 0, 0, 1, 0, 51, 11, 0, 84, 83, 67, 65, 73, 110
                                     , 100, 101, 120, 101, 115 };
            int[] tmp2 = new int[] { 2, 10
                                     , 7, 0, 90, 4, 100, 0, -67, -66, 15, 74
                                     , 7, 0, 90, 4, 102, 0, 74, 122, -59, 74
                                     , 7, 0, 90, 4, 101, 0, 12, 94, -115, 73
                                     , 7, 0, 90, 4, 103, 0, 16, 54, 66, 74
                                     , 7, 0, 90, 4, -56, 0, 82, -11, 80, 58
                                     , 7, 0, 90, 4, -55, 0, -62, 42, -99, 58
                                     , 7, 0, 90, 4, 44, 1, -102, 113, 39, 64
                                     , 7, 0, -66, 4, 100, 0, -67, -66, 15, 74
                                     , 7, 0, -66, 4, 102, 0, 74, 122, -59, 74
                                     , 7, 0, -66, 4, 101, 0, 46, 103, -113, 73
                                     , 7, 0, -66, 4, 103, 0, 0, 2, 69, 74
                                     , 7, 0, -66, 4, -56, 0, 21, 111, -87, 58
                                     , 7, 0, -66, 4, -55, 0, -86, 29, -79, 58
                                     , 7, 0, -66, 4, 44, 1, 6, -42, 39, 64
                                     , 7, 0, 66, 8, 100, 0, -67, -66, 15, 74
                                     , 7, 0, 66, 8, 102, 0, 74, 122, -59, 74
                                     , 7, 0, 66, 8, 101, 0, 67, -26, -109, 73
                                     , 7, 0, 66, 8, 103, 0, 92, 47, 75, 74
                                     , 7, 0, 66, 8, -56, 0, 123, 22, -100, 58
                                     , 7, 0, 66, 8, -55, 0, 85, 6, 115, 58
                                     , 7, 0, 66, 8, 44, 1, 57, 97, 31, 64 };
            byte[] expected_binary_data1 = new byte[tmp1.Length];
            for (int i = 0; i < expected_binary_data1.Length; i++)
            {
                expected_binary_data1[i] = (byte)tmp1[i];
            }
            byte[] expected_binary_data2 = new byte[tmp2.Length];
            for (int i = 0; i < expected_binary_data2.Length; i++)
            {
                expected_binary_data2[i] = (byte)tmp2[i];
            }
            run_metrics run = new run_metrics();

            c_csharp_comm.read_interop_from_buffer(expected_binary_data1, (uint)expected_binary_data1.Length, run.index_metric_set());
            c_csharp_comm.read_interop_from_buffer(expected_binary_data2, (uint)expected_binary_data2.Length, run.tile_metric_set());

            read_info_vector reads = new read_info_vector();

            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                             new flowcell_layout(2, 2, 2, 16),
                             reads
                             ));
            run.legacy_channel_update(instrument_type.HiSeq);

            bar_plot_data data = new bar_plot_data();

            c_csharp_plot.plot_sample_qc(run, 1, data);
            Assert.AreEqual(data.size(), 1);
        }
コード例 #30
0
 internal static global::System.Runtime.InteropServices.HandleRef getCPtr(read_info_vector obj)
 {
     return((obj == null) ? new global::System.Runtime.InteropServices.HandleRef(null, global::System.IntPtr.Zero) : obj.swigCPtr);
 }
コード例 #31
0
ファイル: PlotSampleQC.cs プロジェクト: Illumina/interop
		public void ReadsIdentified()
		{

			int[] tmp1 = new int[]{1
                          ,1,0,74,47,3,0
                          ,17,0,65,84,67,65,67,71,65,67,45,65,65,71,71,84,84,67,65,218,17,0,0,1,0,49,11,0,84,83,67,65,73,110
                          ,100,101,120,101,115
                          ,2,0,74,47,3,0 // changed to lane 2
                          ,17,0,65,67,65,71,84,71,71,84,45,65,65,71,71,84,84,67,65,125,17,0,0,1,0,50,11,0,84,83,67,65,73,110
                          ,100,101,120,101,115
                          ,3,0,74,47,3,0 // changed to lane 3
                          ,17,0,67,65,71,65,84,67,67,65,45,65,65,71,71,84,84,67,65,226,17,0,0,1,0,51,11,0,84,83,67,65,73,110
                          ,100,101,120,101,115
            			};
            int[] tmp2 = new int[]{2,10
                        ,7,0,90,4,100,0,-67,-66,15,74
                        ,7,0,90,4,102,0,74,122,-59,74
                        ,7,0,90,4,101,0,12,94,-115,73
                        ,7,0,90,4,103,0,16,54,66,74
                        ,7,0,90,4,-56,0,82,-11,80,58
                        ,7,0,90,4,-55,0,-62,42,-99,58
                        ,7,0,90,4,44,1,-102,113,39,64
                        ,7,0,-66,4,100,0,-67,-66,15,74
                        ,7,0,-66,4,102,0,74,122,-59,74
                        ,7,0,-66,4,101,0,46,103,-113,73
                        ,7,0,-66,4,103,0,0,2,69,74
                        ,7,0,-66,4,-56,0,21,111,-87,58
                        ,7,0,-66,4,-55,0,-86,29,-79,58
                        ,7,0,-66,4,44,1,6,-42,39,64
                        ,7,0,66,8,100,0,-67,-66,15,74
                        ,7,0,66,8,102,0,74,122,-59,74
                        ,7,0,66,8,101,0,67,-26,-109,73
                        ,7,0,66,8,103,0,92,47,75,74
                        ,7,0,66,8,-56,0,123,22,-100,58
                        ,7,0,66,8,-55,0,85,6,115,58
                        ,7,0,66,8,44,1,57,97,31,64
                        };
            byte[] expected_binary_data1 = new byte[tmp1.Length];
            for(int i=0;i<expected_binary_data1.Length;i++) expected_binary_data1[i] = (byte)tmp1[i];
            byte[] expected_binary_data2 = new byte[tmp2.Length];
            for(int i=0;i<expected_binary_data2.Length;i++) expected_binary_data2[i] = (byte)tmp2[i];
            run_metrics run = new run_metrics();
            c_csharp_comm.read_interop_from_buffer(expected_binary_data1, (uint)expected_binary_data1.Length, run.index_metric_set());
            c_csharp_comm.read_interop_from_buffer(expected_binary_data2, (uint)expected_binary_data2.Length, run.tile_metric_set());

            read_info_vector reads = new read_info_vector();
            reads.Add(new read_info(1, 1, 26));
            reads.Add(new read_info(2, 27, 76));
            run.run_info(new info(
                    "",
                    "",
                    1,
                    new flowcell_layout(2, 2, 2, 16),
                    new string_vector(),
                    new image_dimensions(),
                    reads
            ));
            run.legacy_channel_update(instrument_type.HiSeq);

            bar_plot_data data = new bar_plot_data();
            c_csharp_plot.plot_sample_qc(run, 1, data);
            Assert.AreEqual(data.size(), 1);

		}
コード例 #32
0
        public read_info_vector reads()
        {
            read_info_vector ret = new read_info_vector(c_csharp_runPINVOKE.info_reads__SWIG_0(swigCPtr), false);

            return(ret);
        }
コード例 #33
0
 public info(string name, string date, string instrument_name, uint run_number, uint version, flowcell_layout flowcell, string_vector channels, image_dimensions image_dim, read_info_vector reads) : this(c_csharp_runPINVOKE.new_info__SWIG_0(name, date, instrument_name, run_number, version, flowcell_layout.getCPtr(flowcell), string_vector.getCPtr(channels), image_dimensions.getCPtr(image_dim), read_info_vector.getCPtr(reads)), true)
 {
     if (c_csharp_runPINVOKE.SWIGPendingException.Pending)
     {
         throw c_csharp_runPINVOKE.SWIGPendingException.Retrieve();
     }
 }