1 /* Distributed under the OSI-approved BSD 3-Clause License. See accompanying 2 file Copyright.txt or https://cmake.org/licensing for details. */ 3 #pragma once 4 5 #include "cmConfigure.h" // IWYU pragma: keep 6 7 #include <string> 8 #include <vector> 9 10 class cmCTest; 11 class cmCTestCoverageHandlerContainer; 12 13 /** \class cmParseDelphiCoverage 14 * \brief Parse Delphi coverage information 15 * 16 * This class is used to parse Delphi(Pascal) coverage information 17 * generated by the Delphi-Code-Coverage tool 18 * 19 * https://code.google.com/p/delphi-code-coverage/ 20 */ 21 22 class cmParseDelphiCoverage 23 { 24 public: 25 cmParseDelphiCoverage(cmCTestCoverageHandlerContainer& cont, cmCTest* ctest); 26 bool LoadCoverageData(std::vector<std::string> const& files); 27 bool ReadDelphiHTML(const char* file); 28 // Read a single HTML file from output 29 bool ReadHTMLFile(const char* f); 30 31 protected: 32 class HTMLParser; 33 34 cmCTestCoverageHandlerContainer& Coverage; 35 cmCTest* CTest; 36 }; 37