######################################################
#
# Make a copy of this file and edit it to your liking
#
######################################################

# Which population to plot
species_names = ["Alistipes_onderdonkii_55464", "Alistipes_onderdonkii_55464"]
 
# Output filename
filename = parse_midas_data.analysis_directory+'Alistipes_onderdonkii_timecourse.png'


####################################################################
#
#  Function controlling which mutations are colored
#
#      Returns: true for colored
#               false for not colored
#
####################################################################
def color_condition(population_idx, chromosome, location, gene_name, variant_type, times, freqs, depths):
    
    start_idxs = numpy.logical_or((times==sample_time_map[parse_timecourse_data.highcoverage_start_1]), (times==sample_time_map[parse_timecourse_data.highcoverage_start_2]))
    antibiotic_idxs = (times==sample_time_map[parse_timecourse_data.highcoverage_antibiotic])
    final_idxs = (times==sample_time_map[parse_timecourse_data.highcoverage_end])
    
    condition = False
    
    if not ((start_idxs.sum() > 0) and (antibiotic_idxs.sum() > 0) and (final_idxs.sum()>0)):
        return condition
        
    
    if population_idx==0:
    
        condition = (freqs[start_idxs]<=0.3).any() and  (freqs[antibiotic_idxs]>=0.7).any() and (freqs[final_idxs]<0.2).any()
    
    elif population_idx==1:
    
        condition = (freqs[start_idxs]<=0.3).any() and  (freqs[antibiotic_idxs]>=0.7).any() and (freqs[final_idxs]>=0.2).any()    
    
    else:
        condition = False
    
    #condition = (freqs.max()-freqs.min() > 0.8)
    #condition = (freqs[0]<0.05)*(freqs[1]<0.05)*((freqs.max()-freqs.min()) > 0.5)
    # Examples:
    # 
    # Mutation is in the majority at the end of the experiment
    # condition = f(60000) > 0.5
    #
    # Mutation is a structural variant in the nadR gene
    # condition = (gene_name == 'nadR') and var_type='sv'
    #
    # Mutation is in one of the mut* genes
    # condition = gene_name.startswith('mut')
    # ... 
    
    if condition:
        items = [chromosome, location, gene_name, variant_type]
        print_str = ", ".join([str(item) for item in items])
        sys.stderr.write("%s\n" % print_str)
    
    return condition
