summaryrefslogtreecommitdiffstats
path: root/Source/CTest/cmParseGTMCoverage.h
diff options
context:
space:
mode:
authorBill Hoffman <bill.hoffman@kitware.com>2012-04-25 21:04:28 (GMT)
committerBill Hoffman <bill.hoffman@kitware.com>2012-04-25 21:04:28 (GMT)
commite6412e084ed6ba77c17292e3e7c5b9d8e2450bab (patch)
treef9b7dad505e126b0dedbd54c8200d94ae04bd24c /Source/CTest/cmParseGTMCoverage.h
parent93e6069553874e11af8915da68996fb4323d4a52 (diff)
downloadCMake-e6412e084ed6ba77c17292e3e7c5b9d8e2450bab.zip
CMake-e6412e084ed6ba77c17292e3e7c5b9d8e2450bab.tar.gz
CMake-e6412e084ed6ba77c17292e3e7c5b9d8e2450bab.tar.bz2
Add support to ctest for GTM mumps coverage.
Diffstat (limited to 'Source/CTest/cmParseGTMCoverage.h')
-rw-r--r--Source/CTest/cmParseGTMCoverage.h50
1 files changed, 50 insertions, 0 deletions
diff --git a/Source/CTest/cmParseGTMCoverage.h b/Source/CTest/cmParseGTMCoverage.h
new file mode 100644
index 0000000..d4e901d
--- /dev/null
+++ b/Source/CTest/cmParseGTMCoverage.h
@@ -0,0 +1,50 @@
+/*============================================================================
+ CMake - Cross Platform Makefile Generator
+ Copyright 2000-2009 Kitware, Inc.
+
+ Distributed under the OSI-approved BSD License (the "License");
+ see accompanying file Copyright.txt for details.
+
+ This software is distributed WITHOUT ANY WARRANTY; without even the
+ implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+ See the License for more information.
+============================================================================*/
+
+#ifndef cmParseGTMCoverage_h
+#define cmParseGTMCoverage_h
+
+#include "cmStandardIncludes.h"
+#include "cmCTestCoverageHandler.h"
+
+/** \class cmParseGTMCoverage
+ * \brief Parse GTM coverage information
+ *
+ * This class is used to parse GTM coverage information for
+ * mumps.
+ */
+class cmParseGTMCoverage
+{
+public:
+ cmParseGTMCoverage(cmCTestCoverageHandlerContainer& cont,
+ cmCTest* ctest);
+ bool ReadGTMCoverage(const char* file);
+private:
+ bool ParseFile(std::string& filepath,
+ std::string& function,
+ int& lineoffset);
+ bool ParseLine(std::string const& line,
+ std::string& routine,
+ std::string& function,
+ int& linenumber,
+ int& count);
+ bool LoadPackages(const char* dir);
+ bool LoadCoverageData(const char* dir);
+ bool ReadMCovFile(const char* f);
+ void InitializeFile(std::string& file);
+ std::map<cmStdString, cmStdString> RoutineToDirectory;
+ cmCTestCoverageHandlerContainer& Coverage;
+ cmCTest* CTest;
+};
+
+
+#endif