18 #ifndef __SAM_FILE_HEADER_H__
19 #define __SAM_FILE_HEADER_H__
24 #include "SamReferenceInfo.h"
25 #include "SamHeaderHD.h"
26 #include "SamHeaderSQ.h"
27 #include "SamHeaderRG.h"
28 #include "SamHeaderPG.h"
107 bool addHeaderLine(
const char* type,
const char* tag,
const char* value);
143 bool setHDTag(
const char* tag,
const char* value);
152 bool setSQTag(
const char* tag,
const char* value,
const char* name);
160 bool setRGTag(
const char* tag,
const char* value,
const char*
id);
168 bool setPGTag(
const char* tag,
const char* value,
const char*
id);
258 const char*
getSQTagValue(
const char* tag,
const char* name);
425 static const std::string EMPTY_RETURN;
429 bool parseHeader(
String& header);
432 bool parseHeaderLine(
const String& headerLine);
436 bool getHeaderLine(
unsigned int index, std::string& header)
const;
438 int16_t makeKey(
char ch1,
char ch2)
440 return((ch1 << 8) + ch2);
459 std::vector<std::string> myComments;
461 std::vector<SamHeaderRecord*> myHeaderRecords;
463 std::string myErrorMessage;
465 uint32_t myCurrentSQIndex;
467 uint32_t myCurrentRGIndex;
469 uint32_t myCurrentPGIndex;
471 uint32_t myCurrentHeaderIndex;
473 uint32_t myCurrentCommentIndex;
Class for tracking the reference information mapping between the reference ids and the reference name...