NVIDIA DeepStream SDK API Reference

7.0 Release
nv_spot_csvparser.hpp
Go to the documentation of this file.
1 
18 #ifndef _NV_SPOT_CSVPARSER_HPP_
19 #define _NV_SPOT_CSVPARSER_HPP_
20 
21 #include <iostream>
22 #include <fstream>
23 #include <map>
24 #include <vector>
25 #include <string>
26 
27 using namespace std;
28 
29 namespace nvspot_csv {
32 typedef struct _NvSpotCsvFields
33 {
34  uint32_t cameraId;
35  uint32_t rowId;
36  string cameraIdString;
37  uint32_t surfaceid;
38  uint32_t spot_index;
39  string level;
40  string spotId;
42  double dewarpTopAngle, dewarpBottomAngle, dewarpPitch, dewarpYaw, dewarpRoll;
43  uint32_t vertical_left;
44  uint32_t vertical_right;
46  uint32_t Horizon_x1, Horizon_y1, Horizon_x2, Horizon_y2;
48  uint32_t spot_roi_x1, spot_roi_y1, spot_roi_x2, spot_roi_y2;
49 
51  float x0, y0, x1, y1, x2, y2, x3, y3;
52  float lng0, lat0, lng1, lat1, lng2, lat2, lng3, lat3;
53 
54  string sensorId;
57  uint32_t dewarpWidth;
58  uint32_t dewarpHeight;
59  uint32_t num_views;
61 
63 typedef std::map<std::pair<uint32_t, uint32_t>, NvSpotCsvFields> _SpotIndex_Map;
64 typedef std::map<uint32_t, _SpotIndex_Map> _SpotCSVMap;
65 
67 typedef std::map<string, uint32_t> _SpotCameraMap;
68 
70 typedef std::map<uint32_t, uint32_t> _SpotCameraViews;
71 
72 typedef std::pair<_SpotIndex_Map::iterator, bool> _SpotIndexMap_Result;
73 typedef std::pair<_SpotCSVMap::iterator, bool> _SpotCSVMap_Result;
74 typedef std::pair<_SpotCameraMap::iterator, bool> _SpotCameraMap_Result;
75 typedef std::pair<_SpotCameraViews::iterator, bool> _SpotCameraView_Result;
76 
81 {
82  private:
83  _SpotCSVMap CSVMap;
84  _SpotCameraViews CameraViews;
85 
86  string csvFileName;
87 
88  void LoadCSVData();
89  void DestroyCSVParser();
90  uint32_t prepareSpotCSVMaxViews (uint32_t cam_id, vector<int>* vector_surface_index);
91 
92  public:
93  ~SpotCSVParser();
94 
98  int getNvSpotCSVFields (uint32_t cam_id, uint32_t surface_id, uint32_t spot_id, NvSpotCsvFields *fields);
101  uint32_t getNvSpotCSVMaxViews (uint32_t cam_id, vector<int>* array_surface_index);
103  void getNvSpotCSVData(std::vector<NvSpotCsvFields> &csvSpotData);
105  void printNvSpotCSVData(void);
107  void printNvSpotCSVData(uint32_t cam_id, uint32_t surface_id, uint32_t spot_id);
109  void printSpotCSVFields(NvSpotCsvFields val);
110 
111  SpotCSVParser(string CSVFileName);
112 };
113 
114 }
115 
116 #endif
nvspot_csv::_SpotCSVMap_Result
std::pair< _SpotCSVMap::iterator, bool > _SpotCSVMap_Result
Definition: nv_spot_csvparser.hpp:73
nvspot_csv::_SpotCameraMap
std::map< string, uint32_t > _SpotCameraMap
std::map<camera-ipaddress, camera-id>
Definition: nv_spot_csvparser.hpp:67
nvspot_csv::_NvSpotCsvFields::rowId
uint32_t rowId
Row entry number in the CSV file.
Definition: nv_spot_csvparser.hpp:35
nvspot_csv::NvSpotCsvFields
struct nvspot_csv::_NvSpotCsvFields NvSpotCsvFields
Data structure contaning all the parameters specified in one row of a Spot CSV file.
nvspot_csv::_NvSpotCsvFields::dewarpFocalLength
float dewarpFocalLength
Focal Lenght of camera lens, in pixels per radian.
Definition: nv_spot_csvparser.hpp:56
nvspot_csv::_SpotCSVMap
std::map< uint32_t, _SpotIndex_Map > _SpotCSVMap
Definition: nv_spot_csvparser.hpp:64
nvspot_csv::_SpotCameraMap_Result
std::pair< _SpotCameraMap::iterator, bool > _SpotCameraMap_Result
Definition: nv_spot_csvparser.hpp:74
nvspot_csv::_NvSpotCsvFields::sensorId
string sensorId
Sensor ID String.
Definition: nv_spot_csvparser.hpp:54
nvspot_csv::_NvSpotCsvFields::dewarpWidth
uint32_t dewarpWidth
dewarped surface width
Definition: nv_spot_csvparser.hpp:57
nvspot_csv::_NvSpotCsvFields::y3
float y3
Definition: nv_spot_csvparser.hpp:51
nvspot_csv::_NvSpotCsvFields::surfaceid
uint32_t surfaceid
Definition: nv_spot_csvparser.hpp:37
nvspot_csv::_NvSpotCsvFields::spot_roi_y2
uint32_t spot_roi_y2
Definition: nv_spot_csvparser.hpp:48
nvspot_csv::_NvSpotCsvFields::cameraIdString
string cameraIdString
Camera ID String.
Definition: nv_spot_csvparser.hpp:36
nvspot_csv::_NvSpotCsvFields::spotId
string spotId
Unique Spot ID.
Definition: nv_spot_csvparser.hpp:40
nvspot_csv::_NvSpotCsvFields::num_views
uint32_t num_views
Definition: nv_spot_csvparser.hpp:59
nvspot_csv::_SpotIndex_Map
std::map< std::pair< uint32_t, uint32_t >, NvSpotCsvFields > _SpotIndex_Map
std::map<std::pair<surface_id, spot_index>, NvSpotCsvFields>
Definition: nv_spot_csvparser.hpp:63
nvspot_csv::_NvSpotCsvFields::dewarpYaw
double dewarpYaw
Definition: nv_spot_csvparser.hpp:42
nvspot_csv::_NvSpotCsvFields::dewarpHeight
uint32_t dewarpHeight
dewarped surface height
Definition: nv_spot_csvparser.hpp:58
nvspot_csv::_NvSpotCsvFields::lng3
float lng3
Definition: nv_spot_csvparser.hpp:52
nvspot_csv::SpotCSVParser
Class for parsing of Spot CSV data.
Definition: nv_spot_csvparser.hpp:80
nvspot_csv::_SpotIndexMap_Result
std::pair< _SpotIndex_Map::iterator, bool > _SpotIndexMap_Result
Definition: nv_spot_csvparser.hpp:72
nvspot_csv::_NvSpotCsvFields::cameraId
uint32_t cameraId
Serial number for each Spot View Camera Entry.
Definition: nv_spot_csvparser.hpp:34
nvspot_csv::_SpotCameraViews
std::map< uint32_t, uint32_t > _SpotCameraViews
std::map<camera-id, num_spot_views>
Definition: nv_spot_csvparser.hpp:70
nvspot_csv::_NvSpotCsvFields::spot_index
uint32_t spot_index
Surface Index 0,1 corrosponding to Spot View.
Definition: nv_spot_csvparser.hpp:38
nvspot_csv
Definition: nv_spot_csvparser.hpp:29
nvspot_csv::_NvSpotCsvFields::level
string level
Definition: nv_spot_csvparser.hpp:39
nvspot_csv::_NvSpotCsvFields::Horizon_y2
uint32_t Horizon_y2
Definition: nv_spot_csvparser.hpp:46
nvspot_csv::_SpotCameraView_Result
std::pair< _SpotCameraViews::iterator, bool > _SpotCameraView_Result
Definition: nv_spot_csvparser.hpp:75
nvspot_csv::_NvSpotCsvFields::vertical_right
uint32_t vertical_right
Definition: nv_spot_csvparser.hpp:44
nvspot_csv::_NvSpotCsvFields
Data structure contaning all the parameters specified in one row of a Spot CSV file.
Definition: nv_spot_csvparser.hpp:32
nvspot_csv::_NvSpotCsvFields::vertical_left
uint32_t vertical_left
Definition: nv_spot_csvparser.hpp:43