#exportPattern("^[[:alpha:]]+") # comment for check and CRAN submission
#importFrom(Rcpp, evalCpp)      # comment for check and CRAN submission

S3method(AIC,MSGARCH_MCMC_FIT)
S3method(AIC,MSGARCH_ML_FIT)
S3method(BIC,MSGARCH_MCMC_FIT)
S3method(BIC,MSGARCH_ML_FIT)
S3method(DIC,MSGARCH_MCMC_FIT)
S3method(State,MSGARCH_MCMC_FIT)
S3method(State,MSGARCH_ML_FIT)
S3method(State,MSGARCH_SPEC)
S3method(FitMCMC,MSGARCH_SPEC)
S3method(FitML,MSGARCH_SPEC)
S3method(Volatility,MSGARCH_SPEC)
S3method(Volatility,MSGARCH_MCMC_FIT)
S3method(Volatility,MSGARCH_ML_FIT)
S3method(Forecast,MSGARCH_SPEC)
S3method(Forecast,MSGARCH_MCMC_FIT)
S3method(Forecast,MSGARCH_ML_FIT)
S3method(PIT,MSGARCH_MCMC_FIT)
S3method(PIT,MSGARCH_ML_FIT)
S3method(PIT,MSGARCH_SPEC)
S3method(plot,MSGARCH_FORECAST)
S3method(plot,MSGARCH_CONDVOL)
S3method(plot,MSGARCH_PSTATE)
S3method(plot,MSGARCH_RISK)
S3method(plot,MSGARCH_SIM)
S3method(Pred,MSGARCH_MCMC_FIT)
S3method(Pred,MSGARCH_ML_FIT)
S3method(Pred,MSGARCH_SPEC)
S3method(print,MSGARCH_SPEC)
S3method(print,MSGARCH_MCMC_FIT)
S3method(print,MSGARCH_ML_FIT)
S3method(print,MSGARCH_SIM)
S3method(print,MSGARCH_RISK)
S3method(print,MSGARCH_PSTATE)
S3method(print,MSGARCH_CONDVOL)
S3method(print,MSGARCH_FORECAST)

S3method(Risk,MSGARCH_MCMC_FIT)
S3method(Risk,MSGARCH_ML_FIT)
S3method(Risk,MSGARCH_SPEC)
S3method(Sim,MSGARCH_MCMC_FIT)
S3method(Sim,MSGARCH_ML_FIT)
S3method(Sim,MSGARCH_SPEC)
S3method(summary,MSGARCH_MCMC_FIT)
S3method(summary,MSGARCH_ML_FIT)
S3method(summary,MSGARCH_SPEC)
S3method(TransMat,MSGARCH_SPEC)
S3method(TransMat,MSGARCH_ML_FIT)
S3method(UncVol,MSGARCH_MCMC_FIT)
S3method(UncVol,MSGARCH_ML_FIT)
S3method(UncVol,MSGARCH_SPEC)
S3method(ExtractStateFit,MSGARCH_MCMC_FIT)
S3method(ExtractStateFit,MSGARCH_ML_FIT)

export(AIC)
export(BIC)
export(DIC)
export(State)
export(CreateSpec)
export(FitMCMC)
export(FitML)
export(Volatility)
export(Forecast)
export(PIT)
export(Pred)
export(Risk)
export(Sim)
export(TransMat)
export(UncVol)
export(ExtractStateFit)

import(Rcpp)
import(expm)
import(fanplot)
import(zoo)

importFrom("methods", "is")
importFrom("utils", "getFromNamespace", "tail")
importFrom(grDevices,rainbow)
importFrom(graphics,axis.Date)
importFrom(graphics,legend)
importFrom(graphics,matplot)
importFrom(graphics,pairs)
importFrom(graphics,plot)
importFrom(methods,new)
importFrom(stats,dnorm)
importFrom(stats,integrate)
importFrom(stats,optim)
importFrom(stats,pnorm)
importFrom(stats,qnorm)
importFrom(stats,quantile)
importFrom(stats,runif)
importFrom(stats,sd)
importFrom(stats,var)
importFrom(stats,na.omit)
importFrom(stats,ecdf)
importFrom(stats,density)
importFrom(stats,rnorm)
useDynLib(MSGARCH, .registration = TRUE)
