NVIDIA DeepStream SDK API Reference

9.1 Release
sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2018-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 
28 #ifndef __GST_NVINFER_SERVER_H__
29 #define __GST_NVINFER_SERVER_H__
30 
31 #include <gst/base/gstbasetransform.h>
32 #include <gst/video/video.h>
33 
34 #include "gstnvdsinfer.h"
35 #include "gstnvdsmeta.h"
36 
37 /* Package and library details required for plugin_init */
38 #define PACKAGE "nvinferserver"
39 #define VERSION "1.0"
40 #define LICENSE "Proprietary"
41 #define DESCRIPTION "NVIDIA DeepStreamSDK TensorRT Inference Server plugin"
42 #define BINARY_PACKAGE "NVIDIA DeepStreamSDK TensorRT Inference Server plugin"
43 #define URL "http://nvidia.com/"
44 
45 namespace gstnvinferserver {
47 }
48 
49 G_BEGIN_DECLS
50 
51 /* Standard GStreamer boilerplate */
54 
55 /* Standard GStreamer boilerplate */
56 #define GST_TYPE_NVINFER_SERVER (gst_nvinfer_server_get_type())
57 #define GST_NVINFER_SERVER(obj) \
58  (G_TYPE_CHECK_INSTANCE_CAST( \
59  (obj), GST_TYPE_NVINFER_SERVER, GstNvInferServer))
60 #define GST_NVINFER_SERVER_CLASS(klass) \
61  (G_TYPE_CHECK_CLASS_CAST( \
62  (klass), GST_TYPE_NVINFER_SERVER, GstNvInferServerClass))
63 #define GST_NVINFER_SERVER_GET_CLASS(obj) \
64  (G_TYPE_INSTANCE_GET_CLASS( \
65  (obj), GST_TYPE_NVINFER_SERVER, GstNvInferServerClass))
66 #define GST_IS_NVINFER(obj) \
67  (G_TYPE_CHECK_INSTANCE_TYPE((obj), GST_TYPE_NVINFER_SERVER))
68 #define GST_IS_NVINFER_CLASS(klass) \
69  (G_TYPE_CHECK_CLASS_TYPE((klass), GST_TYPE_NVINFER_SERVER))
70 #define GST_NVINFER_SERVER_CAST(obj) ((GstNvInferServer*)(obj))
71 
88 };
89 
96  GstBaseTransform base_trans;
97 
101 
104 
109 
111  GstFlowReturn last_flow_ret;
112 
115 
118 };
119 
127  GstBaseTransformClass parent_class;
128 };
129 
130 GType gst_nvinfer_server_get_type(void);
131 
132 G_END_DECLS
133 
134 #endif /* __GST_INFER_H__ */
gstnvinferserver
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:45
GstNvInferServerProperty
GstNvInferServerProperty
List of GObject properties for the element.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:75
_GstNvInferServer::impl
gstnvinferserver::GstNvInferServerImpl * impl
Pointer to the GstNvInferServerImpl object for this instance.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:117
GstNvInferServer
typedefG_BEGIN_DECLS struct _GstNvInferServer GstNvInferServer
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:52
PROP_BATCH_SIZE
@ PROP_BATCH_SIZE
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:80
gst_nvinfer_server_get_type
GType gst_nvinfer_server_get_type(void)
_GstNvInferServer::output_generated_userdata
gpointer output_generated_userdata
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:108
gstnvinferserver::GstNvInferServerImpl
Class of the nvinferserver element implementation.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver_impl.h:147
PROP_UNIQUE_ID
@ PROP_UNIQUE_ID
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:77
PROP_OPERATE_ON_CLASS_IDS
@ PROP_OPERATE_ON_CLASS_IDS
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:82
_GstNvInferServer::output_generated_callback
gst_nvinfer_raw_output_generated_callback output_generated_callback
Pointer to the callback function and user data for application access to the bound buffer contents.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:107
PROP_0
@ PROP_0
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:76
_GstNvInferServer::base_trans
GstBaseTransform base_trans
Base class for GstNvInferServer.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:96
PROP_LAST
@ PROP_LAST
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:87
_GstNvInferServer
Opaque structure storing data of the nvinferserver element.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:93
PROP_OUTPUT_CALLBACK
@ PROP_OUTPUT_CALLBACK
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:84
PROP_CONFIG_FILE_PATH
@ PROP_CONFIG_FILE_PATH
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:79
PROP_INPUT_TENSOR_META
@ PROP_INPUT_TENSOR_META
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:86
PROP_OUTPUT_CALLBACK_USERDATA
@ PROP_OUTPUT_CALLBACK_USERDATA
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:85
_GstNvInferServer::last_flow_ret
GstFlowReturn last_flow_ret
GstFlowReturn returned by the latest buffer pad push.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:111
PROP_INTERVAL
@ PROP_INTERVAL
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:83
_GstNvInferServerClass
The class structure for the nvinferserver element.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:126
PROP_INFER_ON_GIE_ID
@ PROP_INFER_ON_GIE_ID
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:81
_GstNvInferServer::write_raw_buffers_to_file
gboolean write_raw_buffers_to_file
Boolean indicating if the bound buffer contents should be written to file.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:100
_GstNvInferServer::current_batch_num
guint64 current_batch_num
Current batch number of the input batch.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:114
_GstNvInferServer::file_write_batch_num
guint64 file_write_batch_num
Batch counter for writing buffer contents to file.
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:103
gst_nvinfer_raw_output_generated_callback
G_BEGIN_DECLS typedef void(* gst_nvinfer_raw_output_generated_callback)(GstBuffer *buf, NvDsInferNetworkInfo *network_info, NvDsInferLayerInfo *layers_info, guint num_layers, guint batch_size, gpointer user_data)
Function definition for the inference raw output generated callback of Gst-NvInfer plugin.
Definition: sources/includes/gstnvdsinfer.h:63
_GstNvInferServerClass::parent_class
GstBaseTransformClass parent_class
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:127
PROP_PROCESS_MODE
@ PROP_PROCESS_MODE
Definition: sources/gst-plugins/gst-nvinferserver/gstnvinferserver.h:78