4
|
1 #!/usr/bin/env Rscript
|
|
2
|
|
3 ################################################################################################
|
|
4 # batch_correction_main_wrapper #
|
|
5 # #
|
|
6 # Author: Nils Paulhe #
|
|
7 # User: Galaxy #
|
|
8 # Original data: -- #
|
|
9 # Starting date: 2017-12-11 #
|
|
10 # Version 1: 2017-12-11 #
|
|
11 # #
|
|
12 # #
|
|
13 # #
|
|
14 ################################################################################################
|
|
15
|
|
16 library(batch) #necessary for parseCommandArgs function
|
|
17
|
|
18 ##------------------------------
|
|
19 ## init. prog. constants
|
|
20 ##------------------------------
|
|
21
|
|
22 argv.wrapper <- commandArgs(trailingOnly = FALSE)
|
|
23 script.path <- sub("--file=", "", argv.wrapper[grep("--file=", argv.wrapper)])
|
|
24 prog.name <- basename(script.path)
|
|
25
|
|
26 ##------------------------------
|
|
27 ## init. functions
|
|
28 ##------------------------------
|
|
29
|
|
30 script_bypass <- function(other.script.name) {
|
|
31 initial.options <- commandArgs(trailingOnly = FALSE)
|
|
32 file.arg.name <- "--file="
|
|
33 script.name <- sub(file.arg.name, "", initial.options[grep(file.arg.name, initial.options)])
|
|
34 script.basename <- dirname(script.name)
|
|
35 other.script.fullpath <- paste(sep="/", script.basename, other.script.name)
|
|
36 other.script.cmd <- paste(sep=" ", "Rscript", other.script.fullpath, "-h")
|
|
37 system(other.script.cmd, wait=TRUE)
|
|
38 }
|
|
39
|
|
40 source_wrapper <- function(other.script.name){
|
|
41 initial.options <- commandArgs(trailingOnly = FALSE)
|
|
42 file.arg.name <- "--file="
|
|
43 script.name <- sub(file.arg.name, "", initial.options[grep(file.arg.name, initial.options)])
|
|
44 script.basename <- dirname(script.name)
|
|
45 other.script.fullpath <- paste(sep="/", script.basename, other.script.name)
|
|
46 source(other.script.fullpath)
|
|
47 }
|
|
48
|
|
49 ##------------------------------
|
|
50 ## Test Help
|
|
51 ##------------------------------
|
|
52
|
|
53 if (length(grep('-h', argv.wrapper)) > 0) {
|
|
54 cat("Usage: Rscript ",
|
|
55 prog.name,
|
|
56 "{args} \n",
|
|
57 "parameters: \n",
|
|
58 "\t-h: display this help message, call all scripts with the same option and exit (optional) \n",
|
|
59 "\t--loess \"TRUE\": call the script as \"batch_correction_all_loess_wrapper.R\"; otherwise call it as \"batch_correction_wrapper.R\" one (optional) \n",
|
|
60 "for other parameters, please refer to each script specific options and parameters. \n",
|
|
61 "\n")
|
|
62 script_bypass("batch_correction_all_loess_wrapper.R")
|
|
63 script_bypass("batch_correction_wrapper.R")
|
|
64 quit(status = 0)
|
|
65 }
|
|
66
|
|
67 ##------------------------------
|
|
68 ## check if loess or normal
|
|
69 ##------------------------------
|
|
70
|
|
71 if (length(grep('--loess', argv.wrapper)) > 0) {
|
|
72 source_wrapper("batch_correction_all_loess_wrapper.R")
|
|
73 } else {
|
|
74 source_wrapper("batch_correction_3Lwrapper.R")
|
|
75 }
|
|
76
|