]> git.donarmstrong.com Git - bamtools.git/blobdiff - src/api/SamSequenceDictionary.h
Fixed regression: improper @SQ line ordering in SamHeader output
[bamtools.git] / src / api / SamSequenceDictionary.h
index fca8b2257d7f59780f677b3092f74ce6d0f96f54..cf7c2f3eb4049fef90739a77e6c7ce6ba7556911 100644 (file)
@@ -1,9 +1,8 @@
 // ***************************************************************************
 // SamSequenceDictionary.h (c) 2010 Derek Barnett
 // Marth Lab, Department of Biology, Boston College
-// All rights reserved.
 // ---------------------------------------------------------------------------
-// Last modified: 20 March 2011
+// Last modified: 14 October 2011
 // ---------------------------------------------------------------------------
 // Provides methods for operating on a collection of SamSequence entries.
 // ***************************************************************************
 #ifndef SAM_SEQUENCE_DICTIONARY_H
 #define SAM_SEQUENCE_DICTIONARY_H
 
-#include <api/api_global.h>
-#include <api/SamSequence.h>
-#include <string>
+#include "api/api_global.h"
+#include "api/SamSequence.h"
 #include <map>
+#include <string>
 #include <vector>
 
 namespace BamTools {
@@ -38,6 +37,7 @@ class API_EXPORT SamSequenceDictionary {
         void Add(const std::string& name, const int& length);
 
         // adds multiple sequences
+        void Add(const SamSequenceDictionary& sequences);
         void Add(const std::vector<SamSequence>& sequences);
         void Add(const std::map<std::string, int>& sequenceMap);
 
@@ -74,17 +74,13 @@ class API_EXPORT SamSequenceDictionary {
         SamSequenceConstIterator End(void) const;           // returns const_iterator to end()
         SamSequenceConstIterator ConstEnd(void) const;      // returns const_iterator to end()
 
-    // internal methods
-    private:
-        int IndexOf(const SamSequence& sequence) const;
-        int IndexOf(const std::string& name) const;
-
     // data members
     private:
         SamSequenceContainer m_data;
+        std::map<std::string, SamSequence> m_lookupData;
 };
 
 } // namespace BamTools
 
-#endif // SAM_SEQUENCE_DICTIONARY 
+#endif // SAM_SEQUENCE_DICTIONARY_H