]> git.donarmstrong.com Git - biopieces.git/blobdiff - bp_bin/find_barcodes
refactoring of assemble_pairs
[biopieces.git] / bp_bin / find_barcodes
index aedea09a04ebbe7dc18bdf1a86f1da11b72816f0..3cad732c0b83bc5a21ca268c47f8680b0133047a 100755 (executable)
@@ -186,7 +186,7 @@ GSMID_HASH = {
   CTACGACTGC: "MID96",
   CTAGTCACTC: "MID97",
   CTCTACGCTC: "MID98",
-  CTGTACATAC: "MID99",
+  CTGTACATAC: "MID99"
 }
 
 # Hard coded Roche Rapid Labrary MIDs
@@ -202,7 +202,45 @@ RLMID_HASH = {
   ACGTAGATCGT: "RL9",
   ACTACGTCTCT: "RL10",
   ACTATACGAGT: "RL11",
-  ACTCGCGTCGT: "RL12" 
+  ACTCGCGTCGT: "RL12", 
+  AGACTCGACGT: "RL13",
+  AGTACGAGAGT: "RL14",
+  AGTACTACTAT: "RL15",
+  AGTAGACGTCT: "RL16",
+  AGTCGTACACT: "RL17",
+  AGTGTAGTAGT: "RL18",
+  ATAGTATACGT: "RL19",
+  CAGTACGTACT: "RL20",
+  CGACGACGCGT: "RL21",
+  CGACGAGTACT: "RL22",
+  CGATACTACGT: "RL23",
+  CGTACGTCGAT: "RL24",
+  CTACTCGTAGT: "RL25",
+  GTACAGTACGT: "RL26",
+  GTCGTACGTAT: "RL27",
+  GTGTACGACGT: "RL28",
+  ACACAGTGAGT: "RL29",
+  ACACTCATACT: "RL30",
+  ACAGACAGCGT: "RL31",
+  ACAGACTATAT: "RL32",
+  ACAGAGACTCT: "RL33",
+  ACAGCTCGTGT: "RL34",
+  ACAGTGTCGAT: "RL35",
+  ACGAGCGCGCT: "RL36",
+  ACGATGAGTGT: "RL37",
+  ACGCGAGAGAT: "RL38",
+  ACGCTCTCTCT: "RL39",
+  ACGTCGCTGAT: "RL40",
+  ACGTCTAGCAT: "RL41",
+  ACTAGTGATAT: "RL42",
+  ACTCACACTGT: "RL43",
+  ACTCACTAGCT: "RL44",
+  ACTCTATATAT: "RL45",
+  ACTGATCTCGT: "RL46",
+  ACTGCTGTACT: "RL47",
+  ACTGTAGCGCT: "RL48",
+  AGACACTCACT: "RL49",
+  AGACATATAGT: "RL50"
 }
 
 class BarCodeFinderError < StandardError; end
@@ -249,7 +287,7 @@ class BarCodeFinder
       hamming_dist = 0
       barcode      = seq[@pos ... @pos + size].upcase.to_sym
 
-      if @barcode_hash.has_key? barcode
+      if @barcode_hash[barcode]
         return BarCode.new(barcode, @barcode_hash[barcode], @pos, size, hamming_dist)
       elsif @max_mismatches > 0
         @barcode_hash.each_key do |key|
@@ -314,7 +352,7 @@ bc_finder.load_barcodes(RLMID_HASH)             if options[:rlmids]
 
 Biopieces.open(options[:stream_in], options[:stream_out]) do |input, output|
   input.each_record do |record|
-    if record.has_key? :SEQ
+    if record[:SEQ]
       if barcode = bc_finder.find_barcode(record[:SEQ])
         record.merge!(barcode.to_hash)