DIASourceFile.h 1.0 KB

123456789101112131415161718192021222324252627282930313233343536
  1. //===- DIASourceFile.h - DIA implementation of IPDBSourceFile ---*- 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. #ifndef LLVM_DEBUGINFO_PDB_DIA_DIASOURCEFILE_H
  10. #define LLVM_DEBUGINFO_PDB_DIA_DIASOURCEFILE_H
  11. #include "DIASupport.h"
  12. #include "llvm/DebugInfo/PDB/IPDBSourceFile.h"
  13. namespace llvm {
  14. class DIASession;
  15. class DIASourceFile : public IPDBSourceFile {
  16. public:
  17. explicit DIASourceFile(const DIASession &Session,
  18. CComPtr<IDiaSourceFile> DiaSourceFile);
  19. std::string getFileName() const override;
  20. uint32_t getUniqueId() const override;
  21. std::string getChecksum() const override;
  22. PDB_Checksum getChecksumType() const override;
  23. std::unique_ptr<IPDBEnumSymbols> getCompilands() const override;
  24. private:
  25. const DIASession &Session;
  26. CComPtr<IDiaSourceFile> SourceFile;
  27. };
  28. }
  29. #endif