import(methods)
import(utils)
import(Rsamtools)
import(GenomicRanges)
import(IRanges)


importClassesFrom("data.table", data.table)

importFrom("data.table", data.table, tables, setkey, setkeyv, key, "key<-", haskey, CJ, SJ, copy, set2key, set2keyv, key2, as.data.table, is.data.table, test.data.table, last, like, "%like%", between, "%between%", timetaken, truelength, alloc.col, ":=", setattr, setnames, setcolorder, set, setDT, setDF, setorder, setorderv, setNumericRounding, getNumericRounding, chmatch, "%chin%", chorder, chgroup, rbindlist, fread, foverlaps, transpose, tstrsplit, frank, frankv, address, .SD,.N,.I,.GRP,.BY,.EACHI, rleid, rleidv, as.xts.data.table, uniqueN, melt.data.table, dcast.data.table, .rbind.data.table)

importFrom(rtracklayer, export, export.bw, import.bed)
importFrom(BSgenome, available.genomes)
importFrom(beanplot, beanplot)

importFrom(som, som)
importFrom(VGAM, zeta)

exportClasses(CAGEset)
exportMethods(mergeCAGEsets)
exportMethods(coerce)
exportMethods(getCTSS, importPublicData)
exportMethods(aggregateTagClusters)
exportMethods(clusterCTSS)
exportMethods(cumulativeCTSSdistribution)
exportMethods(setColors)
exportMethods(plotReverseCumulatives, exportCTSStoBedGraph, plotInterquantileWidth, plotExpressionProfiles, exportToBed)
exportMethods(plotCorrelation)
exportMethods(getExpressionProfiles, extractExpressionClass)
exportMethods(show)
exportMethods(mergeSamples)
exportMethods(normalizeTagCount)
exportMethods(quantilePositions)
exportMethods(scoreShift, getShiftingPromoters)

export(genomeName, inputFiles, inputFilesType, sampleLabels, librarySizes, CTSScoordinates, CTSStagCount, CTSSnormalizedTpm, CTSSclusteringMethod, tagClusters, consensusClusters, consensusClustersTpm, expressionClasses)