# Refer to all C/Fortran routines by their name prefixed by C_
useDynLib(fda.usc, .registration = TRUE, .fixes = "C_")
#useDynLib(fda.usc)
#exportPattern("^[^\\.]")

import(fda)
import(splines)
import(MASS) 
import(mgcv)
import(pls)

# exportPattern("^[^\\.]")
#export(.checkMFClasses, .getXlevels, .MFclass)


export(
anova.hetero,anova.RPm,argvals,
AKer.norm,AKer.cos,AKer.epa,AKer.tri,AKer.quar,AKer.unif,
create.pc.basis,create.pls.basis,create.fdata.basis,classif.glm,classif.gsam,classif.gkam,classif.np,classif.knn,classif.kernel,
cond.F,cond.mode,cond.quantile,create.fdata.basis,CV.S, 

depth.FM,depth.mode, depth.RP,depth.RPD,depth.RT,dev.S,dis.cos.cor,fdata,fdata.bootstrap,dim.fdata,
fdata.cen,fdata.deriv,fdata2fd,fdata2pc,fdata2pls,FDR,fregre.basis,fregre.basis.cv,fregre.bootstrap,fregre.glm,FDR,
fregre.gsam,fregre.gkam,fregre.lm,fregre.np,fregre.np.cv,fregre.pc,fregre.pc.cv,fregre.plm,fregre.pls,fregre.pls.cv,
func.mean,func.var,func.trim.FM,func.trim.mode,func.trim.RP,func.trim.RPD,func.med.FM,func.med.mode,func.med.RP,func.med.RPD,func.trimvar.FM,func.trimvar.mode,func.trimvar.RP,func.trimvar.RPD,
GCV.S,
h.default,
IKer.norm,IKer.cos,IKer.epa,IKer.tri,IKer.quar,IKer.unif,
influence.fdata,influence.quan,inprod.fdata,int.simpson,is.fdata,
Kernel,Ker.norm,Ker.cos,Ker.epa,Ker.tri,Ker.quar,Ker.unif,Kernel.asymmetric,Kernel.integrate,kmeans.fd,
metric.dist,metric.lp,min.basis,min.np,missing.fdata,
norm.fd,norm.fdata,ncol.fdata,nrow.fdata,
outliers.thres.lrt,outliers.lrt,outliers.depth.trim,outliers.depth.pond,omit.fdata,
plot.fdata,predict.classif,predict.fregre.fd,predict.fregre.glm,predict.fregre.gsam,
predict.fregre.gkam,predict.fregre.lm,predict.fregre.plm,pvalue.FDR,
quantile.outliers.pond, quantile.outliers.trim,
rproc2fdata,rangeval,
S.basis,semimetric.basis,summary.classif,S.LLR,S.NW,S.KNN,
semimetric.hshift,semimetric.mplsr,semimetric.pca,semimetric.deriv,semimetric.fourier,
summary.fdata.comp,summary.fregre.fd,summary.fregre.gkam,summary.anova,
Var.y,Var.e,
title.fdata,
flm.Ftest,flm.test,PCvM.statistic,rber.gold,Adot,
Ftest.statistic,dfv.statistic,dfv.test
#fregre.basis.func,fregre.basis.func.cv,
#fregre.pc.func,fregre.np.func,fregre.np.func.cv,fregre.lm.func,FGCV.S,FCV.S
)

#count.na,traza: fda.usc.internal.Rd
#hshift:	semimetric.NPFDA.Rd
#intercambio,intercambio.l:  anova.RPm.Rd
#int.simpson2: int.simpson.Rd
#rkernel: Kernel.Rd
# auxiliares de fdata2pls.R

S3method(c,fdata)
S3method(dim, fdata)
#S3method(influence,fdata)
#S3method(influence,quan)
#S3method(is,fdata)
S3method(lines,fdata)
S3method(Math, fdata)
S3method(missing,fdata)
#S3method(omit,fdata)
S3method(Ops, fdata)
S3method(plot, fdata)
S3method(predict,classif)
S3method(predict,fregre.fd)
S3method(predict,fregre.glm)
S3method(predict,fregre.gsam)
S3method(predict, fregre.gkam)
S3method(predict, fregre.lm)
S3method(predict, fregre.plm)
S3method(print, classif)
S3method(print, fregre.fd)
S3method(print, fregre.gkam)
S3method(nrow, fdata)
S3method(ncol, fdata)
S3method(Summary, fdata)

S3method(summary, anova)
S3method(summary, fdata.comp)
S3method(summary, fregre.fd)
S3method(summary, fregre.gkam)
#S3method(title, fdata)

S3method("[", fdata)
S3method("!=", fdata)
S3method("*", fdata)
S3method("+", fdata)
S3method("-", fdata)
S3method("/", fdata)
S3method("==", fdata)
S3method("^", fdata)

#S3method(predict,depth)
#S3method(predict,dist)
#exportPattern("\\.test$")
