params {
    result_dir = 'results/dia_batch_correction' // Where results will be saved
    report_dir = 'reports/dia_batch_correction' // Where nextflow reports will be saved

    panorama.reports_folder = null

    // A map of Skyline documents and metadata files
    // File paths can be local file paths or Panorama WebDav urls
    documents = ['<project_name>':
                    ['skyline': '<path_to_skyline_doc>',
                     'metadata': '<path_to_metadata_tsv>']
                ]

    // Normalization parameters
    normalize_db {
        // List of replicates to exclude from normalization and batch correction
        exclude_replicates = null

        // List of Skyline documents to exclude from normalization and batch correction
        exclude_projects = null

        // Normalization method to use. Options are 'DirectLFQ' and 'median'
        method = 'DirectLFQ'
    }

    // Batch correction parameters
    bc {
        // batch correction method
        method = 'combat'
        
        // Metadata keys corresponding to batch levels 1 and 2
        // If null, the project name is used as the batch variable
        batch1 = null
        batch2 = null

        // Metadata key(s) used to color PCA plots.
        // Can be either string or list. If null, batch and acquisition number are used to color plots.
        color_vars = null

        // Metadata key(s) to use as covariates for batch correction
        // Can be either string or list. If null, no covariates are used.
        covariate_vars = null

        // Metadata key indicating replicates which are controls for CV plots
        // If null, all replicates are used in CV distribution plot.
        control_key = null

        // Metadata value(s) mapping to control_key indicating whether a replicate is a control.
        control_values = null

        // File extension for standalone plots. If null, no standalone plots are produced.
        plot_ext = 'pdf'
    }
}

// Execution Profiles
profiles {
    standard {
        process.executor = 'local'

        executor.queueSize = 8

        params.max_memory = '30.GB'
        params.max_cpus = 16
        params.max_time = '24.h'
    }
}