## ensembldb NAMESPACE
import(methods)

importFrom("utils", "read.table", "str")
import(BiocGenerics)
import(S4Vectors)
importFrom(DBI, dbDriver)
importFrom(Biobase, createPackage)
importFrom(GenomeInfoDb, Seqinfo, isCircular, genome, seqlengths, seqnames, seqlevels,
           keepSeqlevels, seqlevelsStyle, "seqlevelsStyle<-", genomeStyles)
importMethodsFrom(AnnotationDbi, dbconn, columns, keytypes, keys, select, mapIds)
importFrom(rtracklayer, import)
import(RSQLite)
import(GenomicFeatures)
##importMethodsFrom(GenomicFeatures, extractTranscriptSeqs)
import(GenomicRanges)
importFrom(IRanges, IRanges)
importMethodsFrom(IRanges,subsetByOverlaps)
## AnnotationHub
importFrom(AnnotationHub, AnnotationHub)
importClassesFrom(AnnotationHub, AnnotationHub)
importMethodsFrom(AnnotationHub, query, mcols)
## Rsamtools
importClassesFrom(Rsamtools, FaFile, RsamtoolsFile)
importFrom(Rsamtools, FaFile)
importMethodsFrom(Rsamtools, getSeq, indexFa, path)
importFrom(Rsamtools, index)

## biovizBase
##importMethodsFrom(biovizBase, crunch)

#exportPattern("^[[:alpha:]]+")
export(fetchTablesFromEnsembl, makeEnsemblSQLiteFromTables, makeEnsembldbPackage,
       ensDbFromGtf, ensDbFromGff, ensDbFromGRanges, ensDbFromAH, runEnsDbApp,
       listEnsDbs)
exportClasses(EnsDb, BasicFilter, EntrezidFilter, GeneidFilter, GenebiotypeFilter,
              GenenameFilter, TxidFilter, TxbiotypeFilter, ExonidFilter,
              SeqnameFilter, SeqstrandFilter, SeqstartFilter, SeqendFilter,
              GRangesFilter, ExonrankFilter, SymbolFilter)
## for EnsFilter
exportMethods(column, print, show, value, where, "condition<-", "value<-",
              seqnames, start, end, strand, seqlevels)
## for class EnsDb:
exportMethods(dbconn, condition, buildQuery, ensemblVersion, exons, exonsBy, genes,
              getGenomeFaFile, lengthOf, listColumns, listGenebiotypes, listTxbiotypes,
              listTables, organism, seqinfo, toSAF, transcripts, transcriptsBy,
              disjointExons, metadata, promoters, cdsBy, fiveUTRsByTranscript,
              threeUTRsByTranscript, getGeneRegionTrackForGviz, updateEnsDb,
              transcriptsByOverlaps, exonsByOverlaps, returnFilterColumns,
              "returnFilterColumns<-", useMySQL)
## Methods for AnnotationDbi
exportMethods(columns, keytypes, keys, select, mapIds)
## Methods for GenomeInfoDb and related stuff
exportMethods("seqlevelsStyle", "seqlevelsStyle<-", "supportedSeqlevelsStyles",
              seqlevels)

## constructors
export(EntrezidFilter, GeneidFilter, GenenameFilter, GenebiotypeFilter, TxidFilter,
       TxbiotypeFilter, ExonidFilter, SeqnameFilter, SeqstrandFilter, SeqstartFilter,
       SeqendFilter, EnsDb, GRangesFilter, ExonrankFilter, SymbolFilter)



