8 #include <nx/sdk/helpers/ref_countable.h> 9 #include <nx/sdk/helpers/log_utils.h> 11 #include <nx/sdk/analytics/i_engine.h> 12 #include <nx/sdk/analytics/i_consuming_device_agent.h> 13 #include <nx/sdk/analytics/i_metadata_packet.h> 14 #include <nx/sdk/analytics/i_metadata_types.h> 15 #include <nx/sdk/analytics/i_compressed_video_packet.h> 16 #include <nx/sdk/analytics/i_uncompressed_video_frame.h> 48 const std::string& printPrefix =
"");
50 virtual std::string manifest()
const = 0;
96 void pushPluginEvent(IPluginEvent::Level level, std::string caption, std::string description);
113 virtual Error setNeededMetadataTypes(
const IMetadataTypes* metadataTypes)
override = 0;
122 template<
typename DerivedEngine>
125 const auto engine =
dynamic_cast<DerivedEngine*
>(m_engine);
126 assertEngineCasted(engine);
130 virtual IEngine* engine()
const override {
return m_engine; }
136 virtual Error setHandler(IDeviceAgent::IHandler* handler)
override;
137 virtual Error pushDataPacket(IDataPacket* dataPacket)
override;
138 virtual const IString* manifest(Error* error)
const override;
143 void assertEngineCasted(
void* engine)
const;
144 void processMetadataPackets(
const std::vector<IMetadataPacket*>& metadataPackets);
147 mutable std::mutex m_mutex;
148 IEngine*
const m_engine;
149 IDeviceAgent::IHandler* m_handler =
nullptr;
150 std::map<std::string, std::string> m_settings;
void pushMetadataPacket(IMetadataPacket *metadataPacket)
Definition: video_frame_processing_device_agent.cpp:192
Definition: i_string_map.h:8
virtual bool pullMetadataPackets(std::vector< IMetadataPacket *> *)
Definition: video_frame_processing_device_agent.h:81
virtual bool pushUncompressedVideoFrame(const IUncompressedVideoFrame *)
Definition: video_frame_processing_device_agent.h:70
VideoFrameProcessingDeviceAgent(IEngine *engine, bool enableOutput, const std::string &printPrefix="")
Definition: video_frame_processing_device_agent.cpp:44
Definition: i_compressed_video_packet.h:14
std::string getParamValue(const char *paramName)
Definition: video_frame_processing_device_agent.cpp:234
Definition: i_engine.h:30
Definition: log_utils.h:24
virtual void settingsReceived()
Definition: video_frame_processing_device_agent.h:102
Definition: video_frame_processing_device_agent.h:34
DerivedEngine * engineCasted() const
Definition: video_frame_processing_device_agent.h:123
virtual bool pushCompressedVideoFrame(const ICompressedVideoPacket *)
Definition: video_frame_processing_device_agent.h:59
Definition: i_uncompressed_video_frame.h:11
void pushPluginEvent(IPluginEvent::Level level, std::string caption, std::string description)
Definition: video_frame_processing_device_agent.cpp:215
Definition: ref_countable.h:79