NVIDIA DeepStream SDK API Reference

9.2 Release
ModelPool Struct Reference

Detailed Description

ModelPool: the live INVENTORY of one role's (Primary or Shadow) instantiated models, plus the factory that builds them (model_pool_get_or_create: lookup -> promote from limbo -> create + background warm).

Definition at line 644 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

Collaboration diagram for ModelPool:

Data Fields

gchar * role
 
guint base_uid
 
guint next_uid
 unique-id base for this role's models
More...
 
guint max_streams
 monotonic uid allocator (never reused)
More...
 
GstElement * parent_pipeline
 
GstElement * container
 
GHashTable * models
 ModelMuxBin GstBin that owns the elements
More...
 
const ModelMuxConfig * config
 canonical key "name@version" (gchar*, owned) -> BASE-shard ModelBin* (no value destructor: bins are torn down explicitly, never by a map remove). More...
 
const GHashTable * stream_names
 borrowed, READ-ONLY reference data only: model catalog, policy flags (placement/ sharding/leaky) and the versions registry (own versions_lock). More...
 
DefaultModelRef default_ref
 borrowed: stream_id -> name (overlay)
More...
 
gpointer owner
 THIS role's runtime default designation (see DefaultModelRef). More...
 

Field Documentation

◆ base_uid

guint ModelPool::base_uid

◆ config

const ModelMuxConfig * ModelPool::config

canonical key "name@version" (gchar*, owned) -> BASE-shard ModelBin* (no value destructor: bins are torn down explicitly, never by a map remove).

Two versions of one name = two entries; a model's extra shards are NOT in the map – they chain off the base bin via next_shard.

Definition at line 658 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ container

GstElement * ModelPool::container

◆ default_ref

DefaultModelRef ModelPool::default_ref

borrowed: stream_id -> name (overlay)

Definition at line 664 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ max_streams

guint ModelPool::max_streams

monotonic uid allocator (never reused)

Definition at line 649 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ models

GHashTable * ModelPool::models

ModelMuxBin GstBin that owns the elements

Definition at line 652 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ next_uid

guint ModelPool::next_uid

unique-id base for this role's models

Definition at line 648 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ owner

gpointer ModelPool::owner

THIS role's runtime default designation (see DefaultModelRef).

Written by the default writers under the bin lock; read by resolution, the guards, status and the dump.

Definition at line 668 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.

◆ parent_pipeline

GstElement * ModelPool::parent_pipeline

◆ role

gchar * ModelPool::role

◆ stream_names

const GHashTable * ModelPool::stream_names

borrowed, READ-ONLY reference data only: model catalog, policy flags (placement/ sharding/leaky) and the versions registry (own versions_lock).

NEVER runtime default state – that lives in default_ref below.

Definition at line 663 of file sources/gst-plugins/gst-nvmodelmux/gstnvmodelmux_priv.h.


The documentation for this struct was generated from the following file: