// ***************************************************************************
// SamReadGroupDictionary.h (c) 2010 Derek Barnett
// Marth Lab, Department of Biology, Boston College
-// All rights reserved.
// ---------------------------------------------------------------------------
-// Last modified: 4 March 2011 (DB)
+// Last modified: 16 October 2011 (DB)
// ---------------------------------------------------------------------------
// Provides methods for operating on a collection of SamReadGroup entries.
// ***************************************************************************
#ifndef SAM_READGROUP_DICTIONARY_H
#define SAM_READGROUP_DICTIONARY_H
-#include <api/api_global.h>
-#include <api/SamReadGroup.h>
+#include "api/api_global.h"
+#include "api/SamReadGroup.h"
+#include <map>
#include <string>
#include <vector>
void Add(const std::string& readGroupId);
// adds multiple read groups
+ void Add(const SamReadGroupDictionary& readGroups);
void Add(const std::vector<SamReadGroup>& readGroups);
void Add(const std::vector<std::string>& readGroupIds);
SamReadGroupConstIterator End(void) const; // returns const_iterator to end()
SamReadGroupConstIterator ConstEnd(void) const; // returns const_iterator to end()
- // internal methods
- private:
- int IndexOf(const SamReadGroup& readGroup) const;
-
// data members
private:
SamReadGroupContainer m_data;
+ std::map<std::string, size_t> m_lookupData;
};
} // namespace BamTools
-#endif // SAM_READGROUP_DICTIONARY
+#endif // SAM_READGROUP_DICTIONARY_H