## Importing
importClassesFrom(methods, ANY, character, data.frame, "function", integer, matrix, numeric)
importMethodsFrom(methods, initialize, show)
importFrom(methods, "@<-", callNextMethod, new, validObject)

## Protecting against IRanges masking
importClassesFrom(IRanges, DataFrame)
importClassesFrom(Biostrings, DNAStringSet)

## Needed from graphics
importFrom(graphics, plot)

## Needed from Biobase
importClassesFrom(Biobase, AnnotatedDataFrame, AssayData, eSet, MIAME, NChannelSet, Versions, VersionedBiobase, Versioned)
importFrom(Biobase, assayDataElement, assayDataElementReplace, assayDataNew)
importMethodsFrom(Biobase, annotatedDataFrameFrom, annotation,
                  "annotation<-", assayData, "assayData<-", combine,
                  experimentData, "experimentData<-", exprs,
                  "exprs<-", featureData, "featureData<-",
                  featureNames, fvarLabels, geneNames, pData,
                  "pData<-", phenoData, "phenoData<-", sampleNames,
                  se.exprs, "se.exprs<-", storageMode,
                  "storageMode<-")

## Exporting

export("pdPkgFromBioC", "requireAnnotation")

## PDInfo Classes
exportClasses(AffyTilingPDInfo,
              AffyExpressionPDInfo,
              AffySNPPDInfo,
              AffySNPCNVPDInfo,
              AffyGenePDInfo,
              AffyExonPDInfo,
              NgsExpressionPDInfo,
              NgsTilingPDInfo)

##Feature-level Classes
exportClasses(ExpressionFeatureSet,
              SnpFeatureSet,
              SnpCnvFeatureSet,
              TilingFeatureSet,
              ExonFeatureSet,
              GeneFeatureSet)

##SNP-level Classes
exportClasses(SnpQSet,
              SnpCnvQSet,
              SnpLevelSet,
              SnpCallSet,
              SnpCopyNumberSet,
              oligoSnpSet,
              SnpCallSetPlus,
              SnpCnvCallSetPlus)

##SNP-level methods
exportMethods(calls, "calls<-",
              callsConfidence, "callsConfidence<-",
              chromosome, "chromosome<-",
              combine,
              copyNumber, "copyNumber<-",
              cnConfidence, "cnConfidence<-",
              db,
              initialize,
              position,
              antisenseThetaA,
              antisenseThetaB,
              senseThetaA,
              senseThetaB,
              thetaA,
              thetaB,
              sampleNames)

export(affyPlatforms, getPD)

## FeatureSet methods
exportMethods(manufacturer,
              length,
              exprs,
              se.exprs)

## PDInfo methods
exportMethods(genomeBuild,
              geometry,
              getPlatformDesign,
              probeNames,
              bgindex,
              pmindex,
              mmindex,
              kind,
              bgSequence,
              pmSequence,
              mmSequence,
              pmOffset,
              pmChr,
              pmFragmentLength,
              pmAllele,
              pmStrand,
              pmPosition,
              show)

## Some general methods
exportMethods(getM,
              getA)
