

useDynLib(sirt)

####################################################
################## EXPORTS #########################

export(   
    eigenvalues.sirt,
    ccov.np,
    detect.index,
    conf.detect,
    expl.detect,
    dif.logistic.regression,
    dif.variance,
    dif.strata.variance,
    equating.rasch,
    equating.rasch.jackknife,
    greenyang.reliability,
    reliability.nonlinearSEM,
    lsdm,
    np.dich,
    personfit.stat ,
    plausible.value.imputation.raschtype,
    latent.regression.em.raschtype,
    prmse.subscores.scales,
    rasch.copula2,
    person.parameter.rasch.copula,
    rasch.jml,
    rasch.jml.jackknife1 , 
    rasch.mml2 , 
    sim.qm.ramsay,
    pgenlogis,
    sim.raschtype,
    rasch.pairwise,
    rasch.pairwise.itemcluster,
    rasch.pml2 , 
    rasch.pml3 , 
    rasch.prox,
    sim.rasch.dep,
    stratified.cronbach.alpha,
    wle.rasch,
    wle.rasch.jackknife,
    yen.q3,
    testlet.yen.q3      ,
    prob.guttman ,
    rasch.jml.biascorr ,
    class.accuracy.rasch ,
    rasch.mirtlc  ,
    modelfit.sirt ,
    marginal.truescore.reliability ,
    eigenvalues.manymatrices ,
    rm.facets ,
    rm.sdt ,
    dirichlet.simul,
    dirichlet.mle ,
    gom.jml ,
    smirt ,
    qmc.nodes ,
    rasch.va ,
    gom.em  ,
    tetrachoric2 ,
    pbivnorm2 , 
    mcmc.2pno ,
    mcmc.list.descriptives ,
    mcmclist2coda ,
    mcmc.2pnoh ,
    mcmc.3pno.testlet   ,
    mcmc.2pno.ml    ,
    isop.dich , 
    fit.isop , 
    fit.adisop ,
    isop.scoring ,
    isop.poly ,
    rowMaxs.sirt ,
    rowMins.sirt ,
    rowCumsums.sirt ,
    colCumsums.sirt ,
    rowIntervalIndex.sirt ,
    rowKSmallest.sirt ,
    rowKSmallest2.sirt ,
    monoreg.rowwise ,
    monoreg.colwise ,
    md.pattern.sirt ,
    f1d.irt ,
    linking.haberman ,
    data.wide2long ,
    automatic.recode ,
    genlogis.moments ,
    invariance.alignment ,
    truescore.irt ,
    latent.regression.em.normal ,
    mle.pcm.group ,
    fuzdiscr ,
    fuzcluster ,
    isop.test ,
    R2noharm,
    summary.R2noharm,
    R2noharm.jackknife ,
    R2noharm.EAP    ,
    rasch.evm.pcm ,
    unidim.test.csn ,
    linking.robust ,
    lc.2raters ,
    rasch.copula3 ,
    testlet.marginalized ,
    noharm.sirt ,
    polychoric2 ,
    sia.sirt,
    rasch.conquest,
    read.show,
    read.show.term,
    read.show.regression,
    read.pv,
    read.multidimpv,
    read.pimap ,
    mirt.wrapper.coef ,
    mirt.wrapper.posterior ,
    lavaan2mirt ,
    tam2mirt ,
    R2conquest ,
    mirt.wrapper.fscores ,
    pcm.conversion ,
    mirt.wrapper.itemplot ,
    mirt.specify.partable ,
    nedelsky.sim ,
    nedelsky.latresp ,
    nedelsky.irf ,
    brm.sim ,
    brm.irf ,
    pcm.fit ,
    modelfit.cor.poly ,
    IRT.mle ,
    categorize ,
    decategorize ,
    lsem.estimate ,
    lsem.permutationTest ,
    lsem.MGM.stepfunctions
)    
    
    

################################################
############# more S3 methods ##################




#*** anova
S3method(anova, rasch.copula2)
S3method(anova, rasch.copula3)
S3method(anova, rasch.mml)
S3method(anova, smirt)
S3method(anova, rasch.mirtlc)
S3method(anova, gom)
S3method(anova, rm.facets)
S3method(anova, rm.sdt)
S3method(anova, prob.guttman)


#*** coef
S3method(coef, rasch.evm.pcm )


#*** logLik
S3method(logLik, rasch.copula2)
S3method(logLik, rasch.copula3)
S3method(logLik, rasch.mml)
S3method(logLik, smirt)
S3method(logLik, rasch.mirtlc)
S3method(logLik, gom)
S3method(logLik, rm.facets)
S3method(logLik, rm.sdt)
S3method(logLik, prob.guttman)


#*** plot
S3method(plot,np.dich)
S3method(plot,mcmc.sirt)
S3method(plot,isop)
S3method(plot,rasch.mml)
S3method(plot,linking.robust)
S3method(plot,noharm.sirt)
S3method(plot,rm.sdt)
S3method(plot,lsem)
S3method(plot,lsem.permutationTest)

#**** summary
S3method(summary,rasch.mml)
S3method(summary,rasch.pml)
S3method(summary,rasch.copula)
S3method(summary,lsdm)
S3method(summary,rasch.copula2)
S3method(summary,rasch.jml)
S3method(summary,rasch.pairwise)
S3method(summary,prob.guttman)
S3method(summary,rasch.mirtlc)
S3method(summary,rm.facets)
S3method(summary,rm.sdt)
S3method(summary,gom.jml)
S3method(summary,smirt)
S3method(summary,gom)
S3method(summary,mcmc.sirt)
S3method(summary,isop)
S3method(summary,fuzcluster)
S3method(summary,isop.test)
S3method(summary,noharm.sirt)
S3method(summary,R2conquest)
S3method(summary,R2noharm)
S3method(summary,R2noharm.jackknife)
S3method(summary,invariance.alignment)
S3method(summary,latent.regression)
S3method(summary,modelfit.sirt)
S3method(summary,rasch.evm.pcm)
S3method(summary,linking.robust)
S3method(summary,lc.2raters)
S3method(summary,rasch.copula3)
S3method(summary,rasch.conquest)
S3method(summary,IRT.modelfit.rasch.mml)
S3method(summary,IRT.modelfit.smirt)
S3method(summary,IRT.modelfit.rasch.mirtlc)
S3method(summary,IRT.modelfit.gom)
S3method(summary,IRT.modelfit.rm.facets)
S3method(summary,IRT.modelfit.rm.sdt)
S3method(summary,lsem)
S3method(summary,lsem.permutationTest)

#*** vcov
S3method(vcov, rasch.evm.pcm )




##########################################
#### S3 methods IRT.xxx ##################


#*** IRT.factor.scores
S3method(IRT.factor.scores, rm.facets)
S3method(IRT.factor.scores, rm.sdt)


#*** IRT.irfprob
S3method(IRT.irfprob, SingleGroupClass)
S3method(IRT.irfprob, rasch.mml)
S3method(IRT.irfprob, smirt)
S3method(IRT.irfprob, rasch.mirtlc)
S3method(IRT.irfprob, gom)
S3method(IRT.irfprob, rm.facets)
S3method(IRT.irfprob, rm.sdt)
S3method(IRT.irfprob, prob.guttman)


#*** IRT.likelihood
S3method(IRT.likelihood, rasch.copula2)
S3method(IRT.likelihood, rasch.copula3)
S3method(IRT.likelihood, SingleGroupClass)
S3method(IRT.likelihood, rasch.mml)
S3method(IRT.likelihood, smirt)
S3method(IRT.likelihood, rasch.mirtlc)
S3method(IRT.likelihood, gom)
S3method(IRT.likelihood, rm.facets)
S3method(IRT.likelihood, rm.sdt)
S3method(IRT.likelihood, prob.guttman)


#*** IRT.modelfit
S3method(IRT.modelfit, rasch.mml)
S3method(IRT.modelfit, smirt)
S3method(IRT.modelfit, rasch.mirtlc)
S3method(IRT.modelfit, gom)
S3method(IRT.modelfit, rm.facets)
S3method(IRT.modelfit, rm.sdt)


#*** IRT.posterior
S3method(IRT.posterior, rasch.copula2)
S3method(IRT.posterior, rasch.copula3)
S3method(IRT.posterior, SingleGroupClass)
S3method(IRT.posterior, rasch.mml)
S3method(IRT.posterior, smirt)
S3method(IRT.posterior, rasch.mirtlc)
S3method(IRT.posterior, gom)
S3method(IRT.posterior, rm.facets)
S3method(IRT.posterior, rm.sdt)
S3method(IRT.posterior, prob.guttman)




####################################################
################## IMPORTS #########################

#*** Imports/Depends packages
import(mvtnorm)
import(MASS)
import(coda)
importFrom(utils, packageDescription)
importFrom(sfsmisc, QUnif)
import(TAM)
import(CDM)
import(combinat)
import(ic.infer)
import(sm)
import(psych)
import(qgraph)
importFrom(pbivnorm, pbivnorm)
importFrom(gtools, permutations)
importFrom(Rcpp,evalCpp)
import(lavaan)
import(semPlot)
import(igraph)
# importFrom(inline, getDynLib)
import(mirt)
import(Matrix)
import(lavaan.survey)
import(survey)
