diff options
Diffstat (limited to 'profile.h')
-rw-r--r-- | profile.h | 26 |
1 files changed, 14 insertions, 12 deletions
@@ -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 */ |