import(methods)
S3method(plot, TCC)
#S3method(show, TCC)
#S3method(subset, TCC)


# import basic functions
importFrom("grDevices", "cm.colors")
importFrom("graphics", "axis", "box", "image", "layout", "mtext",
           "par", "plot", "title")
importFrom("stats", "as.dist", "cor", "dist", "hclust", "median",
           "pnbinom", "rgamma", "rnbinom", "sd", "var")
importFrom("utils", "combn", "data", "head")


# import methods from ROC
importFrom(ROC, rocdemo.sca)
importFrom(ROC, AUC)
importFrom(ROC, pAUC)


# import methods from edgeR
importFrom(edgeR, DGEList)
importFrom(edgeR, calcNormFactors)
importFrom(edgeR, estimateGLMCommonDisp)
importFrom(edgeR, estimateGLMTrendedDisp)
importFrom(edgeR, estimateGLMTagwiseDisp)
importFrom(edgeR, estimateCommonDisp)
importFrom(edgeR, estimateTagwiseDisp)
importFrom(edgeR, exactTest)
importFrom(edgeR, glmFit)
importFrom(edgeR, glmLRT)
importFrom(edgeR, topTags)


# import methods from DESeq2
importFrom(DESeq2, DESeqDataSetFromMatrix)
importFrom(DESeq2, sizeFactors)
importFrom(DESeq2, estimateDispersions)
importFrom(DESeq2, nbinomWaldTest)
importFrom(DESeq2, nbinomLRT)
importFrom(DESeq2, results)



exportClasses(
    "TCC" 
)

export(
    show.TCC,
    names,
    length,
    "[",
    TCC,
    calcAUCValue,
    calcNormFactors,
    estimateDE,
    filterLowCountGenes,
    simulateReadCounts,
    makeFCMatrix,
    getNormalizedData,
    getResult,
    plotFCPseudocolor,
    plot.TCC,
    WAD,
    ROKU,
    clusterSample
)

