X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=src%2Fapi%2FBamWriter.h;h=68257ee4a8a3e3145090154cd93fb601a1ca2666;hb=9f1ce8c47aeadb6dc1320b52ee671c3341b97935;hp=56ac30142949c034c209b2e872e70aed9bebb3fa;hpb=c1fc1c5423ca73a1b5bcbe790650821d73e5959c;p=bamtools.git diff --git a/src/api/BamWriter.h b/src/api/BamWriter.h index 56ac301..68257ee 100644 --- a/src/api/BamWriter.h +++ b/src/api/BamWriter.h @@ -2,7 +2,7 @@ // BamWriter.h (c) 2009 Michael Str�mberg, Derek Barnett // Marth Lab, Department of Biology, Boston College // --------------------------------------------------------------------------- -// Last modified: 4 March 2011 (DB) +// Last modified: 10 October 2011 (DB) // --------------------------------------------------------------------------- // Provides the basic functionality for producing BAM files // *************************************************************************** @@ -10,8 +10,8 @@ #ifndef BAMWRITER_H #define BAMWRITER_H -#include -#include +#include "api/api_global.h" +#include "api/BamAux.h" #include namespace BamTools { @@ -19,15 +19,19 @@ namespace BamTools { class BamAlignment; class SamHeader; +//! \cond namespace Internal { class BamWriterPrivate; } // namespace Internal +//! \endcond class API_EXPORT BamWriter { - public: enum CompressionMode { Compressed = 0 - , Uncompressed - }; + // enums + public: + enum CompressionMode { Compressed = 0 + , Uncompressed + }; // ctor & dtor public: @@ -38,6 +42,8 @@ class API_EXPORT BamWriter { public: // closes the current BAM file void Close(void); + // returns a human-readable description of the last error that occurred + std::string GetErrorString(void) const; // returns true if BAM file is open for writing bool IsOpen(void) const; // opens a BAM file for writing @@ -49,9 +55,9 @@ class API_EXPORT BamWriter { const SamHeader& samHeader, const RefVector& referenceSequences); // saves the alignment to the alignment archive - void SaveAlignment(const BamAlignment& alignment); + bool SaveAlignment(const BamAlignment& alignment); // sets the output compression mode - void SetCompressionMode(const CompressionMode& compressionMode); + void SetCompressionMode(const BamWriter::CompressionMode& compressionMode); // private implementation private: