Skip to content

Commit c2872e7

Browse files
committed
update the order of polyX trimming and adapter trimming to support polyA trimming for RNA Seq
#132
1 parent 848451a commit c2872e7

File tree

3 files changed

+13
-7
lines changed

3 files changed

+13
-7
lines changed

README.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -182,9 +182,9 @@ Please note that the trimming for `--max_len` limitation will be applied at the
182182
5, quality pruning by sliding window (--cut_right)
183183
6, quality pruning at 3' (--cut_tail)
184184
7, trim polyG (--trim_poly_g, enabled by default for NovaSeq/NextSeq data)
185-
8, trim polyX (--trim_poly_x)
186-
9, trim adapter by overlap analysis (enabled by default for PE data)
187-
10, trim adapter by adapter sequence (--adapter_sequence, --adapter_sequence_r2. For PE data, this step is skipped if last step succeeded)
185+
8, trim adapter by overlap analysis (enabled by default for PE data)
186+
9, trim adapter by adapter sequence (--adapter_sequence, --adapter_sequence_r2. For PE data, this step is skipped if last step succeeded)
187+
10, trim polyX (--trim_poly_x)
188188
11, trim to max length (---max_len)
189189
```
190190

src/peprocessor.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -264,8 +264,6 @@ bool PairEndProcessor::processPairEnd(ReadPairPack* pack, ThreadConfig* config){
264264
if(r1 != NULL && r2!=NULL) {
265265
if(mOptions->polyGTrim.enabled)
266266
PolyX::trimPolyG(r1, r2, config->getFilterResult(), mOptions->polyGTrim.minLen);
267-
if(mOptions->polyXTrim.enabled)
268-
PolyX::trimPolyX(r1, r2, config->getFilterResult(), mOptions->polyXTrim.minLen);
269267
}
270268
bool isizeEvaluated = false;
271269
if(r1 != NULL && r2!=NULL && (mOptions->adapter.enabled || mOptions->correction.enabled)){
@@ -295,6 +293,11 @@ bool PairEndProcessor::processPairEnd(ReadPairPack* pack, ThreadConfig* config){
295293
isizeEvaluated = true;
296294
}
297295

296+
if(r1 != NULL && r2!=NULL) {
297+
if(mOptions->polyXTrim.enabled)
298+
PolyX::trimPolyX(r1, r2, config->getFilterResult(), mOptions->polyXTrim.minLen);
299+
}
300+
298301
if(r1 != NULL && r2!=NULL) {
299302
if( mOptions->trim.maxLen1 > 0 && mOptions->trim.maxLen1 < r1->length())
300303
r1->resize(mOptions->trim.maxLen1);

src/seprocessor.cpp

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -207,14 +207,17 @@ bool SingleEndProcessor::processSingleEnd(ReadPack* pack, ThreadConfig* config){
207207
if(r1 != NULL) {
208208
if(mOptions->polyGTrim.enabled)
209209
PolyX::trimPolyG(r1, config->getFilterResult(), mOptions->polyGTrim.minLen);
210-
if(mOptions->polyXTrim.enabled)
211-
PolyX::trimPolyX(r1, config->getFilterResult(), mOptions->polyXTrim.minLen);
212210
}
213211

214212
if(r1 != NULL && mOptions->adapter.enabled && mOptions->adapter.hasSeqR1){
215213
AdapterTrimmer::trimBySequence(r1, config->getFilterResult(), mOptions->adapter.sequence);
216214
}
217215

216+
if(r1 != NULL) {
217+
if(mOptions->polyXTrim.enabled)
218+
PolyX::trimPolyX(r1, config->getFilterResult(), mOptions->polyXTrim.minLen);
219+
}
220+
218221
if(r1 != NULL) {
219222
if( mOptions->trim.maxLen1 > 0 && mOptions->trim.maxLen1 < r1->length())
220223
r1->resize(mOptions->trim.maxLen1);

0 commit comments

Comments
 (0)