useDynLib(CDM)

export(din, sim.din , gdina ,
    sim.gdina, sim.gdina.prepare ,
    skill.cor  , # , gdina.fit
    equivalent.dina ,
    cdm.est.class.accuracy,
    modelfit.cor.din,
    modelfit.cor ,
    modelfit.cor2 , 
    gdm ,
    din.equivalent.class ,
    itemfit.rmsea ,
    din.validate.qmatrix ,
    din.deterministic ,
    itemfit.sx2 ,
    skillspace.approximation ,
    skillspace.hierarchy ,
    ideal.response.pattern ,
    gdd ,
    sequential.items ,
    cdi.kli ,
    gdina.wald ,
    gdina.dif ,
    skill.polychor ,
    mcdina ,
    slca
    )

# internal functions; not intended to be visible to users
# export(check.input, rowMaxs, rowProds2, plot.din, print.din, summary.din,
#        print.summary.din)



S3method(plot, din)
S3method(print, din)
S3method(summary, din)
S3method(summary, gdina)
S3method(summary, gdm)
S3method(print, summary.din)
S3method(anova, din)
S3method(anova, gdina)
S3method(anova, mcdina)
S3method(anova, gdm)
S3method(coef, din)
S3method(coef, gdina)
S3method(coef, mcdina)
S3method(coef, gdm)
S3method(logLik, din)
S3method(logLik, gdina)
S3method(logLik, gdm)
S3method(logLik, mcdina)
S3method(plot, gdina)
S3method(summary,itemfit.sx2)
S3method(plot,itemfit.sx2)
S3method(summary,modelfit.cor.din)
S3method(summary, gdina.wald)
S3method(summary, gdina.dif)
S3method(summary,mcdina)
S3method(summary,slca)

import(MASS)
importFrom(polycor,polychor)
import(psych)
import(mvtnorm)
import(graphics, stats)
importFrom(utils,packageDescription)
importFrom(sfsmisc,QUnif)
importFrom(Rcpp,evalCpp)