Mercurial > repos > matces > carpet_toolsuite
annotate carpet-src-1/tools/CARPET/com_uni.cpp @ 0:cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
| author | matces | 
|---|---|
| date | Tue, 07 Jun 2011 16:50:41 -0400 | 
| parents | |
| children | 
| rev | line source | 
|---|---|
| 0 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 1 /* | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 2 * Copyright 2009 Matteo Cesaroni, Lucilla Luzi | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 3 * | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 4 * This program is free software; ; you can redistribute it and/or modify | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 5 * it under the terms of the GNU Lesser General Public License as published by | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 6 * the Free Software Foundation; either version 3 of the License, or (at your | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 7 * option) any later version. | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 8 * | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 9 * This program is distributed in the hope that it will be useful, | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 10 * but WITHOUT ANY WARRANTY; without even the implied warranty of | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 12 * GNU General Public License for more details. | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 13 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 14 */ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 15 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 16 #include <iostream> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 17 #include <fstream> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 18 #include <string> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 19 #include <vector> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 20 #include <algorithm> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 21 #include <sstream> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 22 #include <deque> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 23 #include <map> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 24 #include <ctime> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 25 #include <cstdlib> | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 26 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 27 using namespace std; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 28 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 29 inline void Tokenize(const string& str, | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 30 vector<string>& tokens, | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 31 const string& delimiters = " ") | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 32 { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 33 // Skip delimiters at beginning. | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 34 string::size_type lastPos = str.find_first_not_of(delimiters, 0); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 35 // Find first "non-delimiter". | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 36 string::size_type pos = str.find_first_of(delimiters, lastPos); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 37 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 38 while (string::npos != pos || string::npos != lastPos) | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 39 { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 40 // Found a token, add it to the vector. | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 41 tokens.push_back(str.substr(lastPos, pos - lastPos)); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 42 // Skip delimiters. Note the "not_of" | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 43 lastPos = str.find_first_not_of(delimiters, pos); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 44 // Find next "non-delimiter" | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 45 pos = str.find_first_of(delimiters, lastPos); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 46 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 47 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 48 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 49 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 50 typedef struct { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 51 int inizioprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 52 int fineprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 53 string score; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 54 string campo1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 55 string campo2; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 56 string strand; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 57 string index; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 58 int file; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 59 } Probe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 60 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 61 struct Comparatore2 { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 62 bool operator()(const Probe& s1, const Probe& s2) const { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 63 if (s1.inizioprobe < s2.inizioprobe) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 64 return true; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 65 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 66 else if (s1.inizioprobe == s2.inizioprobe) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 67 if (s1.fineprobe < s2.fineprobe) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 68 return true; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 69 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 70 else if (s1.fineprobe == s2.fineprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 71 return true; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 72 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 73 else { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 74 return false; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 75 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 76 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 77 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 78 else { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 79 return false; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 80 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 81 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 82 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 83 }; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 84 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 85 int main (int argc, char * const argv[]) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 86 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 87 string concatenate=argv[3]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 88 int dist_t=atoi(argv[1]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 89 string choice=argv[2]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 90 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 91 string name_out= argv[6]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 92 ofstream resfile; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 93 resfile.open (name_out.c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 94 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 95 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 96 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 97 if (concatenate=="no" && choice!="union"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 98 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 99 //print "flank=$win , type=$type col6=%overlap, concatenate=$concatenate"; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 100 if (choice=="common"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 101 cout<<"flank="<<dist_t<<" , type="<<choice<<" , col6=%overlap, concatenate="<<concatenate; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 102 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 103 if (choice=="unique"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 104 cout<<"flank="<<dist_t<<" , type="<<choice<<" , col6=score o p-value"; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 105 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 106 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 107 string line; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 108 Probe thisprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 109 Probe thisanno; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 110 int overlap=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 111 vector<string> arraypro; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 112 map<string, vector<Probe> > seq; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 113 map<string, vector<Probe> > annotation; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 114 map<string, vector<Probe> >::iterator itseq; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 115 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 116 ifstream seque_file(argv[4]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 117 while (getline(seque_file, line)) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 118 string s4; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 119 s4.assign(line, 0, 1); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 120 if (line=="" || s4=="#"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 121 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 122 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 123 arraypro.clear(); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 124 Tokenize(line, arraypro, "\t"); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 125 string chr2 = (arraypro[0].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 126 thisprobe.inizioprobe=atoi(arraypro[3].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 127 thisprobe.fineprobe=atoi(arraypro[4].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 128 thisprobe.campo1=(arraypro[1].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 129 thisprobe.campo2=(arraypro[2].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 130 thisprobe.score=(arraypro[5].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 131 thisprobe.strand=(arraypro[6].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 132 thisprobe.index=(arraypro[8].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 133 seq[chr2].push_back(thisprobe); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 134 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 135 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 136 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 137 ifstream anno_file(argv[5]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 138 while (getline(anno_file, line)) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 139 string s4; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 140 s4.assign(line, 0, 1); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 141 if (line=="" || s4=="#"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 142 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 143 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 144 arraypro.clear(); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 145 Tokenize(line, arraypro, "\t"); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 146 string chr3= (arraypro[0].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 147 thisanno.inizioprobe=atoi(arraypro[3].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 148 thisanno.fineprobe=atoi(arraypro[4].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 149 thisanno.campo1=(arraypro[1].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 150 thisanno.campo2=(arraypro[2].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 151 thisanno.score=(arraypro[5].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 152 thisanno.strand=(arraypro[6].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 153 thisanno.index=(arraypro[8].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 154 annotation[chr3].push_back(thisanno); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 155 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 156 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 157 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 158 for ( itseq=seq.begin() ; itseq != seq.end(); itseq++ ){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 159 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 160 vector <Probe> seq_chr = (*itseq).second; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 161 vector <Probe> anno_chr = annotation[(*itseq).first]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 162 if(anno_chr.size()==0 && choice=="unique"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 163 for (int i=0; i<seq_chr.size();i++){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 164 resfile<<(*itseq).first<<"\t"<<seq_chr[i].campo1<<"\t"<<seq_chr[i].campo2<<"\t"<<seq_chr[i].inizioprobe<<"\t"<<seq_chr[i].fineprobe<<"\t"<<seq_chr[i].score<<"\t"<<seq_chr[i].strand<<"\t.\t"<<seq_chr[i].index<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 165 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 166 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 167 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 168 if(anno_chr.size()==0 && choice=="common"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 169 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 170 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 171 sort (seq_chr.begin(),seq_chr.end(),Comparatore2()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 172 sort (anno_chr.begin(),anno_chr.end(),Comparatore2()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 173 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 174 int finefine=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 175 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 176 for (int i=0; i<anno_chr.size();i++){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 177 if(anno_chr[i].fineprobe<=finefine){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 178 anno_chr[i].fineprobe=finefine; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 179 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 180 if(anno_chr[i].fineprobe>finefine){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 181 finefine=anno_chr[i].fineprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 182 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 183 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 184 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 185 for (int i=0; i<seq_chr.size();i++){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 186 int start_array=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 187 int fine_array=anno_chr.size(); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 188 int pos=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 189 int trovato=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 190 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 191 while (pos>0){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 192 pos=(fine_array-start_array)/2; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 193 int position=start_array+pos; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 194 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 195 if((seq_chr[i].inizioprobe-dist_t)<anno_chr[position].inizioprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 196 fine_array=position; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 197 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 198 if((seq_chr[i].inizioprobe-dist_t)>anno_chr[position].inizioprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 199 start_array=position; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 200 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 201 if((seq_chr[i].inizioprobe-dist_t)<=anno_chr[position].fineprobe && (seq_chr[i].fineprobe+dist_t)>=anno_chr[position].inizioprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 202 if (choice=="common"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 203 if (seq_chr[i].inizioprobe<=anno_chr[position].inizioprobe && seq_chr[i].fineprobe<=anno_chr[position].fineprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 204 overlap=(seq_chr[i].fineprobe-anno_chr[position].inizioprobe)*100/(seq_chr[i].fineprobe-seq_chr[i].inizioprobe); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 205 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 206 if (seq_chr[i].inizioprobe<=anno_chr[position].inizioprobe && seq_chr[i].fineprobe>=anno_chr[position].fineprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 207 overlap=(anno_chr[position].fineprobe-anno_chr[position].inizioprobe)*100/(seq_chr[i].fineprobe-seq_chr[i].inizioprobe); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 208 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 209 if (seq_chr[i].inizioprobe>=anno_chr[position].inizioprobe && seq_chr[i].fineprobe>=anno_chr[position].fineprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 210 overlap=(anno_chr[position].fineprobe-seq_chr[i].inizioprobe)*100/(seq_chr[i].fineprobe-seq_chr[i].inizioprobe); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 211 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 212 if (seq_chr[i].inizioprobe>=anno_chr[position].inizioprobe && seq_chr[i].fineprobe<=anno_chr[position].fineprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 213 overlap=100; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 214 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 215 if (overlap<0){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 216 overlap=-1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 217 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 218 resfile<<(*itseq).first<<"\t"<<seq_chr[i].campo1<<"\t"<<seq_chr[i].campo2<<"\t"<<seq_chr[i].inizioprobe<<"\t"<<seq_chr[i].fineprobe<<"\t"<<overlap<<"\t"<<seq_chr[i].strand<<"\t.\t"<<"ValueA:"<<seq_chr[i].score<<"~"<<"ValueB:"<<anno_chr[position].score<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 219 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 220 trovato=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 221 break; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 222 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 223 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 224 if (choice=="unique" && trovato==0){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 225 resfile<<(*itseq).first<<"\t"<<seq_chr[i].campo1<<"\t"<<seq_chr[i].campo2<<"\t"<<seq_chr[i].inizioprobe<<"\t"<<seq_chr[i].fineprobe<<"\t"<<seq_chr[i].score<<"\t"<<seq_chr[i].strand<<"\t.\t"<<seq_chr[i].index<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 226 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 227 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 228 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 229 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 230 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 231 if (concatenate=="yes" || choice == "union"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 232 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 233 cout<<"flank="<<dist_t<<" , type="<<choice<<" , col6=#overlaping regions, concatenate="<<concatenate; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 234 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 235 string line; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 236 Probe thisprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 237 Probe thisanno; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 238 vector<string> arraypro; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 239 map<string, vector<Probe> > seq; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 240 map<string, vector<Probe> > annotation; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 241 map<string, vector<Probe> >::iterator itseq; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 242 string concatenate=argv[3]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 243 int dist_t=atoi(argv[1]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 244 string choice=argv[2]; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 245 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 246 ifstream seque_file(argv[4]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 247 while (getline(seque_file, line)) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 248 string s4; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 249 s4.assign(line, 0, 1); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 250 if (line=="" || s4=="#"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 251 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 252 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 253 arraypro.clear(); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 254 Tokenize(line, arraypro, "\t"); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 255 string chr2 = (arraypro[0].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 256 thisprobe.inizioprobe=atoi(arraypro[3].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 257 thisprobe.fineprobe=atoi(arraypro[4].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 258 thisprobe.campo2=(arraypro[2].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 259 thisprobe.campo1=(arraypro[1].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 260 thisprobe.score=(arraypro[5].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 261 thisprobe.index=(arraypro[8].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 262 thisprobe.strand=(arraypro[6].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 263 thisprobe.file=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 264 seq[chr2].push_back(thisprobe); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 265 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 266 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 267 ifstream anno_file(argv[5]); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 268 while (getline(anno_file, line)) { | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 269 string s4; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 270 s4.assign(line, 0, 1); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 271 if (line=="" || s4=="#"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 272 continue; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 273 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 274 arraypro.clear(); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 275 Tokenize(line, arraypro, "\t"); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 276 string chr3= (arraypro[0].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 277 thisanno.inizioprobe=atoi(arraypro[3].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 278 thisanno.fineprobe=atoi(arraypro[4].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 279 thisanno.campo2=(arraypro[2].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 280 thisanno.campo1=(arraypro[1].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 281 thisanno.score=(arraypro[5].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 282 thisanno.index=(arraypro[8].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 283 thisanno.strand=(arraypro[6].c_str()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 284 thisanno.file=2; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 285 seq[chr3].push_back(thisanno); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 286 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 287 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 288 int inizio; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 289 int fine; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 290 string annot; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 291 int overlap; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 292 int inizio_ann; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 293 int fine_ann; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 294 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 295 for ( itseq=seq.begin() ; itseq != seq.end(); itseq++ ){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 296 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 297 vector <Probe> seq_chr = (*itseq).second; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 298 sort (seq_chr.begin(),seq_chr.end(),Comparatore2()); | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 299 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 300 for (int i=0; i<seq_chr.size();i++){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 301 inizio = seq_chr[i].inizioprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 302 fine=seq_chr[i].fineprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 303 int file_t=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 304 int file_t2=0; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 305 int entrato=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 306 int z=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 307 if(seq_chr[i].file==1){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 308 file_t=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 309 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 310 if(seq_chr[i].file==2){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 311 file_t2=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 312 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 313 if(i==(seq_chr.size()-1)){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 314 if (choice=="union"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 315 resfile<<(*itseq).first<<"\tfile_"<<seq_chr[i].file<<"\tunique\t"<<seq_chr[i].inizioprobe<<"\t"<<seq_chr[i].fineprobe<<"\t"<<seq_chr[i].score<<"\t"<<seq_chr[i].strand<<"\t.\t"<<seq_chr[i].index<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 316 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 317 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 318 | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 319 //cout<<"x"<<(*itseq).first<<"\t"<<seq_chr[i].inizioprobe<<"\t"<<seq_chr[i].fineprobe<<"\t"<<seq_chr[i].file<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 320 for (int y=i+1; y<seq_chr.size(); y++){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 321 if((inizio-dist_t)<=seq_chr[y].fineprobe && (fine+dist_t)>=seq_chr[y].inizioprobe){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 322 if(seq_chr[y].file==1){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 323 file_t=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 324 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 325 if(seq_chr[y].file==2){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 326 file_t2=1; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 327 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 328 if(seq_chr[y].fineprobe>fine){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 329 fine=seq_chr[y].fineprobe; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 330 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 331 entrato=2; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 332 i++; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 333 z++; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 334 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 335 if(seq_chr[y].inizioprobe>fine || y==seq_chr.size()-1){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 336 if (choice == "union" && entrato==1){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 337 resfile<<(*itseq).first<<"\tfile_"<<seq_chr[i].file<<"\tunique\t"<<inizio<<"\t"<<fine<<"\t"<<seq_chr[i].score<<"\t"<<seq_chr[i].strand<<"\t.\t"<<seq_chr[i].index<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 338 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 339 if (choice == "union" && entrato==2){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 340 resfile<<(*itseq).first<<"\tcommon\tcommon\t"<<inizio<<"\t"<<fine<<"\t"<<z<<"\t.\t.\tcommon"<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 341 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 342 if (choice == "common" && entrato==2 && file_t == 1 && file_t2 == 1 && concatenate=="yes"){ | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 343 resfile<<(*itseq).first<<"\t"<<seq_chr[i].campo1<<"\t"<<seq_chr[i].campo2<<"\t"<<inizio<<"\t"<<fine<<"\t"<<z<<"\t"<<seq_chr[i].strand<<"\t.\t"<<seq_chr[i].index<<endl; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 344 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 345 break; | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 346 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 347 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 348 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 349 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 350 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 351 } | 
| 
cdd489d98766
Migrated tool version 1.0.0 from old tool shed archive to new tool shed repository
 matces parents: diff
changeset | 352 | 
