useDynLib("crlmm", .registration=TRUE)

##---------------------------------------------------------------------------
## Biobase
##---------------------------------------------------------------------------
importClassesFrom(Biobase, AnnotatedDataFrame, AssayData, eSet, SnpSet,
		  NChannelSet, MIAME, Versioned, VersionedBiobase,
		  Versions)
importMethodsFrom(Biobase, annotation, "annotation<-",
                  annotatedDataFrameFrom, assayData, "assayData<-",
                  combine, dims, experimentData, "experimentData<-",
                  fData, featureData, "featureData<-", featureNames,
                  fvarMetadata, fvarLabels, pData, "pData<-", phenoData,
                  "phenoData<-", protocolData, "protocolData<-",
                  pubMedIds, rowMedians, sampleNames, snpCall,
                  snpCallProbability,
		  "snpCall<-", "snpCallProbability<-", storageMode,
                  "storageMode<-", updateObject, varLabels)
importFrom(Biobase, assayDataElement, assayDataElementNames,
           assayDataElementReplace, assayDataNew, classVersion,
           validMsg)

##---------------------------------------------------------------------------
## oligoClasses
##---------------------------------------------------------------------------
importClassesFrom(oligoClasses, SnpSuperSet, AlleleSet, CNSet)##, ff_or_matrix)
importMethodsFrom(oligoClasses, allele, calls, "calls<-", confs,
		  "confs<-", cnConfidence, "cnConfidence<-", isSnp,
		  chromosome, position, A, B,
		  "A<-", "B<-", open, close, flags,
		  openff, closeff,
		  batchStatistics, "batchStatistics<-", updateObject,
		  checkOrder)

importFrom(oligoClasses, chromosome2integer, celfileDate, list.celfiles,
           copyNumber, initializeBigMatrix, initializeBigVector, isPackageLoaded)


importFrom(graphics, abline, axis, layout, legend, mtext, par, plot,
           polygon, rect, segments, text, points, boxplot, lines)

importFrom(lattice, xyplot, simpleKey, panel.grid, panel.xyplot, lrect, ltext,
	   lpoints, panel.number, lpolygon)

importFrom(grDevices, grey)
importFrom(affyio, read.celfile.header, read.celfile)
importFrom(preprocessCore, normalize.quantiles.use.target, normalize.quantiles)
importFrom(utils, data, packageDescription, setTxtProgressBar, txtProgressBar)
importFrom(stats, coef, cov, dnorm, kmeans, lm, mad, median, quantile, sd, update)
importFrom(genefilter, rowSds)
importFrom(mvtnorm, dmvnorm)
importFrom(ellipse, ellipse)
##importFrom(ff, ffdf, physical.ff, physical.ffdf, ffrowapply)

##importClassesFrom(oligoClasses, ff_matrix, ffdf)
##exportMethods(lines)
exportMethods(CA, CB)
export(crlmm,
       crlmmIllumina,
       crlmmIlluminaV2,
       genotype,
       readIDAT,
       readIdatFiles,
       readGenCallOutput,
       snprma,
       snprma2,
       crlmm2,
       genotype2, genotypeLD,
       genotype.Illumina,
       crlmmCopynumber2, crlmmCopynumberLD, crlmmCopynumber)
export(genotypes, totalCopynumber, rawCopynumber, xyplot)
exportMethods(A, B, corr, nuA, nuB, phiA, phiB, predictionRegion, posteriorProbability, tau2, Ns, medians, mads,
	      xyplot, calculateRBaf)
export(ABpanel, constructInf, preprocessInf, genotypeInf, validCEL, celDates)
exportClasses(PredictionRegion)