useDynLib("affy")

import(affyio)

importClassesFrom(Biobase,
                  AnnotatedDataFrame,
                  AssayData,
                  MIAME,
                  Versioned,
                  VersionedBiobase,
                  Versions,
                  eSet)

importClassesFrom(methods,
                  ANY,
                  character,
                  environment,
                  integer,
                  matrix,
                  missing,
                  numeric)

importMethodsFrom(Biobase,
                  annotatedDataFrameFrom,
                  annotation,
                  assayData,
                  classVersion,
                  "classVersion<-",
                  description,
                  "description<-",
                  experimentData,
                  exprs,
                  "exprs<-",
                  featureNames,
                  "featureNames<-",
                  geneNames,
                  "geneNames<-",
                  isCurrent,
                  isVersioned,
                  notes,
                  "notes<-",
                  pData,
                  "pData<-",
                  phenoData,
                  "phenoData<-",
                  preproc,
                  "preproc<-",
                  rowMedians,
                  sampleNames,
                  "sampleNames<-",
                  se.exprs,
                  "se.exprs<-",
                  updateObject)

importMethodsFrom(methods,
                  initialize,
                  show)

importFrom(Biobase,
           addVigs2WinMenu,
           assayDataElementReplace,
           assayDataNew,
           multiassign,
           read.AnnotatedDataFrame,
           read.MIAME,
           testBioCConnection)

importFrom(graphics,
           abline,
           axis,
           barplot,
           boxplot,
           frame,
           hist,
           image,
           lines,
           matplot,
           mtext,
           pairs,
           par,
           plot,
           points,
           text)

importFrom(methods,
           "@<-",
           as,
           callNextMethod,
           getMethod,
           is,
           new,
           slot)

importFrom(preprocessCore,
           normalize.quantiles,
           normalize.quantiles.robust,
           rma.background.correct)

importFrom(stats,
           IQR,
           approx,
           density,
           lm,
           loess,
           loess.control,
           median,
           medpolish,
           model.response,
           model.weights,
           optim,
           pnorm,
           predict,
           quantile,
           runif,
           sd,
           smooth.spline,
           splinefun,
           t.test,
           terms,
           var,
           wilcox.test)

importFrom(utils,
           available.packages,
           contrib.url,
           data,
           install.packages,
           object.size)

##export everything that does not start with a .
exportPattern("^[^\\.]")
export(".setAffyOptions")

exportClasses("AffyBatch")
