5#include <QtCore/QString>
6#include <QtCore/qglobal.h>
15#if defined(QGC_HAS_ANY_GPU_PATH)
28 bool dmaBufCache =
false;
29 bool dmaBufSingleEglImage =
true;
30 bool dmaBufNoMmapFence =
false;
31 bool offerDmaDrmLinear =
false;
38GstBusSyncReply
onBusSyncMessage(GstBus* bus, GstMessage* msg, gpointer userData) noexcept;
52#if defined(QGC_HAS_ANY_GPU_PATH)
void initializeOnce() noexcept
One-time process init; single call site for future lazy bridge registration.
bool answerSinkBinContextQuery(GstQuery *query) noexcept
Synchronously answer GST_QUERY_CONTEXT (gst.gl.GLDisplay/app_context); false -> let bus NEED_CONTEXT ...
QString takeExtraPathStats() noexcept
Path-specific extras after formatPathStats (GL reuse/sync waits); reads-and-clears,...
void onPipelineRestart() noexcept
Pipeline-restart hook; re-arms one-shot priming latches so a restart can prime on the next NEED_CONTE...
void resetCachedGpuResources() noexcept
Drop process-wide native GPU handles tied to the current Qt scene-graph device/context.
void connectMainWindow(QQuickWindow *window) noexcept
Wire the main QQuickWindow into the RHI-capture path so snapshots follow its QRhi; no-op without GPU.
GstBusSyncReply onBusSyncMessage(GstBus *, GstMessage *msg, gpointer) noexcept
Bus sync handler (GstBusSyncHandler) installed on every pipeline; no-op when no GPU path compiled.
void dispatchBusMessage(GstMessage *msg) noexcept
Receiver-side bus hook; drops cached GPU devices on GST_MESSAGE_ERROR. No-op when no GPU paths compil...
const HwBufferEnvConfig & hwBufferEnvConfig() noexcept
Lazily parses + logs the toggle config on first call; thread-safe via static-init guarantees.
PathStats formatPathStats(bool reset) noexcept
Formatted per-path counters + delivered total; reset=true reads-and-clears (teardown),...
Platform context for the factory; encapsulates EGL handles so callers don't need path-specific ifdefs...