// Copyright (c) OpenMMLab. All rights reserved. #ifndef MMDEPLOY_SRC_NET_OPENVINO_OPENVINO_NET_H_ #define MMDEPLOY_SRC_NET_OPENVINO_OPENVINO_NET_H_ #include "core/net.h" #include "inference_engine.hpp" namespace mmdeploy { class OpenVINONet : public Net { public: ~OpenVINONet() override = default; Result Init(const Value& cfg) override; Result Deinit() override; Result> GetInputTensors() override; Result> GetOutputTensors() override; Result Reshape(Span input_shapes) override; Result Forward() override; Result ForwardAsync(Event* event) override; private: InferenceEngine::Core core_; InferenceEngine::CNNNetwork network_; InferenceEngine::InferRequest request_; std::map net_config_; std::vector input_tensors_; std::vector output_tensors_; std::string device_str_; Device device_; Stream stream_; }; } // namespace mmdeploy #endif // MMDEPLOY_SRC_NET_OPENVINO_OPENVINO_NET_H_