aboutsummaryrefslogtreecommitdiff
path: root/thirdparty/raw_pdb/src/PDB_ModuleLineStream.cpp
blob: 201983ed6ec8366245737fcdfb2f54f0d721e73f (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
// Copyright 2011-2022, Molecular Matters GmbH <[email protected]>
// See LICENSE.txt for licensing details (2-clause BSD License: https://opensource.org/licenses/BSD-2-Clause)

#include "PDB_PCH.h"
#include "PDB_ModuleLineStream.h"
#include "PDB_RawFile.h"


// ------------------------------------------------------------------------------------------------
// ------------------------------------------------------------------------------------------------
PDB::ModuleLineStream::ModuleLineStream(void) PDB_NO_EXCEPT
	: m_stream(), m_c13LineInfoOffset(0)
{
}


// ------------------------------------------------------------------------------------------------
// ------------------------------------------------------------------------------------------------
PDB::ModuleLineStream::ModuleLineStream(const RawFile& file, uint16_t streamIndex, uint32_t streamSize, size_t c13LineInfoOffset) PDB_NO_EXCEPT
	: m_stream(file.CreateMSFStream<CoalescedMSFStream>(streamIndex, streamSize)), m_c13LineInfoOffset(c13LineInfoOffset)
{
	// https://llvm.org/docs/PDB/ModiStream.html
	// struct ModiStream {
	//	uint32_t Signature;
	//	uint8_t Symbols[SymbolSize - 4];
	//	uint8_t C11LineInfo[C11Size];
	//	uint8_t C13LineInfo[C13Size];
	//	uint32_t GlobalRefsSize;
	//	uint8_t GlobalRefs[GlobalRefsSize];
	// };
}