]> git.donarmstrong.com Git - bamtools.git/commitdiff
Added API_EXPORT macro to classes in BamTools API
authorderek <derekwbarnett@gmail.com>
Fri, 19 Nov 2010 16:01:58 +0000 (11:01 -0500)
committerderek <derekwbarnett@gmail.com>
Fri, 19 Nov 2010 16:01:58 +0000 (11:01 -0500)
14 files changed:
src/api/BGZF.cpp
src/api/BGZF.h
src/api/BamAlignment.cpp
src/api/BamAlignment.h
src/api/BamAux.h
src/api/BamIndex.cpp
src/api/BamIndex.h
src/api/BamMultiReader.cpp
src/api/BamMultiReader.h
src/api/BamReader.cpp
src/api/BamReader.h
src/api/BamWriter.cpp
src/api/BamWriter.h
src/api/CMakeLists.txt

index 2b74343b1a79ef42fc33fa6806e8b6bc0218e43f..701fa7f0fb033aafac618a979aac7188580c470c 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 16 August 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // BGZF routines were adapted from the bgzf.c code developed at the Broad\r
 // Institute.\r
 // Provides the basic functionality for reading & writing BGZF files\r
 // ***************************************************************************\r
 \r
-#include <algorithm>\r
-#include "BGZF.h"\r
+#include <api/BGZF.h>\r
 using namespace BamTools;\r
-using std::string;\r
-using std::min;\r
+\r
+#include <algorithm>\r
+using namespace std;\r
 \r
 BgzfData::BgzfData(void)\r
     : UncompressedBlockSize(DEFAULT_BLOCK_SIZE)\r
index c1ff2f818b905b9860ce91e625535391e6190aa7..0ee02860fc307bbd9350a5f540fb689564fad7a8 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 20 October 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // BGZF routines were adapted from the bgzf.c code developed at the Broad\r
 // Institute.\r
 #ifndef BGZF_H\r
 #define BGZF_H\r
 \r
+#include <api/api_global.h>\r
+#include "zlib.h"\r
+\r
 #include <cstdio>\r
 #include <cstdlib>\r
 #include <cstring>\r
 #include <string>\r
-#include "zlib.h"\r
 \r
 // Platform-specific large-file support\r
 #ifndef BAMTOOLS_LFS\r
@@ -70,7 +72,7 @@ const int BLOCK_FOOTER_LENGTH = 8;
 const int MAX_BLOCK_SIZE      = 65536;\r
 const int DEFAULT_BLOCK_SIZE  = 65536;\r
 \r
-struct BgzfData {\r
+struct API_EXPORT BgzfData {\r
 \r
     // data members\r
     public:\r
index c3963386707f3c9b06701c2062075fe8b09fe2f5..b0986dfead689291720bb353c57752d9ee6818cd 100644 (file)
@@ -3,11 +3,14 @@
 // Marth Lab, Department of Biology, Boston College
 // All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 19 September 2010 (DB)
+// Last modified: 19 November 2010 (DB)
 // ---------------------------------------------------------------------------
 // Provides the BamAlignment data structure
 // ***************************************************************************
 
+#include <api/BamAlignment.h>
+using namespace BamTools;
+
 #include <cctype>
 #include <cstdio>
 #include <cstdlib>
@@ -15,8 +18,6 @@
 #include <exception>
 #include <map>
 #include <utility>
-#include "BamAlignment.h"
-using namespace BamTools;
 using namespace std;
 
 // default ctor
@@ -684,4 +685,4 @@ bool BamAlignment::SkipToNextTag(const char storageType, char* &pTagData, unsign
     
     // return success
     return true;
-}
\ No newline at end of file
+}
index cbf13d5b5940b70def64ed767dddbbcc1b93a486..f3130733504617a37c5b178931faa35399036e91 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College
 // All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 9 October 2010 (DB)
+// Last modified: 19 November 2010 (DB)
 // ---------------------------------------------------------------------------
 // Provides the BamAlignment data structure
 // ***************************************************************************
 #ifndef BAMALIGNMENT_H
 #define BAMALIGNMENT_H
 
+#include <api/api_global.h>
+#include <api/BamAux.h>
 #include <string>
 #include <vector>
-#include "BamAux.h"
 
 namespace BamTools {
 
 // BamAlignment data structure
 // explicitly labeled as 'struct' to indicate that (most of) its fields are public
-struct BamAlignment {
+struct API_EXPORT BamAlignment {
 
     // constructors & destructor
     public:
index 7bdc6c2191d0c53d35e0ca539da45e8f9dbeb453..cd912846b423dff25da9889d89ad0fbb39917a1e 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 9 October 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // Provides the basic constants, data structures, utilities etc. \r
 // used throughout the API for handling BAM files\r
@@ -12,6 +12,8 @@
 #ifndef BAMAUX_H\r
 #define BAMAUX_H\r
 \r
+#include <api/api_global.h>\r
+\r
 #include <fstream> \r
 #include <iostream>\r
 #include <string>\r
@@ -69,7 +71,7 @@ const int BT_SIZEOF_INT   = 4;
 // Data structs & typedefs\r
 \r
 // CIGAR operation data structure\r
-struct CigarOp {\r
+struct API_EXPORT CigarOp {\r
   \r
     // data members\r
     char     Type;   // Operation type (MIDNSHP)\r
@@ -84,7 +86,7 @@ struct CigarOp {
 };\r
 \r
 // Reference data entry\r
-struct RefData {\r
+struct API_EXPORT RefData {\r
    \r
     // data members\r
     std::string RefName;          // Name of reference sequence\r
@@ -101,7 +103,7 @@ struct RefData {
 typedef std::vector<RefData> RefVector;\r
 \r
 // General (sequential) genome region\r
-struct BamRegion {\r
+struct API_EXPORT BamRegion {\r
   \r
     // data members\r
     int LeftRefID;\r
index e72db5ff35c00c481347d6d5277b82d324e71f59..ae5a463fbd617cdf8f5165a86c78c4d369004559 100644 (file)
@@ -3,23 +3,24 @@
 // Marth Lab, Department of Biology, Boston College
 // All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 21 October 2010 (DB)
+// Last modified: 19 November 2010 (DB)
 // ---------------------------------------------------------------------------
 // Provides index functionality - both for the default (standardized) BAM 
 // index format (.bai) as well as a BamTools-specific (nonstandard) index 
 // format (.bti).
 // ***************************************************************************
 
+#include <api/BamIndex.h>
+#include <api/BamReader.h>
+#include <api/BGZF.h>
+using namespace BamTools;
+
 #include <cstdio>
 #include <cstdlib>
 #include <algorithm>
 #include <iostream>
 #include <map>
-#include "BamIndex.h"
-#include "BamReader.h"
-#include "BGZF.h"
 using namespace std;
-using namespace BamTools;
 
 // -------------------------------
 // BamIndex implementation
index 89e9d2b06cd8361e8f7bac4d7c09e783a36909e7..d8447fa68311025825599aa96796ac66c1ee30cc 100644 (file)
 #ifndef BAM_INDEX_H
 #define BAM_INDEX_H
 
+#include <api/api_global.h>
+#include <api/BamAux.h>
 #include <iostream>
 #include <string>
 #include <vector>
-#include "BamAux.h"
 
 namespace BamTools {
 
@@ -24,7 +25,7 @@ class BgzfData;
   
 // --------------------------------------------------  
 // BamIndex base class
-class BamIndex {
+class API_EXPORT BamIndex {
 
     // specify index-caching behavior
     //
index ef5eeb4505fac6a6830a33d95c8f9966555f14fe..3331c09c520d3da602a654020aec4ac569f315d0 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College
 // All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 18 September 2010 (DB)
+// Last modified: 19 November 2010 (DB)
 // ---------------------------------------------------------------------------
 // Uses BGZF routines were adapted from the bgzf.c code developed at the Broad
 // Institute.
 // precludes the need to sort merged files.
 // ***************************************************************************
 
+#include <api/BamMultiReader.h>
+#include <api/BGZF.h>
+using namespace BamTools;
+
 #include <algorithm>
 #include <fstream>
 #include <iostream>
@@ -23,9 +27,6 @@
 #include <sstream>
 #include <string>
 #include <vector>
-#include "BGZF.h"
-#include "BamMultiReader.h"
-using namespace BamTools;
 using namespace std;
 
 // -----------------------------------------------------
index fa28bcd39fd3193f103c83ad09215829c62a8b2f..d30a0d37c5a23dcb4a3d6148f17b7416c086baf0 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 18 September 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // Functionality for simultaneously reading multiple BAM files\r
 // ***************************************************************************\r
 #ifndef BAMMULTIREADER_H\r
 #define BAMMULTIREADER_H\r
 \r
-#include <string>\r
+#include <api/api_global.h>\r
+#include <api/BamReader.h>\r
 #include <map>\r
-#include <utility>\r
 #include <sstream>\r
-#include "BamReader.h"\r
+#include <string>\r
+#include <utility>\r
 \r
 namespace BamTools {\r
 \r
 // index mapping reference/position pairings to bamreaders and their alignments\r
 typedef std::multimap<std::pair<int, int>, std::pair<BamReader*, BamAlignment*> > AlignmentIndex;\r
 \r
-class BamMultiReader {\r
+class API_EXPORT BamMultiReader {\r
 \r
     // constructor / destructor\r
     public:\r
index d7476db3d6c3ee06e32acbac21ddbb1a1a5894b7..f05b1211ee83e2a26c8ee0b547ab4ff8102cef7b 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College
 // All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 13 October 2010 (DB)
+// Last modified: 19 November 2010 (DB)
 // ---------------------------------------------------------------------------
 // Uses BGZF routines were adapted from the bgzf.c code developed at the Broad
 // Institute.
 // Provides the basic functionality for reading BAM files
 // ***************************************************************************
 
-// C++ includes
+#include <api/BamReader.h>
+#include <api/BGZF.h>
+using namespace BamTools;
+
 #include <algorithm>
+#include <iostream>
 #include <iterator>
 #include <string>
 #include <vector>
-#include <iostream>
-#include "BGZF.h"
-#include "BamReader.h"
-using namespace BamTools;
 using namespace std;
 
 struct BamReader::BamReaderPrivate {
index 1160bd547fa31518aa263bef7f4ccc95ae5fb84d..120a9bb447e7b5324f78f7077d5f5fdd9230b418 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 13 October 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // Uses BGZF routines were adapted from the bgzf.c code developed at the Broad\r
 // Institute.\r
 #ifndef BAMREADER_H\r
 #define BAMREADER_H\r
 \r
+#include <api/api_global.h>\r
+#include <api/BamAlignment.h>\r
+#include <api/BamIndex.h>\r
 #include <string>\r
-#include "BamAlignment.h"\r
-#include "BamIndex.h"\r
 \r
 namespace BamTools {\r
   \r
-class BamReader {\r
+class API_EXPORT BamReader {\r
 \r
     // constructor / destructor\r
     public:\r
index f5eeb2013bdb0dd8f91e0fe5184207df849fb74c..6e5c7924b4abc8e870b0be153694977994fd0485 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 16 September 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // Uses BGZF routines were adapted from the bgzf.c code developed at the Broad\r
 // Institute.\r
 // Provides the basic functionality for producing BAM files\r
 // ***************************************************************************\r
 \r
-#include <iostream>\r
-\r
-#include "BGZF.h"\r
-#include "BamWriter.h"\r
+#include <api/BamWriter.h>\r
+#include <api/BGZF.h>\r
 using namespace BamTools;\r
+\r
+#include <iostream>\r
 using namespace std;\r
 \r
 struct BamWriter::BamWriterPrivate {\r
index 106e3e9263a85b0670282b737d49ae1d9adf8c8d..910f9be6240fa40a0fe9ecefe2da52ad564cdb6c 100644 (file)
@@ -3,7 +3,7 @@
 // Marth Lab, Department of Biology, Boston College\r
 // All rights reserved.\r
 // ---------------------------------------------------------------------------\r
-// Last modified: 18 September 2010 (DB)\r
+// Last modified: 19 November 2010 (DB)\r
 // ---------------------------------------------------------------------------\r
 // Uses BGZF routines were adapted from the bgzf.c code developed at the Broad\r
 // Institute.\r
 #ifndef BAMWRITER_H\r
 #define BAMWRITER_H\r
 \r
+#include <api/api_global.h>\r
+#include <api/BamAlignment.h>\r
 #include <string>\r
-#include "BamAlignment.h"\r
 \r
 namespace BamTools {\r
 \r
-class BamWriter {\r
+class API_EXPORT BamWriter {\r
 \r
     // constructor/destructor\r
     public:\r
index 844560358dcc260da3fc58c8b81a71f981870c13..5d9d592997cd0e63f59ba22e15e4822d9615c705 100644 (file)
@@ -6,7 +6,7 @@
 # ==========================
 
 # list include paths
-include_directories ( ${BamTools_SOURCE_DIR}/src/shared )
+include_directories ( ${BamTools_SOURCE_DIR}/src )
 
 # add compiler definitions 
 add_definitions(-DBAMTOOLS_API_LIBRARY) # (for proper exporting of library symbols)