aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--doc/reference/Makefile.am1
-rw-r--r--doc/reference/epiphany-docs.sgml4
-rw-r--r--doc/reference/epiphany-sections.txt8
-rw-r--r--lib/ephy-debug.c28
4 files changed, 40 insertions, 1 deletions
diff --git a/doc/reference/Makefile.am b/doc/reference/Makefile.am
index f8a3205f5..d611e9d40 100644
--- a/doc/reference/Makefile.am
+++ b/doc/reference/Makefile.am
@@ -34,7 +34,6 @@ CFILE_GLOB=$(top_srcdir)/lib/*.c
IGNORE_HFILES = \
config.h \
eel-gconf-extensions.h \
- ephy-debug.h \
ephy-dialog.h \
ephy-dnd.h \
ephy-file-chooser.h \
diff --git a/doc/reference/epiphany-docs.sgml b/doc/reference/epiphany-docs.sgml
index e65406f33..5b94fbf12 100644
--- a/doc/reference/epiphany-docs.sgml
+++ b/doc/reference/epiphany-docs.sgml
@@ -14,6 +14,10 @@
<xi:include href="xml/ephy-window.xml"/>
</chapter>
<chapter>
+ <title>Library</title>
+ <xi:include href="xml/ephy-debug.xml"/>
+ </chapter>
+ <chapter>
<title>Widgets</title>
<xi:include href="xml/ephy-location-entry.xml"/>
<xi:include href="xml/ephy-node-view.xml"/>
diff --git a/doc/reference/epiphany-sections.txt b/doc/reference/epiphany-sections.txt
index 3b0b7b081..00c7699ab 100644
--- a/doc/reference/epiphany-sections.txt
+++ b/doc/reference/epiphany-sections.txt
@@ -96,6 +96,14 @@ ephy_zoom_control_get_zoom_level
</SECTION>
<SECTION>
+<FILE>ephy-debug</FILE>
+<TITLE>EphyDebug</TITLE>
+ephy_debug_init
+ephy_profiler_start
+ephy_profiler_stop
+</SECTION>
+
+<SECTION>
<FILE>ephy-location-action</FILE>
<TITLE>EphyLocationAction</TITLE>
EphyLocationAction
diff --git a/lib/ephy-debug.c b/lib/ephy-debug.c
index 81f93ff6b..0eba70f22 100644
--- a/lib/ephy-debug.c
+++ b/lib/ephy-debug.c
@@ -30,6 +30,14 @@
#include <stdlib.h>
#include <glib.h>
+/**
+ * SECTION:ephy-debug
+ * @short_description: Epiphany debugging and profiling facilities
+ *
+ * Epiphany includes powerful profiling and debugging facilities to log and
+ * analyze modules. Refer to doc/debugging.txt for more information.
+ */
+
static const char *ephy_debug_break = NULL;
#ifndef DISABLE_PROFILING
@@ -156,6 +164,13 @@ trap_handler (const char *log_domain,
}
}
+/**
+ * ephy_debug_init:
+ *
+ * Starts the debugging facility, see doc/debugging.txt in Epiphany's source for
+ * more information. It also starts module logging and profiling if the
+ * appropiate variables are set: EPHY_LOG_MODULES and EPHY_PROFILE_MODULES.
+ **/
void
ephy_debug_init (void)
{
@@ -240,6 +255,13 @@ ephy_profiler_free (EphyProfiler *profiler)
g_free (profiler);
}
+/**
+ * ephy_profiler_start:
+ * @name: name of this new profiler
+ * @module: Epiphany module to profile
+ *
+ * Starts a new profiler on @module naming it @name.
+ **/
void
ephy_profiler_start (const char *name, const char *module)
{
@@ -260,6 +282,12 @@ ephy_profiler_start (const char *name, const char *module)
g_hash_table_insert (ephy_profilers_hash, g_strdup (name), profiler);
}
+/**
+ * ephy_profiler_stop:
+ * @name: name of the profiler to stop
+ *
+ * Stops the profiler named @name.
+ **/
void
ephy_profiler_stop (const char *name)
{