summaryrefslogtreecommitdiff
path: root/profile.h
diff options
context:
space:
mode:
Diffstat (limited to 'profile.h')
-rw-r--r--profile.h26
1 files changed, 14 insertions, 12 deletions
diff --git a/profile.h b/profile.h
index edc1c45..ed016da 100644
--- a/profile.h
+++ b/profile.h
@@ -17,9 +17,10 @@
* Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
*/
+#ifndef PROFILE_H
+#define PROFILE_H
+
#include <glib.h>
-#include "binfile.h"
-#include "process.h"
#include "stackstash.h"
typedef struct Profile Profile;
@@ -29,7 +30,10 @@ typedef struct ProfileCaller ProfileCaller;
struct ProfileObject
{
- char * name; /* identifies this object uniquely */
+ char * name; /* identifies this object uniquely
+ * (the pointer itself, not the
+ * string)
+ */
guint total; /* sum of all toplevel totals */
guint self; /* sum of all selfs */
@@ -37,21 +41,17 @@ struct ProfileObject
struct ProfileDescendant
{
- ProfileObject * object;
+ char * name;
guint self;
- guint total;
- guint non_recursion;
+ guint cumulative;
ProfileDescendant * parent;
ProfileDescendant * siblings;
ProfileDescendant * children;
-
- int marked_non_recursive;
- int marked_total;
};
struct ProfileCaller
{
- ProfileObject * object; /* can be NULL */
+ char * name;
guint total;
guint self;
@@ -63,9 +63,9 @@ void profile_free (Profile *profile);
gint profile_get_size (Profile *profile);
GList * profile_get_objects (Profile *profile);
ProfileDescendant *profile_create_descendants (Profile *prf,
- ProfileObject *object);
+ char *object);
ProfileCaller * profile_list_callers (Profile *profile,
- ProfileObject *callee);
+ char *object);
void profile_caller_free (ProfileCaller *caller);
void profile_descendant_free (ProfileDescendant *descendant);
@@ -74,3 +74,5 @@ gboolean profile_save (Profile *profile,
GError **err);
Profile * profile_load (const char *filename,
GError **err);
+
+#endif /* PROFILE_H */