1//===- DIALineNumber.h - DIA implementation of IPDBLineNumber ---*- 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_DIA_DIALINENUMBER_H
11#define LLVM_DEBUGINFO_PDB_DIA_DIALINENUMBER_H
12
13#include "DIASupport.h"
14#include "llvm/DebugInfo/PDB/IPDBLineNumber.h"
15
16namespace llvm {
17namespace pdb {
18class DIALineNumber : public IPDBLineNumber {
19public:
20  explicit DIALineNumber(CComPtr<IDiaLineNumber> DiaLineNumber);
21
22  uint32_t getLineNumber() const override;
23  uint32_t getLineNumberEnd() const override;
24  uint32_t getColumnNumber() const override;
25  uint32_t getColumnNumberEnd() const override;
26  uint32_t getAddressSection() const override;
27  uint32_t getAddressOffset() const override;
28  uint32_t getRelativeVirtualAddress() const override;
29  uint64_t getVirtualAddress() const override;
30  uint32_t getLength() const override;
31  uint32_t getSourceFileId() const override;
32  uint32_t getCompilandId() const override;
33  bool isStatement() const override;
34
35private:
36  CComPtr<IDiaLineNumber> LineNumber;
37};
38}
39}
40#endif
41