1 //===- IndexedStreamData.h - Standard PDB Stream Data -----------*- C++ -*-===// 2 // 3 // The LLVM Compiler Infrastructure 4 // 5 // This file is distributed under the University of Illinois Open Source 6 // License. See LICENSE.TXT for details. 7 // 8 //===----------------------------------------------------------------------===// 9 10 #ifndef LLVM_DEBUGINFO_PDB_RAW_INDEXEDSTREAMDATA_H 11 #define LLVM_DEBUGINFO_PDB_RAW_INDEXEDSTREAMDATA_H 12 13 #include "llvm/DebugInfo/PDB/Raw/IPDBStreamData.h" 14 15 namespace llvm { 16 namespace pdb { 17 class IPDBFile; 18 19 class IndexedStreamData : public IPDBStreamData { 20 public: 21 IndexedStreamData(uint32_t StreamIdx, const IPDBFile &File); ~IndexedStreamData()22 virtual ~IndexedStreamData() {} 23 24 uint32_t getLength() override; 25 ArrayRef<support::ulittle32_t> getStreamBlocks() override; 26 27 private: 28 uint32_t StreamIdx; 29 const IPDBFile &File; 30 }; 31 } 32 } 33 34 #endif 35