
useDynLib(stsm)

export(
barrier.eval,
Brent.fmin,
datagen.stsm,
force.defpos,
init.vars,
KFconvar,
linesearch,
maxclik.fd.scoring,
maxlik.em,
maxlik.fd.optim,
maxlik.fd.scoring,
maxlik.td.optim,
mcloglik.fd,
mcloglik.fd.deriv,
mcloglik.fd.grad,
mloglik.fd,
mloglik.fd.deriv,
mloglik.fd.grad,
mloglik.td,
mloglik.td.grad,
mloglik.td.deriv,
maxlik.td.scoring,
step.maxsize,
stsmFit,
stsm.model,
stsm.sgf
)

exportMethods(
char2numeric,
check.bounds,
get.cpar,
get.nopars,
get.pars,
set.cpar,
set.nopars,
set.pars,
set.sgfc,
set.xreg,
transPars)

importFrom(parallel, detectCores)
importFrom(parallel, mclapply)
importFrom(stats, confint, fitted, logLik, predict, residuals, tsdiag, tsSmooth, vcov)
importFrom(KFKSDS, KalmanFilter)
importFrom(KFKSDS, KF)
importFrom(KFKSDS, KF.deriv.C)
importFrom(KFKSDS, KS)
importFrom(KFKSDS, make.KF.args)
importFrom(methods, setValidity)
importFrom("graphics", "abline", "lines", "par", "plot", "polygon")
importFrom("methods", "new", "validObject")
importFrom("stats", "Box.test", "KalmanSmooth", "acf", "coef",
  "constrOptim", "fft", "frequency", "is.ts", "lm", "lm.fit",
  "na.omit", "na.pass", "optim", "optimize", "qnorm",
  "quantile", "rchisq", "rnorm", "start", "time", "ts",
  "ts.union", "tsp", "uniroot", "var")
importFrom("utils", "combn")

S3method(coef, stsmFit)
S3method(confint, stsmFit)
S3method(fitted, stsm)
S3method(fitted, stsmFit)
S3method(logLik, stsm)
S3method(plot, stsmComponents)
S3method(plot, stsmPredict)
S3method(plot, stsmSmooth)
S3method(print, stsmFit)
S3method(predict, stsm)
S3method(predict, stsmFit)
S3method(residuals, stsmFit)
S3method(tsdiag, stsmFit)
S3method(tsSmooth, stsm)
S3method(tsSmooth, stsmFit)
S3method(vcov, stsmFit)
S3method(vcov, stsm)
