useDynLib(polyRAD)

export(AddAlleleFreqByTaxa, AddAlleleFreqHWE, AddAlleleFreqMapping,
       AddAlleleLinkages, AddDepthSamplingPermutations, AddGenotypeLikelihood,  
AddGenotypePosteriorProb,  AddGenotypePriorProb_ByTaxa,
AddGenotypePriorProb_Even,
AddGenotypePriorProb_HWE, AddGenotypePriorProb_LD,
AddGenotypePriorProb_Mapping2Parents, AddPCA,
AddPloidyChiSq, AddPloidyLikelihood,
CanDoGetWeightedMeanGeno, EstimateContaminationRate, 
EstimateParentalGenotypes, ExamineGenotype, ExpectedHindHe, ExpectedHindHeMapping,
Export_adegenet_genind, ExportGAPIT, Export_GWASpoly,
Export_MAPpoly, Export_polymapR, Export_polymapR_probs, Export_rrBLUP_Amat,
Export_rrBLUP_GWAS, Export_Structure, Export_TASSEL_Numeric, GetAlleleNames,
GetBlankTaxa, GetContamRate, GetDonorParent, GetLikelyGen, 
GetLocDepth, GetLoci, GetProbableGenotypes, GetRecurrentParent, 
GetTaxa, GetTaxaByPloidy, GetTaxaPloidy, GetWeightedMeanGenotypes, HindHe,
HindHeMapping, InbreedingFromHindHe, IterateHWE, IterateHWE_LD,
IteratePopStruct, IteratePopStructLD, LocusInfo, MakeTasselVcfFilter,
MergeIdenticalHaplotypes, MergeRareHaplotypes, MergeTaxaDepth, nTaxa, nAlleles,
nLoci, OneAllelePerMarker, 
PipelineMapping2Parents, RADdata, RADdata2VCF, readHMC, readDArTag,
readProcessSamMulti, readProcessIsoloci,
readStacks, readTagDigger, readTASSELGBSv2,
RemoveHighDepthLoci, RemoveMonomorphicLoci, RemoveUngenotypedLoci,
SetBlankTaxa, SetContamRate, SetDonorParent, SetRecurrentParent,
SetTaxaPloidy, SimAlleleDepth, SimGenotypes, SimGenotypesMapping,
SplitByChromosome, StripDown, SubsetByLocus, SubsetByPloidy, SubsetByTaxon,
TestOverdispersion, VCF2RADdata)

importFrom("stats", "dist", "dmultinom", "pchisq", "lm", "na.omit", "dbinom",
           "hclust", "cutree", "as.dist", "cor", "residuals", "lm.fit", "sd",
           "median", "quantile", "ppoints")
importFrom("utils", "read.csv", "read.table","write.table", "write.csv",
           "packageVersion")
importFrom("fastmatch", "%fin%")
importFrom("methods", "is", "setGeneric", "setMethod")
importFrom("Rcpp", "evalCpp")
importFrom("graphics", "plot", "points", "text", "hist", "barplot", "par")
importFrom("stringi", "stri_reverse", "stri_trans_char")
importFrom("grDevices", "rainbow")

S3method(print, RADdata)
S3method(AddAlleleFreqByTaxa, RADdata)
S3method(AddAlleleFreqHWE, RADdata)
S3method(AddAlleleFreqMapping, RADdata)
S3method(AddAlleleLinkages, RADdata)
S3method(AddDepthSamplingPermutations, RADdata)
S3method(AddGenotypeLikelihood, RADdata)
S3method(AddGenotypePosteriorProb, RADdata)
S3method(AddGenotypePriorProb_ByTaxa, RADdata)
S3method(AddGenotypePriorProb_Even, RADdata)
S3method(AddGenotypePriorProb_HWE, RADdata)
S3method(AddGenotypePriorProb_LD, RADdata)
S3method(AddGenotypePriorProb_Mapping2Parents, RADdata)
S3method(AddPCA, RADdata)
S3method(AddPloidyChiSq, RADdata)
S3method(AddPloidyLikelihood, RADdata)
S3method(CanDoGetWeightedMeanGeno, RADdata)
S3method(EstimateContaminationRate, RADdata)
S3method(EstimateParentalGenotypes, RADdata)
S3method(ExamineGenotype, RADdata)
S3method(GetAlleleNames, RADdata)
S3method(GetBlankTaxa, RADdata)
S3method(GetContamRate, RADdata)
S3method(GetDonorParent, RADdata)
S3method(GetLikelyGen, RADdata)
S3method(GetLocDepth, RADdata)
S3method(GetLoci, RADdata)
S3method(GetProbableGenotypes, RADdata)
S3method(GetRecurrentParent, RADdata)
S3method(GetTaxa, RADdata)
S3method(GetTaxaByPloidy, RADdata)
S3method(GetTaxaPloidy, RADdata)
S3method(GetWeightedMeanGenotypes, RADdata)
S3method(HindHe, RADdata)
S3method(HindHeMapping, RADdata)
S3method(LocusInfo, RADdata)
S3method(MergeIdenticalHaplotypes, RADdata)
S3method(MergeRareHaplotypes, RADdata)
S3method(MergeTaxaDepth, RADdata)
S3method(nAlleles, RADdata)
S3method(nLoci, RADdata)
S3method(nTaxa, RADdata)
S3method(OneAllelePerMarker, RADdata)
S3method(plot, RADdata)
S3method(RemoveHighDepthLoci, RADdata)
S3method(RemoveMonomorphicLoci, RADdata)
S3method(RemoveUngenotypedLoci, RADdata)
S3method(SetBlankTaxa, RADdata)
S3method(SetContamRate, RADdata)
S3method(SetDonorParent, RADdata)
S3method(SetRecurrentParent, RADdata)
S3method(SetTaxaPloidy, RADdata)
S3method(SplitByChromosome, RADdata)
S3method(SubsetByLocus, RADdata)
S3method(SubsetByPloidy, RADdata)
S3method(SubsetByTaxon, RADdata)
S3method(StripDown, RADdata)
S3method(TestOverdispersion, RADdata)

exportMethods(reverseComplement)
