18 #include "SamReferenceInfo.h"
21 : myReferenceContigs(),
36 int32_t referenceSequenceLength)
38 myReferenceHash.Add(referenceSequenceName,
39 myReferenceContigs.Length());
40 myReferenceContigs.Push(referenceSequenceName);
41 myReferenceLengths.Push(referenceSequenceLength);
48 if (referenceName ==
"*")
51 int id = myReferenceHash.Find(referenceName);
54 return myReferenceHash.Integer(
id);
62 id = myReferenceContigs.Length();
63 myReferenceContigs.Push(referenceName);
64 myReferenceLengths.Push(0);
65 myReferenceHash.Add(referenceName,
id);
74 String referenceNameString = referenceName;
84 if ((
id < 0) || (
id >= myReferenceContigs.Length()))
89 return myReferenceContigs[id];
96 return(myReferenceLengths.Length());
104 return(myReferenceContigs[index].c_str());
116 return(myReferenceLengths[index]);
125 myReferenceContigs.Clear();
126 myReferenceHash.Clear();
127 myReferenceLengths.Clear();
135 myReferenceContigs = newInfo.myReferenceContigs;
136 myReferenceHash = newInfo.myReferenceHash;
137 myReferenceLengths = newInfo.myReferenceLengths;
146 return((myReferenceContigs == rhs.myReferenceContigs) &&
147 (myReferenceLengths == rhs.myReferenceLengths));