useDynLib(PAFit,.registration = TRUE)
export("generate_BA","generate_BB", "generate_ER", 
       "generate_fit_only",
       "generate_net", "get_statistics",
       "Jeong",
       "joint_estimate",
       "Newman",
       "only_A_estimate",
       "only_F_estimate",
       "as.PAFit_net",
       "to_igraph", "from_igraph",
       "to_networkDynamic", "from_networkDynamic",
       "graph_from_file", "graph_to_file",
       "test_linear_PA","PAFit_oneshot",
       "generate_simulated_data_from_estimated_model",
       "plot_contribution")
importFrom("methods", "is")
importFrom(Rcpp, evalCpp)
importFrom("grDevices", "rgb")
importFrom("grDevices", "hcl")
importFrom("RColorBrewer","brewer.pal")
importFrom("graphics", "abline", "arrows", "lines", "points", "text")
importFrom("stats", "lm", "rgamma", "rpois", "uniroot","rlnorm","confint","df.residual",
           "density","dnorm")
importFrom("graphics", "legend", "mtext","axis")
importFrom("utils","head", "write.table", "read.table")
importFrom("stats", "median", "quantile", "smooth.spline","optim")
importFrom("ggplot2","ggplot","scale_color_manual","geom_point",
           "geom_errorbar","ylab","xlab", "theme", "theme_bw", "aes",
           "element_blank", "element_line", "element_rect", "element_text",
           "margin", "rel", "ylim")
importFrom("plyr","ddply",".", "a_ply","aaply","alply","amv_dimnames", "arrange","as.quoted",
           "catcolwise", "colwise", "compact", "count", "create_progress_bar", "d_ply", 
           "daply", "defaults", 
           "desc", "each", "empty", "eval.quoted", "failwith", "here", "id", "idata.frame", 
           "is.discrete", 
           "is.formula", "is.quoted", "isplit2", "join", "join.keys", "join_all", "l_ply", "laply", "ldply", 
           "liply", "llply", 
           "m_ply", "maply", "mapvalues", "match_df", "mdply", "mlply", "mutate", "name_rows", "numcolwise", 
           "progress_text", "progress_time", "progress_tk", "progress_win", "quickdf", "r_ply", "raply", 
           "rbind.fill", 
           "rbind.fill.matrix", "rdply", "rename", "revalue", "rlply", "round_any", "splat", "split_indices", 
           "split_labels", 
           "strip_splits", "summarise", "summarize", 
           "take", "true", "tryNULL", "try_default", "tryapply", "unrowname", "vaggregate")

importFrom("VGAM", "rpareto")
importFrom("grDevices", "col2rgb")
importFrom("graphics", "polygon")
importFrom("graphics", "plot")
importFrom("stats", "runif")
importFrom("MASS","ginv")
importFrom("stats", "var","sd")

importFrom("networkDynamic", "networkDynamic", "as.data.frame.networkDynamic")

importFrom("network", "as.network", "is.directed","network", "plot.network.default")

importFrom("igraph","graph.data.frame","as_data_frame","is_directed",
           "vertex_attr","E","read_graph","V","ends")

importFrom("magicaxis","magaxis")
importFrom("knitr","kable")

importFrom("mapproj","map.grid", "mapproject", ".Last.projection")

S3method(print, PAFit_result)
S3method(print, PA_result)
S3method(print, PAFit_data)
S3method(print, CV_Data)
S3method(print, CV_Result)
S3method(print, PAFit_net)
S3method(print, Full_PAFit_result)
S3method(print, Linear_PA_test_result)

S3method(plot, PAFit_result)
S3method(plot, PA_result)
S3method(plot, Full_PAFit_result)
S3method(plot, PAFit_net)

S3method(summary, PA_result)
S3method(summary, PAFit_result)
S3method(summary, PAFit_data)
S3method(summary, CV_Data)
S3method(summary, CV_Result)
S3method(summary, Full_PAFit_result)
S3method(summary, PAFit_net)
S3method(summary, Linear_PA_test_result)



