d8ba258051
libsysprof-analyze: give SysprofDocument a title
2023-06-30 13:23:54 -07:00
5220c6bc21
libsysprof-analyze: add getters for min/max value
2023-06-29 14:14:05 -07:00
756e647e21
libsysprof-analyze: add sysprof_document_find_counter()
...
This allows finding a specific counter without having to traverse them
all from consumer code.
2023-06-29 10:36:40 -07:00
4efb0abbf8
libsysprof-analyze: give counter values access to type
...
Otherwise they won't know how to return the proper value to callers.
2023-06-27 15:52:51 -07:00
e15050b568
libsysprof-analyze: fix calculation of number of counters
2023-06-27 13:54:04 -07:00
26346ec790
libsysprof-analyze: sort counter values by time
2023-06-27 13:00:33 -07:00
a880d02a84
libsysprof-analyze: remove debug code
2023-06-27 12:37:23 -07:00
886ff654a1
libsysprof-analyze: calculate counter range after adding values
...
Otherwise we are just calculating a null set.
2023-06-27 12:19:56 -07:00
514f913f40
libsysprof-gtk: use 0 instead of -inf/inf
2023-06-27 10:59:00 -07:00
696205aaf2
libsysprof-gtk: get expressions for x/y of counter values
2023-06-26 18:14:25 -07:00
6e08309881
libsysprof-analyze: fix pre-calculation
2023-06-26 18:08:37 -07:00
db0d5cce91
libsysprof-analyze: add counters property
2023-06-26 17:52:36 -07:00
d386f13051
libsysprof-analyze: pre-calculate ranges for counters
2023-06-26 17:52:27 -07:00
2b96da9567
libsysprof-analyze: add property for mark end time
2023-06-26 16:46:18 -07:00
453882a39a
libsysprof-analyze: expose properties for some data
2023-06-26 16:39:43 -07:00
5c2f4dc0a9
libsysprof-analyze: remove old series implementations
2023-06-23 22:28:10 -07:00
13323c5e79
libsysprof-analyze: improve progress notifications
2023-06-21 22:06:42 -07:00
100b200995
libsysprof-analyze: allow series without a model
...
This can be useful when you want to generate some data for graphs.
2023-06-20 17:18:57 -07:00
982eee7f31
libsysprof-analyze: return NULL if series is empty
2023-06-20 15:34:43 -07:00
b40be19530
libsysprof-analyze: add test for symbol collision
2023-06-20 14:24:02 -07:00
07d08597ba
libsysprof-analyze: handle collision in symbol cache
...
If we have two nodes that collide for address space, we need to keep the
one we already have in the symbol cache. The other node cannot be cached
and will be dropped instead.
This fixes a leak when collisions occur.
2023-06-20 14:23:46 -07:00
1aafb143fd
libsysprof-analyze: clear stream on finalize
2023-06-20 14:22:51 -07:00
5787809f95
libsysprof-analyze: add simple strings test for asan
...
This just helps track down if there are any leaks via asan.
2023-06-20 13:49:49 -07:00
7595c611d7
libsysprof-analyze: remove unused function
...
No need for the "peek" variant, so just remove it.
2023-06-20 13:39:09 -07:00
c2a8b04cf7
libsysprof-analyze: ignore inf/-inf values in xy series
2023-06-20 11:49:34 -07:00
d0d19cff39
libsysprof-analyze: use doubles for reference data
...
We only want to move to float for the internal 0..1 positions which are
used to draw to the screen (to reduce how much data we hold on to). But for
the data we need to calculate those 0..1 positions, we want better
precision for large numbers. Use double for all of those.
2023-06-20 11:49:22 -07:00
72d489f786
libsysprof-analyze: use weak backpointers for child listmodel
2023-06-20 11:26:10 -07:00
ab5c0c2bf7
libsysprof-analyze: don't leak subvolume mount option
2023-06-20 11:19:01 -07:00
3dfd5c0550
libsysprof-analyze: make error message better
2023-06-20 11:03:56 -07:00
29c72cf202
libsysprof-analyze: cleanup tid->symbol hashtable
2023-06-20 11:03:43 -07:00
4d86d8641a
libsysprof-analyze: cleanup kernel symbols
2023-06-20 11:03:31 -07:00
43ec0e48f5
libsysprof-gtk: start on some loading progress
2023-06-19 19:00:22 -07:00
7f13f0e327
libsysprof-analyze: ignore end time from syscap header
...
We are already walking through all the frames so we can guess this better
than what is in the capture file. This helps ensure that loading older
captures still has the end clamped to the last event we'll see.
2023-06-16 17:08:21 -07:00
4e5e6be841
libsysprof-analyze: add API to read back the min/max ranges
2023-06-16 16:58:46 -07:00
06767c0a1d
libsysprof-analyze: add an XY series strucuture
...
This is meant to contain information about XY coordinates that we can
store in a normalized form. That allows them to be reused across different
scales without regenerating them.
It also includes a back-pointer to the model index so that we can pull out
the real object when necessary for drawing.
2023-06-16 16:16:44 -07:00
10b2ecd299
libsysprof-analyze: remove pre-calculated time offsets
...
These are rather annoying because we want to avoid inflating the objects
in most cases anyway.
2023-06-16 13:10:41 -07:00
d752e2eec2
libsysprof-analyze: add SysprofTimeSeries
...
This includes a helper to generate timeseries items such as marks which
have a point in time and optionally a duration.
The TimeSpan has also been beefed up to gain a few operations that are
useful for implementing that.
2023-06-16 13:07:40 -07:00
1a94b60fbf
libsysprof-analyze: only extend timespan for data types
2023-06-15 16:51:08 -07:00
d4da036f73
libsysprof-analyze: move timespan to analyze library
...
That way we can use it for the document itself, and have it update the
timespan of the recording in case it didn't get updated due to ctrl+c or
something prematurely stopping.
2023-06-15 16:43:17 -07:00
6dcb5e5fdd
libsysprof-analyze: include time as fractions for marks
...
This allows more easily calculating the horizontal position of marks and
their duration from charts.
2023-06-15 16:14:32 -07:00
b572b7426e
libsysprof-analyze: pre-sort marks from hashtable
2023-06-15 13:27:27 -07:00
1455876835
libsysprof-analyze: make mark catalog work with sections
...
This allows us more flexibility with creating sections usin the flatten
list model as the rows need to contain the data for the headers.
2023-06-15 13:19:18 -07:00
1a806d3106
libsysprof-analyze: ignore empty message rows
2023-06-15 12:39:21 -07:00
9a762fa1d4
libsysprof-analyze: add mark catalog kind
...
We can use this to separate catalogs for names vs groups when building
tree models of them.
2023-06-15 11:52:15 -07:00
8b4ab761ab
libsysprof-analyze: add mark information during index pass
2023-06-15 11:44:36 -07:00
80dac7c0cd
libsysprof-analyze: create mark catalogs from hashtable
...
We still need to insert these when parsing the mmap'd capture on the
first pass of data.
2023-06-15 10:35:16 -07:00
51ce85b399
libsysprof-analyze: add scaffolding for listing marks by name/group
2023-06-15 09:36:18 -07:00
231535a396
libsysprof-analyze: add SysprofMarkCatalog
...
This will get used to group marks together by group->name->marks from
the SysprofDocument.
2023-06-14 22:22:34 -07:00
72be9f240f
libsysprof-analyze: add sysprof_document_list_marks()
2023-06-14 16:59:20 -07:00
d51d7c4773
libsysprof-analyze: add rsvg/gdk_pixbuf to modules
2023-06-14 15:38:48 -07:00