NVIDIA DeepStream SDK API Reference

6.0 Release

 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
nvds_analytics_meta.h
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020, NVIDIA CORPORATION. All rights reserved.
3  *
4  * NVIDIA Corporation and its licensors retain all intellectual property
5  * and proprietary rights in and to this software, related documentation
6  * and any modifications thereto. Any use, reproduction, disclosure or
7  * distribution of this software and related documentation without an express
8  * license agreement from NVIDIA Corporation is strictly prohibited.
9  *
10  */
11 
26 #ifndef _NVDS_ANALYTICS_META_H_
27 #define _NVDS_ANALYTICS_META_H_
28 
29 #include <gst/gst.h>
30 #include <vector>
31 #include <unordered_map>
32 
33 #ifdef __cplusplus
34 extern "C"
35 {
36 #endif
37 
44 #define NVDS_USER_FRAME_META_NVDSANALYTICS (nvds_get_user_meta_type((gchar*)"NVIDIA.DSANALYTICSFRAME.USER_META"))
45 #define NVDS_USER_OBJ_META_NVDSANALYTICS (nvds_get_user_meta_type((gchar*)"NVIDIA.DSANALYTICSOBJ.USER_META"))
46 
50 typedef struct
51 {
53  std::vector <std::string> roiStatus;
55  std::vector <std::string> ocStatus;
57  std::vector <std::string> lcStatus;
59  std::string dirStatus;
61  guint unique_id;
63 
67 typedef struct
68 {
72  std::unordered_map<std::string, bool> ocStatus;
73 
77  std::unordered_map<std::string, uint32_t> objInROIcnt;
78 
82  std::unordered_map<std::string, uint64_t> objLCCurrCnt;
83 
87  std::unordered_map<std::string, uint64_t> objLCCumCnt;
88 
90  guint unique_id;
91 
95  std::unordered_map<int, uint32_t> objCnt;
97 
98 #ifdef __cplusplus
99 }
100 #endif
101 
102 #endif
std::unordered_map< std::string, uint64_t > objLCCumCnt
Holds a map of total cumulative count of Line crossing for configured lines, can be accessed using ke...
Holds a set of nvdsanalytics framelevel metadata.
guint unique_id
Holds unique identifier for nvdsanalytics instance.
std::string dirStatus
Holds the direction string for the tracked object.
std::vector< std::string > lcStatus
Holds the array of line crossing labels which object has crossed.
std::vector< std::string > roiStatus
Holds the array of ROI labels in which object is present.
std::vector< std::string > ocStatus
Holds the array of OverCrowding labels in which object is present.
guint unique_id
Holds unique identifier for nvdsanalytics instance.
std::unordered_map< std::string, uint64_t > objLCCurrCnt
Holds a map of total count of Line crossing in current frame for configured lines, which can be accessed using key, value pair; where key is the line crossing label.
std::unordered_map< std::string, bool > ocStatus
Holds a map of boolean status of overcrowding for configured ROIs, which can be accessed using key...
Holds a set of nvdsanalytics object level metadata.
std::unordered_map< std::string, uint32_t > objInROIcnt
Holds a map of total count of valid objects in ROI for configured ROIs, which can be accessed using k...
std::unordered_map< int, uint32_t > objCnt
Holds a map of total count of objects for each class ID, can be accessed using key, value pair; where key is class ID.