useDynLib(rbamtools)
exportPattern("^bam.*")
importFrom(utils,head)
importFrom(utils,tail)
exportMethods(
    head,
    tail,
    filename,
    isOpen,
    getNextAlign,
    bamSave,
    index.initialized,
    bamClose,
    getHeaderText,
    getHeader,
    getHeaderLine,
    getRefSeqDict,
    getHeaderReadGroup,
    getHeaderProgram,
    getRefCount,
    getRefData,
    as.list,
    getVal,
    setVal,
    removeRows,
    addSeq,
    getHeaderText,
    createIndex,
    loadIndex,
    getNextAlign,
    bamSort,
    as.data.frame,
    size,
    initialize,
    getPrevAlign,
    windBack,
    push_back,
    pop_back,
    push_front,
    pop_front,
    writeCurrentAlign,
    insertPastCurrent,
    insertPreCurrent,
    name,
    refID,
    position,
    cigarSize,
    cigarData,
    mateRefID,
    matePosition,
    insertSize,
    mapQuality,
    readBases,
    qualities,
    pcrORopt_duplicate,
    "pcrORopt_duplicate<-",
    failedQC,
    "failedQC<-",
    firstInPair,
    "firstInPair<-",
    secondInPair,
    "secondInPair<-",
    unmapped,
    "unmapped<-",
    mateUnmapped,
   "mateUnmapped<-",
    reverseStrand,
   "reverseStrand<-",
    mateReverseStrand,
    "mateReverseStrand<-",
    paired,
    "paired<-",
    properPair,
    "properPair<-",
    secondaryAlign,
    "secondaryAlign<-",
    flag,
    "flag<-"
)
exportClasses(
    bamReader,
    bamWriter,
    bamRange,
    headerLine,
    headerReadGroup,
    headerProgram,
    refSeqDict,
    bamHeader,
    bamAlign 
)
