summaryrefslogtreecommitdiffstats
path: root/tester/covoar/CoverageFactory.h
diff options
context:
space:
mode:
authorChris Johns <chrisj@rtems.org>2014-05-09 21:50:37 +1000
committerChris Johns <chrisj@rtems.org>2014-06-18 16:48:08 +1200
commit100f517ab37265acdf067e36b6860020ec8b2184 (patch)
tree2316c8b888e11dcbcfbfc66a0c1e31991ea20656 /tester/covoar/CoverageFactory.h
parent4.11: Add ntp patch. (diff)
downloadrtems-tools-100f517ab37265acdf067e36b6860020ec8b2184.tar.bz2
covoar: Merger the covoar source from rtems-testing.git.
Use waf to build covoar.
Diffstat (limited to 'tester/covoar/CoverageFactory.h')
-rw-r--r--tester/covoar/CoverageFactory.h64
1 files changed, 64 insertions, 0 deletions
diff --git a/tester/covoar/CoverageFactory.h b/tester/covoar/CoverageFactory.h
new file mode 100644
index 0000000..4770d78
--- /dev/null
+++ b/tester/covoar/CoverageFactory.h
@@ -0,0 +1,64 @@
+/*! @file CoverageFactory.h
+ * @brief CoverageFactory Specification
+ *
+ * This file contains the specification of the CoverageFactory methods.
+ * This collection of methods is used to create CoverageReader and/or
+ * CoverageWriter instances for a particular coverage file format.
+ */
+
+#ifndef __COVERAGE_FACTORY_H__
+#define __COVERAGE_FACTORY_H__
+
+#include "CoverageReaderBase.h"
+#include "CoverageWriterBase.h"
+
+namespace Coverage {
+
+ /*!
+ * This type defines the coverage file formats that are supported.
+ */
+ typedef enum {
+ COVERAGE_FORMAT_QEMU,
+ COVERAGE_FORMAT_RTEMS,
+ COVERAGE_FORMAT_SKYEYE,
+ COVERAGE_FORMAT_TSIM
+ } CoverageFormats_t;
+
+ /*!
+ * This method returns the coverage file format that corresponds
+ * to the specified string.
+ *
+ * @param[in] format is a string specifying the coverage file format
+ *
+ * @return Returns a coverage file format.
+ */
+ CoverageFormats_t CoverageFormatToEnum(
+ const char* const format
+ );
+
+ /*!
+ * This method returns an instance of a Coverage File Reader class
+ * that corresponds to the specified coverage file format.
+ *
+ * @param[in] format specifies the coverage file format
+ *
+ * @return Returns a Coverage File Reader class instance.
+ */
+ CoverageReaderBase* CreateCoverageReader(
+ CoverageFormats_t format
+ );
+
+ /*!
+ * This method returns an instance of a Coverage File Writer class
+ * that corresponds to the specified coverage file format.
+ *
+ * @param[in] format specifies the coverage file format
+ *
+ * @return Returns a Coverage File Writer class instance.
+ */
+ CoverageWriterBase* CreateCoverageWriter(
+ CoverageFormats_t format
+ );
+}
+
+#endif