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> 49 const std::string& printPrefix =
"");
51 virtual std::string manifest()
const = 0;
97 void pushPluginEvent(IPluginEvent::Level level, std::string caption, std::string description);
114 virtual Error setNeededMetadataTypes(
const IMetadataTypes* metadataTypes)
override = 0;
123 template<
typename DerivedEngine>
126 const auto engine =
dynamic_cast<DerivedEngine*
>(m_engine);
127 assertEngineCasted(engine);
131 virtual IEngine* engine()
const override {
return m_engine; }
137 virtual Error setHandler(IDeviceAgent::IHandler* handler)
override;
138 virtual Error pushDataPacket(IDataPacket* dataPacket)
override;
139 virtual const IString* manifest(Error* error)
const override;
140 virtual void setSettings(
const IStringMap* settings)
override;
141 virtual IStringMap* pluginSideSettings()
const override;
144 void assertEngineCasted(
void* engine)
const;
145 void processMetadataPackets(
const std::vector<IMetadataPacket*>& metadataPackets);
146 void processMetadataPacket(IMetadataPacket* metadataPacket,
int packetIndex );
149 mutable std::mutex m_mutex;
150 IEngine*
const m_engine;
151 IDeviceAgent::IHandler* m_handler =
nullptr;
152 std::map<std::string, std::string> m_settings;
void pushMetadataPacket(IMetadataPacket *metadataPacket)
Definition: video_frame_processing_device_agent.cpp:221
Definition: i_string_map.h:8
virtual bool pullMetadataPackets(std::vector< IMetadataPacket *> *)
Definition: video_frame_processing_device_agent.h:82
VideoFrameProcessingDeviceAgent(IEngine *engine, const IDeviceInfo *deviceInfo, bool enableOutput, const std::string &printPrefix="")
Definition: video_frame_processing_device_agent.cpp:50
virtual bool pushUncompressedVideoFrame(const IUncompressedVideoFrame *)
Definition: video_frame_processing_device_agent.h:71
Definition: i_compressed_video_packet.h:14
std::string getParamValue(const char *paramName)
Definition: video_frame_processing_device_agent.cpp:248
Definition: i_engine.h:31
Definition: i_device_info.h:12
Definition: log_utils.h:24
virtual void settingsReceived()
Definition: video_frame_processing_device_agent.h:103
Definition: video_frame_processing_device_agent.h:34
DerivedEngine * engineCasted() const
Definition: video_frame_processing_device_agent.h:124
virtual bool pushCompressedVideoFrame(const ICompressedVideoPacket *)
Definition: video_frame_processing_device_agent.h:60
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:229
Definition: ref_countable.h:79