NVIDIA DeepStream SDK API Reference
9.1 Release
9.1/sources/gst-plugins/gst-nvtracker/gstnvtracker.h
Go to the documentation of this file.
1
/*
2
* SPDX-FileCopyrightText: Copyright (c) 2016-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_NVTRACKER_H__
19
#define __GST_NVTRACKER_H__
20
21
#include <gst/gst.h>
22
#include <gst/video/video.h>
23
#include <gst/video/gstvideofilter.h>
24
#include <sys/time.h>
25
26
#include "gstnvdsmeta.h"
27
#include "
invtracker_proc.h
"
28
29
using namespace
std;
30
31
G_BEGIN_DECLS
32
33
/* #defines don't like whitespacey bits */
34
#define GST_TYPE_NVTRACKER \
35
(gst_nv_tracker_get_type())
36
#define GST_NVTRACKER(obj) \
37
(G_TYPE_CHECK_INSTANCE_CAST((obj),GST_TYPE_NVTRACKER,GstNvTracker))
38
#define GST_NVTRACKER_CLASS(klass) \
39
(G_TYPE_CHECK_CLASS_CAST((klass),GST_TYPE_NVTRACKER,GstNvTrackerClass))
40
#define GST_IS_NVTRACKER(obj) \
41
(G_TYPE_CHECK_INSTANCE_TYPE((obj),GST_TYPE_NVTRACKER))
42
#define GST_IS_NVTRACKER_CLASS(klass) \
43
(G_TYPE_CHECK_CLASS_TYPE((klass),GST_TYPE_NVTRACKER))
44
45
46
/* Version number of package */
47
#define VERSION "2.0.0"
48
#define PACKAGE_DESCRIPTION "Gstreamer plugin to track the objects"
49
/* Define under which licence the package has been released */
50
#define PACKAGE_LICENSE "Proprietary"
51
#define PACKAGE_NAME "GStreamer nvtracker Plugin"
52
/* Define to the home page for this package. */
53
#define PACKAGE_URL "http://nvidia.com/"
54
55
typedef
struct
_GstNvTracker
GstNvTracker
;
56
typedef
struct
_GstNvTrackerClass
GstNvTrackerClass
;
57
59
struct
_GstNvTracker
60
{
61
GstBaseTransform parent_instance;
62
63
GstPad *sinkpad, *srcpad;
64
66
gboolean running;
67
TrackerConfig
trackerConfig;
68
INvTrackerProc
*trackerIface;
69
70
GCond eventCondition;
71
GMutex eventLock;
72
73
GThread *output_loop;
74
};
75
76
struct
_GstNvTrackerClass
77
{
78
GstBaseTransformClass parent_class;
79
};
80
81
GType
gst_nv_tracker_get_type
(
void
);
82
83
G_END_DECLS
84
85
#endif
/* __GST_NVTRACKER_H__ */
_GstNvTrackerClass
Definition:
sources/gst-plugins/gst-nvtracker/gstnvtracker.h:76
gst_nv_tracker_get_type
GType gst_nv_tracker_get_type(void)
invtracker_proc.h
_GstNvTracker
Basic GStreamer class for tracker.
Definition:
sources/gst-plugins/gst-nvtracker/gstnvtracker.h:59
INvTrackerProc
Virtual base class for tracker plugin processing.
Definition:
sources/gst-plugins/gst-nvtracker/invtracker_proc.h:116
TrackerConfig
Tracker plugin config params.
Definition:
sources/gst-plugins/gst-nvtracker/invtracker_proc.h:57
Privacy Policy
|
Manage My Privacy
|
Do Not Sell or Share My Data
|
Terms of Service
|
Accessibility
|
Corporate Policies
|
Product Security
|
Contact
© 2026 NVIDIA CORPORATION & AFFILIATES. All rights reserved.
NVIDIA Confidential | Subject to Change | For test and development only.
Thu Jul 9 2026 11:48:19 | PR-09318-R32