@@ -16,9 +16,10 @@ struct Fastqinfo {
1616 seqan::CharString fastq2;
1717 bool debug;
1818 bool noReadNames;
19+ bool noQuality;
1920 bool paired;
2021
21- Fastqinfo () : debug(false ), noReadNames(false ) {}
22+ Fastqinfo () : debug(false ), noReadNames(false ), noQuality( false ) {}
2223
2324};
2425
@@ -43,6 +44,7 @@ parseCommandLine(Fastqinfo& options, int argc, char const **argv) {
4344 // add debug option:
4445 addOption (parser, seqan::ArgParseOption (" d" , " debug" , " Debug mode. Prints full hex for each read to stdout" ));
4546 addOption (parser, seqan::ArgParseOption (" R" , " no-readnames" , " Do not use read names as part of checksum" ));
47+ addOption (parser, seqan::ArgParseOption (" Q" , " no-quality" , " Do not use read quality as part of checksum" ));
4648
4749 // Parse command line.
4850 seqan::ArgumentParser::ParseResult res = seqan::parse (parser, argc, argv);
@@ -52,6 +54,7 @@ parseCommandLine(Fastqinfo& options, int argc, char const **argv) {
5254
5355 options.debug = isSet (parser, " debug" );
5456 options.noReadNames = isSet (parser, " no-readnames" );
57+ options.noQuality = isSet (parser, " no-quality" );
5558 getArgumentValue (options.fastq1 , parser, 0 );
5659 if (getArgumentValueCount (parser, 0 ) > 1 ) {
5760 getArgumentValue (options.fastq2 , parser, 0 , 1 );
@@ -158,7 +161,9 @@ int main(int argc, char const **argv) {
158161 seqan::append (string2hash1," /1" );
159162 }
160163 seqan::append (string2hash1, seq1);
161- seqan::append (string2hash1, qual1);
164+ if (!info.noQuality ) {
165+ seqan::append (string2hash1, qual1);
166+ }
162167
163168
164169 if (info.paired ) {
@@ -167,7 +172,9 @@ int main(int argc, char const **argv) {
167172 seqan::append (string2hash2," /2" );
168173 }
169174 seqan::append (string2hash2, seq2);
170- seqan::append (string2hash2, qual2);
175+ if (!info.noQuality ) {
176+ seqan::append (string2hash2, qual2);
177+ }
171178 }
172179
173180 // Get MD5 hash
0 commit comments