Changes

From Genome Analysis Wiki
Jump to navigationJump to search
no edit summary
Line 30: Line 30:  
| <code>void CigarRoller::Add(const char *cigarString)</code>
 
| <code>void CigarRoller::Add(const char *cigarString)</code>
 
| <code>void Cigar::add(const char *cigarString)</code>
 
| <code>void Cigar::add(const char *cigarString)</code>
 +
| What happens if an invalid character is found while parsing this???
 
|-
 
|-
 
|  
 
|  
Line 47: Line 48:  
| <code>void CigarRoller::getExpandedString(std::string &s)</code>
 
| <code>void CigarRoller::getExpandedString(std::string &s)</code>
 
| <code>void Cigar::getExpandedString(std::string &s)</code>
 
| <code>void Cigar::getExpandedString(std::string &s)</code>
 +
|-
 +
|
 +
| <code>uint16_t Cigar::getBufferSize(uint32_t *cigarBuffer, uint16_t cigarBufferLength)</code>
 +
| Length the buffer would need to be.
 +
|-
 +
|
 +
| <code>void Cigar::getBuffer(uint32_t *cigarBuffer)</code>
 +
| Assumes the user properly allocated a buffer of getBufferSize - is there a better what to do this?  I think there is, but I'm drawing a blank.
 
|-
 
|-
 
| <code>void CigarRoller::clear()</code>
 
| <code>void CigarRoller::clear()</code>
Line 93: Line 102:     
Should this be its own class?
 
Should this be its own class?
 +
 +
== How would this be used by SamRecord ==
 +
When SamRecord needs to convert from SAM to BAM or BAM to SAM or needs alignment length or numOverlaps,e tc, it would use the appropriate Cigar::set.
 +
The conversion logic and parsing logic SAM & BAM would only be located in this Cigar class.
 +
 +
The alignment length calculation would come from the cigar.
 +
 +
What about alignment end (pass in the start position)?
 +
 +
Unclipped Start/End would also be from Cigar - or would it just be offsets - or either depending on whether or not the start pos is passed in.

Navigation menu