## Import packages
import("VineCopula")
import("mgcv")
import("methods")

## Import selected functions
importFrom("numDeriv", "grad")
importFrom("igraph", "E", "E<-", "V", "V<-", "gsize", "get.edgelist", "ecount",
           "minimum.spanning.tree", "delete.edges", "graph.adjacency", "ends",
           "graph.full", "get.adjacency")
importFrom("graphics", "par")
importFrom("stats", "as.formula", "coef", "cor", "median", "na.omit",
           "optimize", "predict", "quantile", "runif", "splinefun",
           "update", "vcov")
importFrom("utils", "capture.output", "modifyList")
importFrom("MASS", "mvrnorm")
importFrom("gsl", "expint_E1")
importFrom("copula", "safeUroot")
importFrom("copula", "debye1")
importFrom("parallel", "makeCluster")
importFrom("parallel", "detectCores")
importFrom("parallel", "stopCluster")
importFrom("foreach", "foreach")
importFrom("foreach", "%do%")
importFrom("foreach", "%dopar%")
importFrom("doParallel", "registerDoParallel")

## Classes
export("gamBiCop")
export("gamVine")

## Methods
exportMethods("plot")
exportMethods("logLik")
exportMethods("summary")
export("EDF")

## gamBiCop related functions
export("gamBiCopSimulate")
export("gamBiCopFit")
export("gamBiCopPredict")
export("gamBiCopPDF")
export("gamBiCopCDF")
export("gamBiCopSelect")

## gamVine related functions
export("gamVineSimulate")
export("gamVineSeqFit")
export("gamVineCopSelect")
export("gamVineStructureSelect")
export("gamVineNormalize")
export("gamVineFamily")
export("gamVinePDF")
#export("AIC.gamVine")
export("RVM2GVC")

## Others
export("BiCopEta2Par")
export("BiCopPar2Eta")
export("condBiCopSim")
