// Marth Lab, Department of Biology, Boston College\r
// All rights reserved.\r
// ---------------------------------------------------------------------------\r
-// Last modified: 16 June 2010 (DB)\r
+// Last modified: 15 July 2010 (DB)\r
// ---------------------------------------------------------------------------\r
// Provides the basic constants, data structures, etc. for using BAM files\r
// ***************************************************************************\r
int32_t MateRefID; // ID number for reference sequence where alignment's mate was aligned\r
int32_t MatePosition; // Position (0-based) where alignment's mate starts\r
int32_t InsertSize; // Mate-pair insert size\r
- \r
+ \r
+ \r
struct BamAlignmentSupportData {\r
\r
// data members\r
uint32_t NumCigarOperations;\r
uint32_t QueryNameLength;\r
uint32_t QuerySequenceLength;\r
- bool IsParsed;\r
+ bool HasCoreOnly;\r
\r
// constructor\r
BamAlignmentSupportData(void)\r
, NumCigarOperations(0)\r
, QueryNameLength(0)\r
, QuerySequenceLength(0)\r
- , IsParsed(false)\r
+ , HasCoreOnly(false)\r
{ }\r
};\r
\r
{ }\r
};\r
\r
-// ----------------------------------------------------------------\r
-// Indexing structs & typedefs\r
-\r
-struct Chunk {\r
-\r
- // data members\r
- uint64_t Start;\r
- uint64_t Stop;\r
-\r
- // constructor\r
- Chunk(const uint64_t& start = 0, \r
- const uint64_t& stop = 0)\r
- : Start(start)\r
- , Stop(stop)\r
- { }\r
-};\r
-\r
-inline\r
-bool ChunkLessThan(const Chunk& lhs, const Chunk& rhs) {\r
- return lhs.Start < rhs.Start;\r
-}\r
-\r
-typedef std::vector<Chunk> ChunkVector;\r
-typedef std::map<uint32_t, ChunkVector> BamBinMap;\r
-typedef std::vector<uint64_t> LinearOffsetVector;\r
-\r
-struct ReferenceIndex {\r
- // data members\r
- BamBinMap Bins;\r
- LinearOffsetVector Offsets;\r
- // constructor\r
- ReferenceIndex(const BamBinMap& binMap = BamBinMap(),\r
- const LinearOffsetVector& offsets = LinearOffsetVector())\r
- : Bins(binMap)\r
- , Offsets(offsets)\r
- { }\r
-};\r
-\r
-typedef std::vector<ReferenceIndex> BamIndex;\r
-\r
// ----------------------------------------------------------------\r
// BamAlignment member methods\r
\r