useDynLib(gmapR, .registration = TRUE)

importFrom(Rsamtools, path, bamPaths, readBamGappedAlignments, "bamWhich<-",
           BamFile, BamFileList)
importFrom(tools, file_path_as_absolute, file_ext, file_path_sans_ext,
           list_files_with_exts)
importFrom(Biobase, createPackage)
import(IRanges)
import(GenomicRanges)
importFrom(Biostrings, getSeq, read.DNAStringSet)
importFrom(GenomicRanges, genome, seqinfo)
importMethodsFrom(GenomicRanges, seqnames, strand)
importMethodsFrom(Rsamtools, asBam)
importClassesFrom(GenomicFeatures, TranscriptDb)
importFrom(GenomicFeatures, transcripts)
importClassesFrom(rtracklayer, RTLFile, FastaFile)
importFrom(rtracklayer, "referenceSequence<-", import, export, FastaFile)
importMethodsFrom(rtracklayer, export)
importFrom(VariantAnnotation, readVcf, ScanVcfParam, fixed)
importClassesFrom(VariantAnnotation, "VCF")

## public API

export(bam_tally, GmapGenome, GmapGenomeDirectory, GsnapParam,
       directory, BamTallyParam, makeGmapGenomePackage, GsnapOutput,
       GmapSnps, GmapSnpDirectory, TP53Genome, TP53Which)

exportClasses(GmapGenome, GmapGenomeDirectory, GmapSnpDirectory,
              GsnapOutput, GmapSnps, BamTallyParam, GsnapParam)

exportMethods(bamPaths, path, genome, seqinfo, gsnap, "snps<-",
              "spliceSites<-")