18 #ifndef DEEPSTREAM_DS3D_SENSOR_FUSION_HPP
19 #define DEEPSTREAM_DS3D_SENSOR_FUSION_HPP
24 #include <ds3d/common/hpp/dataloader.hpp>
25 #include <ds3d/common/hpp/datamap.hpp>
26 #include <ds3d/common/hpp/frame.hpp>
27 #include <ds3d/common/hpp/yaml_config.hpp>
28 #include <ds3d/common/hpp/profiling.hpp>
31 #include <ds3d/gst/nvds3d_gst_plugin.h>
32 #include <ds3d/gst/nvds3d_gst_ptr.h>
33 #include <ds3d/gst/nvds3d_meta.h>
34 #include <ds3d/gst/nvds3d_pipeline_context.h>
36 #include "gstnvdsmeta.h"
41 #define CHECK_ERROR(statement, fmt, ...) DS3D_FAILED_RETURN(statement, -1, fmt, ##__VA_ARGS__)
44 #define RETURN_ERROR(statement, fmt, ...) DS3D_ERROR_RETURN(statement, fmt, ##__VA_ARGS__)
51 bool isGstPlugin()
const;
61 bool enableDebug =
false;
62 bool eosAutoStop =
true;
63 bool probeBuffer =
false;
73 this->config = compConf;
74 YAML::Node node = YAML::Load(compConf.
rawContent);
75 auto debugNode = node[
"enable_debug"];
76 auto eosNode = node[
"eos_auto_stop"];
77 auto probeNode = node[
"probe_buffer"];
79 enableDebug = debugNode.as<
bool>();
83 eosAutoStop = eosNode.as<
bool>();
86 probeBuffer = probeNode.as<
bool>();
101 ErrCode setup(
const std::string& configPath, std::function<
void()> windowClosed);
103 void deinit()
override;
108 ErrCode init(
const std::string& name)
override;
120 std::string _configPath;
121 std::map<std::string, Ptr<Component>> _components;
122 std::function<void()> _windowClosedCb;