Package picard.util

Class BaitDesigner


@DocumentedFeature public class BaitDesigner extends CommandLineProgram
Designs baits for hybrid selection!
  • Field Details

    • TARGETS

      @Argument(shortName="T", doc="The file with design parameters and targets") public File TARGETS
    • DESIGN_NAME

      @Argument(doc="The name of the bait design") public String DESIGN_NAME
    • LEFT_PRIMER

      @Argument(doc="The left amplification primer to prepend to all baits for synthesis") public String LEFT_PRIMER
    • RIGHT_PRIMER

      @Argument(doc="The right amplification primer to prepend to all baits for synthesis") public String RIGHT_PRIMER
    • DESIGN_STRATEGY

      @Argument(doc="The design strategy to use to layout baits across each target") public BaitDesigner.DesignStrategy DESIGN_STRATEGY
    • BAIT_SIZE

      @Argument(doc="The length of each individual bait to design") public int BAIT_SIZE
    • MINIMUM_BAITS_PER_TARGET

      @Argument(doc="The minimum number of baits to design per target.") public int MINIMUM_BAITS_PER_TARGET
    • BAIT_OFFSET

      @Argument(doc="The desired offset between the start of one bait and the start of another bait for the same target.") public int BAIT_OFFSET
    • PADDING

      @Argument(doc="Pad the input targets by this amount when designing baits. Padding is applied on both sides in this amount.") public int PADDING
    • REPEAT_TOLERANCE

      @Argument(doc="Baits that have more than REPEAT_TOLERANCE soft or hard masked bases will not be allowed") public int REPEAT_TOLERANCE
    • POOL_SIZE

      @Argument(doc="The size of pools or arrays for synthesis. If no pool files are desired, can be set to 0.") public int POOL_SIZE
    • FILL_POOLS

      @Argument(doc="If true, fill up the pools with alternating fwd and rc copies of all baits. Equal copies of all baits will always be maintained") public boolean FILL_POOLS
    • DESIGN_ON_TARGET_STRAND

      @Argument(doc="If true design baits on the strand of the target feature, if false always design on the + strand of the genome.") public boolean DESIGN_ON_TARGET_STRAND
    • MERGE_NEARBY_TARGETS

      @Argument(doc="If true merge targets that are \'close enough\' that designing against a merged target would be more efficient.") public boolean MERGE_NEARBY_TARGETS
    • OUTPUT_AGILENT_FILES

      @Argument(doc="If true also output .design.txt files per pool with one line per bait sequence") public boolean OUTPUT_AGILENT_FILES
    • OUTPUT_DIRECTORY

      @Argument(shortName="O", optional=true, doc="The output directory. If not provided then the DESIGN_NAME will be used as the output directory") public File OUTPUT_DIRECTORY
  • Constructor Details

    • BaitDesigner

      public BaitDesigner()
  • Method Details

    • requiresReference

      protected boolean requiresReference()
      Overrides:
      requiresReference in class CommandLineProgram
    • getMaskedBaseCount

      public static int getMaskedBaseCount(byte[] bases, int from, int until)
      Returns the total of soft or hard masked bases in the interval of bases.
    • customCommandLineValidation

      protected String[] customCommandLineValidation()
      Description copied from class: CommandLineProgram
      Put any custom command-line validation in an override of this method. clp is initialized at this point and can be used to print usage and access argv. Any options set by command-line parser can be validated.
      Overrides:
      customCommandLineValidation in class CommandLineProgram
      Returns:
      null if command line is valid. If command line is invalid, returns an array of error message to be written to the appropriate place.
    • doWork

      protected int doWork()
      Description copied from class: CommandLineProgram
      Do the work after command line has been parsed. RuntimeException may be thrown by this method, and are reported appropriately.
      Specified by:
      doWork in class CommandLineProgram
      Returns:
      program exit status.