From 51ce85b399b0a85bd75c5d84e5cb530f63cf7c68 Mon Sep 17 00:00:00 2001 From: Christian Hergert Date: Thu, 15 Jun 2023 09:36:18 -0700 Subject: [PATCH] libsysprof-analyze: add scaffolding for listing marks by name/group --- src/libsysprof-analyze/sysprof-document.c | 18 ++++++++++++++++++ src/libsysprof-analyze/sysprof-document.h | 3 +++ 2 files changed, 21 insertions(+) diff --git a/src/libsysprof-analyze/sysprof-document.c b/src/libsysprof-analyze/sysprof-document.c index 2bc3e25f..33d7eb15 100644 --- a/src/libsysprof-analyze/sysprof-document.c +++ b/src/libsysprof-analyze/sysprof-document.c @@ -1415,3 +1415,21 @@ sysprof_document_list_symbols_in_traceable (SysprofDocument *self, return G_LIST_MODEL (ret); } + +/** + * sysprof_document_catalog_marks: + * @self: a #SysprofDocument + * + * Generates a catalog of marks which can be used to sort marks by + * group, then another catalog by name, which is then itself a #GListModel + * of #SysprofDocumentMark. + * + * Returns: (transfer full): a #SysprofMarkCatalog + */ +SysprofMarkCatalog * +sysprof_document_catalog_marks (SysprofDocument *self) +{ + g_return_val_if_fail (SYSPROF_IS_DOCUMENT (self), NULL); + + return NULL; +} diff --git a/src/libsysprof-analyze/sysprof-document.h b/src/libsysprof-analyze/sysprof-document.h index 942f70ff..57dd50cd 100644 --- a/src/libsysprof-analyze/sysprof-document.h +++ b/src/libsysprof-analyze/sysprof-document.h @@ -27,6 +27,7 @@ #include "sysprof-callgraph.h" #include "sysprof-document-file.h" #include "sysprof-document-traceable.h" +#include "sysprof-mark-catalog.h" #include "sysprof-symbol.h" G_BEGIN_DECLS @@ -58,6 +59,8 @@ GListModel *sysprof_document_list_counters (SysprofDocument SYSPROF_AVAILABLE_IN_ALL GListModel *sysprof_document_list_marks (SysprofDocument *self); SYSPROF_AVAILABLE_IN_ALL +SysprofMarkCatalog *sysprof_document_catalog_marks (SysprofDocument *self); +SYSPROF_AVAILABLE_IN_ALL GListModel *sysprof_document_list_symbols_in_traceable (SysprofDocument *self, SysprofDocumentTraceable *traceable); SYSPROF_AVAILABLE_IN_ALL