resolver: extend interface to include address context

We might need access to the address context when resolving symbols so that
we know if the address range applies to us.
This commit is contained in:
Christian Hergert
2018-01-28 22:12:27 -08:00
parent 128aa18a00
commit df07f6d915
2 changed files with 96 additions and 15 deletions

View File

@ -21,6 +21,7 @@
#include <glib-object.h>
#include "sp-address.h"
#include "capture/sp-capture-reader.h"
G_BEGIN_DECLS
@ -33,22 +34,34 @@ struct _SpSymbolResolverInterface
{
GTypeInterface parent_interface;
void (*load) (SpSymbolResolver *self,
SpCaptureReader *reader);
gchar *(*resolve) (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpCaptureAddress address,
GQuark *tag);
void (*load) (SpSymbolResolver *self,
SpCaptureReader *reader);
gchar *(*resolve) (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpCaptureAddress address,
GQuark *tag);
gchar *(*resolve_with_context) (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpAddressContext context,
SpCaptureAddress address,
GQuark *tag);
};
void sp_symbol_resolver_load (SpSymbolResolver *self,
SpCaptureReader *reader);
gchar *sp_symbol_resolver_resolve (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpCaptureAddress address,
GQuark *tag);
void sp_symbol_resolver_load (SpSymbolResolver *self,
SpCaptureReader *reader);
gchar *sp_symbol_resolver_resolve (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpCaptureAddress address,
GQuark *tag);
gchar *sp_symbol_resolver_resolve_with_context (SpSymbolResolver *self,
guint64 time,
GPid pid,
SpAddressContext context,
SpCaptureAddress address,
GQuark *tag);
G_END_DECLS