9 #include <ie_preprocess_data.hpp>
19 class IExecutableNetworkInternal;
20 class IVariableStateInternal;
28 class INFERENCE_ENGINE_API_CLASS(IInferRequestInternal) :
public std::enable_shared_from_this<IInferRequestInternal> {
33 using Ptr = std::shared_ptr<IInferRequestInternal>;
114 virtual std::vector<std::shared_ptr<IVariableStateInternal>>
QueryState();
147 using Callback = std::function<void(std::exception_ptr)>;
181 INFERENCE_ENGINE_DEPRECATED(
"The method will be removed")
182 void* GetUserData() noexcept;
188 INFERENCE_ENGINE_DEPRECATED("The method will be removed")
189 void SetUserData(
void* userData) noexcept;
224 void addInputPreProcessingFor(const
std::
string& name,
Blob::
Ptr const& from, const
Blob::
Ptr& to);
231 std::map<
std::
string, PreProcessDataPtr> _preProcData;
242 void* _userData =
nullptr;
std::shared_ptr< Blob > Ptr
An internal API of executable network to be implemented by plugin,.
Definition: ie_iexecutable_network_internal.hpp:30
An internal API of synchronous inference request to be implemented by plugin, which is used in InferR...
Definition: ie_iinfer_request_internal.hpp:28
virtual const PreProcessInfo & GetPreProcess(const std::string &name) const
Gets pre-process for input data.
virtual void InferImpl()
The minimal infer function to be implemented by plugins. It infers specified input(s) in synchronous ...
void checkBlob(const Blob::Ptr &blob, const std::string &name, bool isInput, const SizeVector &refDims={}) const
Check that blob is valid. Throws an exception if it's not.
virtual void checkBlobs()
Check that all of the blobs is valid. Throws an exception if it's not.
virtual void Cancel()
Cancel current inference request execution.
virtual std::map< std::string, InferenceEngineProfileInfo > GetPerformanceCounts() const
Queries performance measures per layer to get feedback of what is the most time consuming layer....
virtual StatusCode Wait(int64_t millis_timeout)
Waits for the result to become available. Blocks until specified millis_timeout has elapsed or the re...
std::shared_ptr< IInferRequestInternal > Ptr
A shared pointer to a IInferRequestInternal interface.
Definition: ie_iinfer_request_internal.hpp:33
virtual void SetBatch(int batch)
Sets new batch size when dynamic batching is enabled in executable network that created this request.
virtual void StartAsyncImpl()
The minimal asynchronous inference function to be implemented by plugins. It starts inference of spec...
std::function< void(std::exception_ptr)> Callback
Alias for callback type.
Definition: ie_iinfer_request_internal.hpp:147
virtual void SetBlob(const std::string &name, const Blob::Ptr &data, const PreProcessInfo &info)
Sets pre-process for input data.
virtual void StartAsync()
Start inference of specified input(s) in asynchronous mode.
void setPointerToExecutableNetworkInternal(const std::shared_ptr< IExecutableNetworkInternal > &exeNetwork)
Sets the pointer to executable network internal.
virtual void SetBlob(const std::string &name, const Blob::Ptr &data)
Set input/output data to infer.
virtual Blob::Ptr GetBlob(const std::string &name)
Get input/output data to infer.
virtual void SetCallback(Callback callback)
Set callback function which will be called on success or failure of asynchronous request.
virtual std::vector< std::shared_ptr< IVariableStateInternal > > QueryState()
Queries memory states.
IInferRequestInternal(const InputsDataMap &networkInputs, const OutputsDataMap &networkOutputs)
Constructs a new instance.
virtual void Infer()
Infers specified input(s) in synchronous mode.
Inference Engine Plugin API namespace.
std::map< std::string, InputInfo::Ptr > InputsDataMap
std::map< std::string, DataPtr > OutputsDataMap
std::shared_ptr< Data > DataPtr
std::vector< size_t > SizeVector
details::SOPointer< IInferRequestInternal > SoIInferRequestInternal
SOPointer to IInferRequestInternal.
Definition: ie_iinfer_request_internal.hpp:248
std::map< std::string, Blob::Ptr > BlobMap
Serializes a std::vector to a std::ostream
Definition: debug.h:35