importFrom(stats, simulate)

export (secr.fit)
export (ip.secr)
export (pfn)
export (read.traps)
export (make.grid)
export (make.circle)
export (make.tri)
export (clip.hex)
export (make.poly)
export (make.transect)
export (read.capthist)
export (write.capthist)
export (sim.popn)
export (make.capthist)
export (sim.capthist)
export (sim.resight)
export (read.mask)
export (make.mask)
export (RPSV)
export (dbar)
export (moves)
export (MMDM)
export (ARL)
export (autoini)
export (logit)
export (invlogit)
export (write.captures)
export (write.traps)
export (score.test)
export (score.table)
export (LR.test)
export (esa)
export (derived)
export (empirical.varD)
export (pdot)
export (distancetotrap)
export (nearesttrap)
export (MS.capthist)
export (rbind.capthist)
export (detectfnplot)
export (attenuationplot)
export (counts)
export (model.average)
export (collate)
export (ellipse.secr)
export (LLsurface.secr)
export (closure.test)
export (closedN)
export (read.SPACECAP)
export (write.SPACECAP)
export (logmultinom)

# new generics
export (reduce)
export (rotate)
export (shift)
export (flip)
export (trim)
export (verify)

S3method(reduce, default)
S3method(rotate, default)
S3method(shift, default)
S3method(flip, default)
S3method(trim, default)

S3method (verify, default)
S3method (verify, traps)
S3method (verify, capthist)
S3method (verify, mask)

export (covariates)
export (usage)
export (detector)
export (searcharea)
export (transectlength)
export (polyID)
export (transectID)
export (animalID)
export (xy)
export (signal)
export (occasion)
export (trap)

export (traps)
export (session)

S3method(covariates,default)
S3method(usage,default)
S3method(detector,default)
S3method(traps,default)
S3method(session, default)

export ('covariates<-')
export ('usage<-')
export ('detector<-')
export ('searcharea<-')
export ('polyID<-')
export ('transectID<-')
export ('traps<-')
export ('session<-')
export ('xy<-')
export ('signal<-')

## suppress export because no current use
## export (times)
## export ('times<-')

## assume these internal fns not needed outside
# export (group.levels)
# export (group.factor)
# export (secr.lpredictor)
# export (make.lookup)

export (secr.make.newdata)
export (secr.design.MS)
export (D.designdata)
export (sim.secr)

S3method(print, traps)
S3method(plot, traps)
S3method(summary, traps)
S3method(print, summary.traps)
S3method(rbind, traps)
S3method(subset, traps)

S3method(rotate, traps)
S3method(shift, traps)
S3method(flip, traps)
S3method(split, traps)

S3method(plot, popn)
export (rbind.popn)   ## stopgap until can sort out dispatching

S3method(print, capthist)
S3method(plot, capthist)
S3method(summary, capthist)
S3method(print, summary.capthist)
S3method(subset, capthist)
S3method(reduce, capthist)
S3method(split, capthist)

S3method(subset, mask)
S3method(rbind, mask)
S3method(plot, mask)
S3method(summary, mask)
S3method(print, summary.mask)

S3method(print, secr)
S3method(plot, secr)
S3method(predict, secr)
S3method(vcov, secr)
S3method(AIC, secr)
S3method(coef, secr)
S3method(confint, secr)
S3method(deviance, secr)
S3method(df.residual, secr)
S3method(simulate, secr)
S3method(trim, secr)

S3method(print, secrdata)
S3method(print, secrlist)

useDynLib (
    secr,
    integralprw1,
    secrloglik,
    trappingsingle,
    trappingmulti,
    trappingtimes,
    simsecr,
    naived,
    naivecap2,
    makelookup
)

