summaryrefslogtreecommitdiffstats
path: root/src/lib/kStuff/kProfiler2/kPrfReader.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/kStuff/kProfiler2/kPrfReader.h')
-rw-r--r--src/lib/kStuff/kProfiler2/kPrfReader.h45
1 files changed, 45 insertions, 0 deletions
diff --git a/src/lib/kStuff/kProfiler2/kPrfReader.h b/src/lib/kStuff/kProfiler2/kPrfReader.h
new file mode 100644
index 0000000..0cb1683
--- /dev/null
+++ b/src/lib/kStuff/kProfiler2/kPrfReader.h
@@ -0,0 +1,45 @@
+
+
+#include <string>
+
+typedef
+
+/**
+ * Debug info cache.
+ *
+ * An objects of this class acts a frontend to the low-level
+ * debug info readers.
+ */
+class kPrfDebugInfoCache
+{
+public:
+ kPrfDebugInfoCache(unsigned cMaxModules = ~0U);
+ ~kPrfDebugInfoCache();
+
+ /** Resolves a symbol in a specific module. */
+ int findSymbol();
+ int findLine();
+};
+
+/**
+ * Internal class which does the reader job behind the API / commandline tool.
+ */
+class kPrfReader
+{
+public:
+ kPrfReader(const char *pszDataSetPath);
+ ~kPrfReader();
+
+ /** Analyses the data set. */
+ int analyse(int fSomeOptionsIHaventFiguredOutYet);
+
+ /** Writes the analysis report as HTML. */
+ int reportAsHtml(FILE *pOut);
+
+ /** Dumps the data set in a raw fashion to the specified file stream. */
+ int dump(FILE *pOut);
+
+protected:
+ /** Pointer to the debug info cache object. */
+ kPrfDebugInfoCache *pDbgCache;
+};