#!/usr/bin/env python3

from optparse import OptionParser
#from pastro import pastro
import sqlite3
import numpy

def parse_command_line():
  parser = OptionParser()
  parser.add_option("-v", "--verbose", action = "store_true", help = "Be verbose.")
  parser.add_option("--category", help = "The category of p-astro, BNS, BBH, NSBH")
  options, filenames = parser.parse_args()
  process_params = dict(options.__dict__)

  return options, process_params, filenames

options, process_params, filenames = parse_command_line()

vt_sum = 0
count = 0
for fn in filenames:
  connection = sqlite3.connect(fn)
  vt = connection.cursor().execute("SELECT value FROM process_params WHERE program == 'lvc_rates_injections_vtparams' AND param == '--VT';").fetchone()[0]
  count += connection.cursor().execute("SELECT count(*) from sim_inspiral;").fetchone()[0]
  accept_rate = connection.cursor().execute('SELECT value FROM process_params WHERE program == "lvc_rates_injections_vtparams" AND param == "--acceptance-rate";').fetchone()[0]
  vt_sum += float(vt)*float(accept_rate)
  # print(vt, accept_rate, count)

print(options.category+" vt_params: ", vt_sum/count)
