doc: Add tracer objects information
authorThibault Saunier <tsaunier@igalia.com>
Fri, 6 Dec 2024 14:38:26 +0000 (11:38 -0300)
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>
Tue, 10 Dec 2024 09:35:36 +0000 (09:35 +0000)
Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/8086>

subprojects/gstreamer/docs/gst-hotdoc-plugins-scanner.c
subprojects/gstreamer/docs/plugins/gst_plugins_cache.json

index 3a4c9d498b0b278be49f15c97fdcb04dd32b6c5f..195dccd695ded78489b0814a36039a49c92853c8 100644 (file)
@@ -954,7 +954,14 @@ main (int argc, char *argv[])
       if (GST_IS_TRACER_FACTORY (feature)) {
         if (!f)
           g_string_append_printf (json, ",");
-        g_string_append_printf (json, "\"%s\": {}", GST_OBJECT_NAME (feature));
+
+        GstTracer *tracer =
+            g_object_new (gst_tracer_factory_get_tracer_type (GST_TRACER_FACTORY
+                (feature)), NULL);;
+        g_string_append_printf (json, "\"%s\": {", GST_OBJECT_NAME (feature));
+        _add_object_details (json, other_types, seen_other_types,
+            G_OBJECT (tracer), G_OBJECT_TYPE (tracer), G_OBJECT_TYPE (tracer));
+        g_string_append (json, "}");
         f = FALSE;
       }
     }
index fd579549bff68ea7c6cc46f252821c3341c97cc9..e6fc6ded11c6507a37e7855b3d40c2951a54828d 100644 (file)
         "package": "GStreamer",
         "source": "gstreamer",
         "tracers": {
-            "factories": {},
-            "latency": {},
-            "leaks": {},
-            "log": {},
-            "rusage": {},
-            "stats": {}
+            "factories": {
+                "hierarchy": [
+                    "GstFactoriesTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ]
+            },
+            "latency": {
+                "hierarchy": [
+                    "GstLatencyTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "properties": {
+                    "flags": {
+                        "blurb": "Flags to control what latency measurements to perform",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": true,
+                        "controllable": false,
+                        "default": "pipeline",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "GstLatencyTracerFlags",
+                        "writable": true
+                    }
+                }
+            },
+            "leaks": {
+                "hierarchy": [
+                    "GstLeaksTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ],
+                "properties": {
+                    "check-refs": {
+                        "blurb": "Whether to track ref/unref operations",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": true,
+                        "controllable": false,
+                        "default": "false",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "filters": {
+                        "blurb": "Comma-separated list of GObject types to track",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": true,
+                        "controllable": false,
+                        "default": "",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gchararray",
+                        "writable": true
+                    },
+                    "log-leaks-on-deinit": {
+                        "blurb": "Whether to log leaks on shutdown",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": true,
+                        "controllable": false,
+                        "default": "true",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "gboolean",
+                        "writable": true
+                    },
+                    "stack-traces-flags": {
+                        "blurb": "Stack trace collection mode",
+                        "conditionally-available": false,
+                        "construct": false,
+                        "construct-only": true,
+                        "controllable": false,
+                        "default": "disabled",
+                        "mutable": "null",
+                        "readable": true,
+                        "type": "GstLeaksStackTraceFlags",
+                        "writable": true
+                    }
+                },
+                "signals": {
+                    "activity-get-checkpoint": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "GstStructure",
+                        "when": "last"
+                    },
+                    "activity-log-checkpoint": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "void",
+                        "when": "last"
+                    },
+                    "activity-start-tracking": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "void",
+                        "when": "last"
+                    },
+                    "activity-stop-tracking": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "void",
+                        "when": "last"
+                    },
+                    "get-live-objects": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "GstStructure",
+                        "when": "last"
+                    },
+                    "log-live-objects": {
+                        "action": true,
+                        "args": [],
+                        "return-type": "void",
+                        "when": "last"
+                    }
+                }
+            },
+            "log": {
+                "hierarchy": [
+                    "GstLogTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ]
+            },
+            "rusage": {
+                "hierarchy": [
+                    "GstRUsageTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ]
+            },
+            "stats": {
+                "hierarchy": [
+                    "GstStatsTracer",
+                    "GstTracer",
+                    "GstObject",
+                    "GInitiallyUnowned",
+                    "GObject"
+                ]
+            }
         },
         "url": "Unknown package origin"
     }