| 134 | } |
| 135 | |
| 136 | void Read::appendToStringWithTag(string* target, const char* tag) { |
| 137 | size_t nameLen = mName->length(); |
| 138 | size_t tagLen = strlen(tag); |
| 139 | size_t seqLen = mSeq->length(); |
| 140 | size_t strandLen = mStrand->length(); |
| 141 | size_t qualLen = mQuality->length(); |
| 142 | size_t totalSize = nameLen + 1 + tagLen + seqLen + strandLen + qualLen + 4; |
| 143 | |
| 144 | size_t oldSize = target->size(); |
| 145 | target->resize(oldSize + totalSize); |
| 146 | char* dst = &(*target)[oldSize]; |
| 147 | |
| 148 | memcpy(dst, mName->data(), nameLen); dst += nameLen; |
| 149 | *dst++ = ' '; |
| 150 | memcpy(dst, tag, tagLen); dst += tagLen; *dst++ = '\n'; |
| 151 | memcpy(dst, mSeq->data(), seqLen); dst += seqLen; *dst++ = '\n'; |
| 152 | memcpy(dst, mStrand->data(), strandLen); dst += strandLen; *dst++ = '\n'; |
| 153 | memcpy(dst, mQuality->data(), qualLen); dst += qualLen; *dst++ = '\n'; |
| 154 | } |
| 155 | |
| 156 | string Read::toStringWithTag(const char* tag) { |
| 157 | return *mName + " " + tag + "\n" + *mSeq + "\n" + *mStrand + "\n" + *mQuality + "\n"; |
no test coverage detected