export("bsims_all",
  "bsims_init", "bsims_populate", "bsims_animate",
  "bsims_detect", "bsims_transcribe",
  "acceptreject", "col2hex", "dist_fun2",
  "events", "estimate",
  "get_detections", "get_events", "get_nests",
  "get_abundance", "get_density","get_table",
  "rlnorm2", "rmvn", "timetoevent",
  "expand_list",
  "run_app")

export(".bsims_all")
#export(".draw_ellipse", ".get_raw_events")

importFrom("graphics", "lines", "par", "plot", "points", "polygon",
             "segments")
importFrom("stats", "rbinom", "rexp", "rlnorm", "rpois", "runif",
  "cutree", "dist", "hclust")

importFrom("deldir", "deldir", "which.tile", "tile.list")
importFrom("intrval", "%)(%", "%[]%", "%[)%", "%][%")
importFrom("mefa4", "Xtab")
importFrom("MASS", "mvrnorm")
importFrom("grDevices", "col2rgb")
importFrom("pbapply", "pbreplicate")
importFrom("parallel", "clusterEvalQ", "clusterExport")

S3method(plot, bsims_landscape)
S3method(print, bsims_landscape)

S3method(plot, bsims_population)
S3method(points, bsims_population)
S3method(print, bsims_population)
S3method(get_nests, bsims_population)
S3method(get_abundance, bsims_population)
S3method(get_density, bsims_population)

S3method(plot, bsims_events)
S3method(lines, bsims_events)
S3method(points, bsims_events)
S3method(print, bsims_events)
S3method(get_events, bsims_events)

S3method(plot, bsims_detections)
S3method(lines, bsims_detections)
S3method(points, bsims_detections)
S3method(print, bsims_detections)
S3method(get_detections, bsims_detections)

S3method(plot, bsims_transcript)
S3method(lines, bsims_transcript)
S3method(print, bsims_transcript)
S3method(get_table, bsims_transcript)
S3method(estimate, bsims_transcript)

S3method(plot, bsims_events_table)

S3method(plot, bsims_detections_table)

S3method(print, bsims_all)
