NVIDIA DeepStream SDK API Reference

9.2 Release
sources/libs/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/context.hpp
Go to the documentation of this file.
1 /*
2  * SPDX-FileCopyrightText: Copyright (c) 2021-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 #ifndef _NvMOTCONTEXT_H
18 #define _NvMOTCONTEXT_H
19 
20 #include "modules/NvMultiObjectTracker/localizer.hpp"
21 
24 {
25 public:
31  NvMOTContext(const NvMOTConfig &configIn, NvMOTConfigResponse& configResponse);
32 
34  ~NvMOTContext();
35 
40  NvMOTStatus queryParams(NvMOTQuery &paramsQuery);
41 
47  NvMOTStatus processFrame(const NvMOTProcessParams *params, NvMOTTrackedObjBatch *pTrackedObjectsBatch);
48 
54  NvMOTStatus retrieveMiscData(const NvMOTProcessParams *params, NvMOTTrackerMiscData *pTrackerMiscData);
55 
60  NvMOTStatus removeStream(const NvMOTStreamId streamIdMask);
61 
66  NvMOTStatus updateParams(const std::string &configStr);
67 
68 protected:
70  std::shared_ptr<IBatchLocalizer> m_pLocalizer;
71 };
72 
73 #endif // _NvMOTCONTEXT_H
NvMOTContext::retrieveMiscData
NvMOTStatus retrieveMiscData(const NvMOTProcessParams *params, NvMOTTrackerMiscData *pTrackerMiscData)
Output miscellaneous past-frame data when it is available.
NvMOTStatus
NvMOTStatus
Defines generic status codes for tracking operations.
Definition: includes/nvdstracker.h:200
NvMOTContext::removeStream
NvMOTStatus removeStream(const NvMOTStreamId streamIdMask)
Terminate trackers and release resources for a stream when the stream is removed.
_NvMOTTrackedObjBatch
Holds a batch of lists of tracked objects.
Definition: includes/nvdstracker.h:375
NvMOTContext::processFrame
NvMOTStatus processFrame(const NvMOTProcessParams *params, NvMOTTrackedObjBatch *pTrackedObjectsBatch)
Process a batch of frames.
NvMOTContext::~NvMOTContext
~NvMOTContext()
Release the batch localizer owned by the context.
_NvMOTConfigResponse
Holds a tracker's configuration status.
Definition: includes/nvdstracker.h:182
NvMOTContext::NvMOTContext
NvMOTContext(const NvMOTConfig &configIn, NvMOTConfigResponse &configResponse)
Initialize a tracking context from the negotiated configuration.
NvMOTStreamId
uint64_t NvMOTStreamId
Definition: includes/nvdstracker.h:53
NvMOTContext::queryParams
NvMOTStatus queryParams(NvMOTQuery &paramsQuery)
Output query parameters.
NvMOTContext
Context for input video streams.
Definition: sources/libs/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/context.hpp:23
_NvMOTProcessParams
Holds parameters for processing a batch.
Definition: includes/nvdstracker.h:408
_NvMOTQuery
Holds the capabilities and requirements reported by the tracker library.
Definition: includes/nvdstracker.h:420
NvMOTContext::updateParams
NvMOTStatus updateParams(const std::string &configStr)
Update the subset of tracker parameters that supports dynamic configuration.
NvMOTContext::m_pLocalizer
std::shared_ptr< IBatchLocalizer > m_pLocalizer
Batch localizer used by this context.
Definition: sources/libs/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/context.hpp:70
NvMOTContext::m_Config
NvMOTConfig m_Config
Tracker configuration retained by the context.
Definition: sources/libs/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/context.hpp:69
_NvMOTTrackerMiscData
Tracker misc data.
Definition: includes/nvdstracker.h:390
_NvMOTConfig
Holds a tracker configuration.
Definition: includes/nvdstracker.h:130