|
| 1 | +package org.labkey.singlecell.pipeline.singlecell; |
| 2 | + |
| 3 | +import org.json.old.JSONObject; |
| 4 | +import org.labkey.api.sequenceanalysis.pipeline.AbstractPipelineStepProvider; |
| 5 | +import org.labkey.api.sequenceanalysis.pipeline.PipelineContext; |
| 6 | +import org.labkey.api.singlecell.pipeline.SeuratToolParameter; |
| 7 | +import org.labkey.api.singlecell.pipeline.SingleCellStep; |
| 8 | + |
| 9 | +import java.util.Arrays; |
| 10 | + |
| 11 | +public class RunScGateBuiltin extends AbstractRiraStep |
| 12 | +{ |
| 13 | + public RunScGateBuiltin(PipelineContext ctx, RunScGateBuiltin.Provider provider) |
| 14 | + { |
| 15 | + super(provider, ctx); |
| 16 | + } |
| 17 | + |
| 18 | + public static class Provider extends AbstractPipelineStepProvider<SingleCellStep> |
| 19 | + { |
| 20 | + public Provider() |
| 21 | + { |
| 22 | + super("RunScGateBuildin", "Run scGate (built-in)", "scGate", "This will run scGate with the default built-in models and create a consensus call.", Arrays.asList( |
| 23 | + SeuratToolParameter.create("modelNames", "Model(s)", "The set of scGate modules to test.", "ldk-simplecombo", new JSONObject() |
| 24 | + {{ |
| 25 | + put("multiSelect", true); |
| 26 | + put("storeValues", "Bcell;Tcell;NK;Myeloid;Stromal;pDC;Erythrocyte;Epithelial;Platelet_MK"); |
| 27 | + put("initialValues", "Bcell;Tcell;NK;Myeloid;Stromal;pDC;Epithelial;Epithelial;Platelet_MK"); |
| 28 | + put("delimiter", ";"); |
| 29 | + put("joinReturnValue", true); |
| 30 | + }}, null, null, true, true), |
| 31 | + SeuratToolParameter.create("consensusModels", "Models for Consensus", "The subset of models to be considered for the consensus call.", "ldk-simplecombo", new JSONObject() |
| 32 | + {{ |
| 33 | + put("multiSelect", true); |
| 34 | + put("storeValues", "Bcell;Tcell;NK;Myeloid;Stromal;pDC;Erythrocyte;Epithelial;Platelet_MK"); |
| 35 | + put("initialValues", "Bcell;Tcell;NK;Myeloid;Stromal;pDC;Epithelial"); |
| 36 | + put("delimiter", ";"); |
| 37 | + put("joinReturnValue", true); |
| 38 | + }}, null, null, true, true), |
| 39 | + SeuratToolParameter.create("dropAmbiguousConsensusValues", "Drop Ambiguous Consensus Values", "If checked, any consensus calls that are ambiguous will be set to NA", "checkbox", new JSONObject(){{ |
| 40 | + put("checked", true); |
| 41 | + }}, true), |
| 42 | + SeuratToolParameter.create("assayName", "Assay Name", "Passed directly to UCell::AddModuleScore_UCell.", "textfield", new JSONObject(){{ |
| 43 | + |
| 44 | + }}, "RNA") |
| 45 | + ), null, null); |
| 46 | + } |
| 47 | + |
| 48 | + @Override |
| 49 | + public RunScGateBuiltin create(PipelineContext ctx) |
| 50 | + { |
| 51 | + return new RunScGateBuiltin(ctx, this); |
| 52 | + } |
| 53 | + } |
| 54 | +} |
0 commit comments