NVIDIA DeepStream SDK API Reference

9.2 Release
9.2/sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2020-2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
3  * SPDX-License-Identifier: Apache-2.0
4  *
5  * Licensed under the Apache License, Version 2.0 (the "License");
6  * you may not use this file except in compliance with the License.
7  * You may obtain a copy of the License at
8  *
9  * http://www.apache.org/licenses/LICENSE-2.0
10  *
11  * Unless required by applicable law or agreed to in writing, software
12  * distributed under the License is distributed on an "AS IS" BASIS,
13  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14  * See the License for the specific language governing permissions and
15  * limitations under the License.
16  */
17 
18 #ifndef __GST_DS_NVINFER_BIN_H__
19 #define __GST_DS_NVINFER_BIN_H__
20 
21 #include <gst/video/video.h>
22 
23 G_BEGIN_DECLS
24 /* nvinfer signals */
25 enum
26 {
27  /* Signal emitted to notify app about model update completion with
28  * success/error messages. */
31 };
32 
33 /* Standard GStreamer boilerplate */
34 typedef struct _GstDsNvInferBin
35 {
36  GstBin bin;
37  GstElement *queue;
38  GstElement *nvinfer;
40 
41 typedef struct _GstDsNvInferBinClass
42 {
43  GstBinClass parent_class;
44 
50  void (*model_updated) (GstDsNvInferBin *, gint err, const gchar * cfg_file);
52 
53 
54 /* Standard GStreamer boilerplate */
55 #define GST_TYPE_DS_NVINFER_BIN (gst_ds_nvinfer_bin_get_type())
56 #define GST_DS_NVINFER_BIN(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_DS_NVINFER_BIN,GstDsNvInferBin))
57 #define GST_DS_NVINFER_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_DS_NVINFER_BIN,GstDsNvInferBinClass))
58 #define GST_DS_NVINFER_BIN_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), GST_TYPE_DS_NVINFER_BIN, GstDsNvInferBinClass))
59 #define GST_IS_DS_NVINFER_BIN(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_DS_NVINFER_BIN))
60 #define GST_IS_DS_NVINFER_BIN_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_DS_NVINFER_BIN))
61 #define GST_DS_NVINFER_BIN_CAST(obj) ((GstDsNvInferBin *)(obj))
62 
63 GType gst_ds_nvinfer_bin_get_type (void);
64 
65 G_END_DECLS
66 #endif /* __GST_DS_NVINFER_BIN_H__ */
_GstDsNvInferBinClass
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:41
_GstDsNvInferBinClass::model_updated
void(* model_updated)(GstDsNvInferBin *, gint err, const gchar *cfg_file)
Signals.
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:50
_GstDsNvInferBin::nvinfer
GstElement * nvinfer
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:38
_GstDsNvInferBin::queue
GstElement * queue
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:37
_GstDsNvInferBin::bin
GstBin bin
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:36
gst_ds_nvinfer_bin_get_type
GType gst_ds_nvinfer_bin_get_type(void)
GstDsNvInferBin
struct _GstDsNvInferBin GstDsNvInferBin
GstDsNvInferBinClass
struct _GstDsNvInferBinClass GstDsNvInferBinClass
_GstDsNvInferBinClass::parent_class
GstBinClass parent_class
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:43
LAST_SIGNAL
@ LAST_SIGNAL
Definition: 9.2/sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:30
SIGNAL_MODEL_UPDATED
@ SIGNAL_MODEL_UPDATED
Definition: 9.2/sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:29
_GstDsNvInferBin
Definition: sources/gst-plugins/gst-nvdsbins/gstdsnvinferbin.h:34