Skip to content

Commit ef28ecc

Browse files
committed
refactor fastqscreen
1 parent 4fb0e99 commit ef28ecc

File tree

1 file changed

+12
-10
lines changed

1 file changed

+12
-10
lines changed

R/app-fastqscreen.R

+12-10
Original file line numberDiff line numberDiff line change
@@ -8,27 +8,29 @@
88

99
ezMethodFastqScreen = function(input=NA, output=NA, param=NA,
1010
htmlFile="00index.html"){
11-
if(sum(input$meta$`Read Count`) > 1e9){
12-
input <- ezMethodSubsampleFastq(input=input, param=param)
11+
inputReadCount = input$meta$`Read Count`
12+
if (!is.null(inputReadCount)){
13+
## TODO will fail if input is an unmapped bam but does not have read counts
14+
inputReadCount = countReadsInFastq(input$getFullPaths("Read1"))
1315
}
14-
inputRaw <- input$copy()
16+
if(sum(inputReadCount) > 1e9){
17+
input <- ezMethodSubsampleFastq(input=input, param=param, n=1e6)
18+
}
19+
inputUntrimmed <- input$copy()
1520
# Preprocessing
1621
param$trimAdapter = TRUE
1722
if(input$readType() == "bam"){
1823
stopifnot(input$getLength() == 1L) ## We only support one uBam now.
19-
fastqInput <- ezMethodBam2Fastq(input = input, param = param,
24+
inputUntrimmed <- ezMethodBam2Fastq(input = inputUntrimmed, param = param,
2025
OUTPUT_PER_RG=TRUE)
21-
input <- ezMethodFastpTrim(input = fastqInput, param = param)
22-
inputRaw <- fastqInput
23-
}else{
24-
input <- ezMethodFastpTrim(input = input, param = param)
2526
}
26-
dataset = inputRaw$meta
27+
input <- ezMethodFastpTrim(input = inputUntrimmed, param = param)
28+
dataset = inputUntrimmed$meta
2729
# fastqscreen part
2830

2931
## get Adapter contamination from raw data
3032
confFile = FASTQSCREEN_ADAPTER_CONF
31-
files_rawData = inputRaw$getFullPaths("Read1")
33+
files_rawData = inputUntrimmed$getFullPaths("Read1")
3234
resultFiles_rawData = executeFastqscreenCMD(param, confFile = confFile,
3335
files_rawData)
3436
fastqData_rawData = collectFastqscreenOutput(files_rawData,

0 commit comments

Comments
 (0)