示例#1
0
def main():
    #initialize the logging
    utils_logging.init_logging(logging.INFO)
    #Setup options
    optparser=_prepare_optparser()
    (options,args) = optparser.parse_args()
    #verify options
    arg_pass=_verifyOption(options)
    if not arg_pass:
        logging.warning(optparser.get_usage())
        logging.critical("Non valid arguments: exit")
        sys.exit(1)
    if options.debug:
        utils_logging.init_logging(logging.DEBUG)
    utils_logging.init_logging(output_level=None,
                               log_file_name=os.path.join(options.output_dir,"extract_and_assemble.log"))

    bam_files=[options.bam_files]
    if len(args)>0:
        bam_files.extend(args)

    all_assembler_to_try = options.assembler_name.split(',')
    assembly_function_list=[]
    for assembler_name in all_assembler_to_try:
        assembly_function=RAD_assemble_read2.get_assembly_function(assembler_name)
        assembly_function_list.append(assembly_function)
    command_runner.set_command_to_run_localy()
    if options.rg_ids:
        rg_ids=options.rg_ids.split()
    else:
        rg_ids=[]
    extract_and_assemble(bam_files, options.read1_consensus_file, options.white_list_file, options.output_dir,
                         assembly_function_list, subsample_nb_read=options.subsample_nb_read, rg_ids=rg_ids,
                         adapter_file=options.adapter_file)