def main():
    centrality_data_folder = sys.argv[1]
    input_file_prefix = sys.argv[2]
    output_file = sys.argv[3]
    metric = sys.argv[4]
    intervals = ccfcr.load_json(centrality_data_folder)
    out_file = open(output_file, 'w')
    day = 0
    top_list_prev = []
    top_list = []
    ret_sort = []
    num_nodes = 1
    for inter in intervals["centrality_test"]["intervals"]:
        print("[ day = " + str(day) +" ]")
        if  inter["interval"]["graph_stat"]["num_nodes"] != 0:
            top_list, ret_sort = pre_proc(centrality_data_folder + "/centrality_scores", input_file_prefix, day)
            num_prev_nodes = num_nodes
            num_nodes = inter["interval"]["graph_stat"]["num_nodes"]
        else:
            #out_file.write(str(inter["interval"]["time"]["start"])+" - - 0 -1.0 -1.0\n")
            out_file.write(str(day)+" - - 0 -1.0 -1.0\n")
            day+=1
            continue
        if day != 0:
            #centralities = [str(inter["interval"]["time"]["start"])]
            centralities = [str(day)]
            centralities += compute(top_list_prev, top_list, ret_sort, metric)
            num_new_nodes = inter["interval"]["graph_stat"]["new_nodes"]
            num_deleted_nodes = inter["interval"]["graph_stat"]["deleted_nodes"]
            centralities.append(num_nodes)
            centralities.append(float(num_new_nodes) / num_nodes)
            centralities.append(float(num_deleted_nodes) / num_prev_nodes)
            ccfcr.write_out(out_file, centralities)
        day+=1
        top_list_prev = top_list
def main():
    intervals = load_json(sys.argv[1])
    preproc_folder = sys.argv[2]
    file_prefix = sys.argv[3]
    out_file = open(sys.argv[4], 'w')
    from_interval = int(sys.argv[5])
    to_interval = int(sys.argv[6])
    day = 0
    num_nodes = 1
    for inter in intervals["centrality_test"]["intervals"]:
        if  inter["interval"]["graph_stat"]["num_nodes"] != 0:
            num_prev_nodes = num_nodes
            num_nodes = inter["interval"]["graph_stat"]["num_nodes"]
        else:
            if (from_interval <= day) and (day <= to_interval):
                out_file.write(str(day)+" - -\n")
            day+=1
            continue
        if (day != 0) and (from_interval <= day) and (day <= to_interval):
            print("[ day = " + str(day) +" ]")
            #centralities = [str(inter["interval"]["time"]["start"])]
            centralities = [str(day)]
            centralities += load_partial_results(preproc_folder + "/" + file_prefix, day)
            num_new_nodes = inter["interval"]["graph_stat"]["new_nodes"]
            num_deleted_nodes = inter["interval"]["graph_stat"]["deleted_nodes"]
            #centralities.append(num_nodes)
            #centralities.append(float(num_new_nodes) / num_nodes)
            #centralities.append(float(num_deleted_nodes)/ num_prev_nodes)
            ccfcr.write_out(out_file, centralities)
        day+=1
	ret_sort = []
	intervals_list = intervals["centrality_test"]["intervals"]
	for day in range(from_interval, to_interval+1):
		print("[ day = " + str(day) +" ]")
		if  intervals_list[day]["interval"]["graph_stat"]["num_nodes"] != 0:
			if rank_type == "centrality":
				top_list_other, ret_sort_other = ccfcr.pre_proc(baseline_folder, file_prefix + "_baseline" + baseline_type, day) # for baseline
				top_list, ret_sort = ccfcr.pre_proc(centrality_folder + "/centrality_scores", file_prefix, day) # for origi
			elif rank_type == "pos":
				top_list_other, ret_sort_other = ccfpr.pre_proc(baseline_folder, file_prefix + "_baseline" + baseline_type, day) # for baseline
				top_list, ret_sort = ccfpr.pre_proc(centrality_folder + "/centrality_scores", file_prefix, day) # for origi
			else:
				print "rank_type must be 'centrality' or 'pos'!!!"
		else:
			out_file.write(str(day)+" - -\n")
			continue
		#print top_list_other
		#print
		#print top_list
		if day != 0:
			centralities = [str(day)]
			if rank_type == "centrality":
				centralities += ccfcr.compute(top_list_other, top_list, ret_sort, metric)
			elif rank_type == "pos":
				centralities += ccfpr.compute(top_list_other, top_list, ret_sort, metric)
			else:
				print "rank_type must be 'centrality' or 'pos'!!!"
			ccfcr.write_out(out_file, centralities)

else:
	print 'Usage: <baseline_folder> <original_input_file_folder> <file_prefix> <baseline_type> <from_interval> <to_interval> <centrality/pos> <kendall/corr> <output_file>'