diff spp/src/BamWriter.h @ 6:ce08b0efa3fd draft

Uploaded
author zzhou
date Tue, 27 Nov 2012 16:11:40 -0500
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/spp/src/BamWriter.h	Tue Nov 27 16:11:40 2012 -0500
@@ -0,0 +1,50 @@
+// ***************************************************************************
+// BamWriter.h (c) 2009 Michael Str�mberg, Derek Barnett
+// Marth Lab, Department of Biology, Boston College
+// All rights reserved.
+// ---------------------------------------------------------------------------
+// Last modified: 19 November 2010 (DB)
+// ---------------------------------------------------------------------------
+// Provides the basic functionality for producing BAM files
+// ***************************************************************************
+
+#ifndef BAMWRITER_H
+#define BAMWRITER_H
+
+#include <api_global.h>
+#include <BamAlignment.h>
+#include <string>
+
+namespace BamTools {
+
+namespace Internal {
+    class BamWriterPrivate;
+} // namespace Internal
+
+class API_EXPORT BamWriter {
+
+    // constructor/destructor
+    public:
+        BamWriter(void);
+        ~BamWriter(void);
+
+    // public interface
+    public:
+        // closes the alignment archive
+        void Close(void);
+        // opens the alignment archive
+        bool Open(const std::string& filename, 
+                  const std::string& samHeader, 
+                  const BamTools::RefVector& referenceSequences, 
+                  bool writeUncompressed = false);
+        // saves the alignment to the alignment archive
+        void SaveAlignment(const BamTools::BamAlignment& al);
+
+    // private implementation
+    private:
+        Internal::BamWriterPrivate* d;
+};
+
+} // namespace BamTools
+
+#endif // BAMWRITER_H