1 from libc.stddef cimport size_t
2 from libcpp.string cimport string
3 from libcpp.vector cimport vector
4 from libcpp.map cimport map
5 from libcpp.set cimport set
6 from libcpp.pair cimport pair
7 from libcpp.memory cimport unique_ptr, shared_ptr
8 from libc.stdint cimport int64_t
12 cdef extern from "<inference_engine.hpp>" namespace "InferenceEngine":
13 ctypedef vector[size_t] SizeVector
15 cdef cppclass TensorDesc:
17 const Precision& getPrecision() const
20 ctypedef shared_ptr[Blob] Ptr
21 const TensorDesc& getTensorDesc() const
22 size_t element_size() const
24 cdef cppclass Precision:
25 const char*name() const
28 cdef extern from "ie_api_impl.hpp" namespace "InferenceEnginePython":
29 cdef cppclass IENetLayer:
36 vector[string] children
37 vector[string] parents
38 map[string, string] params
39 void setAffinity(const string & target_affinity) except +
40 void setParams(const map[string, string] & params_map) except +
41 map[string, Blob.Ptr] getWeights() except +
42 void setPrecision(string precision) except +
44 cdef cppclass InputInfo:
48 void setPrecision(string precision) except +
49 void setLayout(string layout) except +
51 cdef cppclass OutputInfo:
55 void setPrecision(string precision) except +
57 cdef cppclass ProfileInfo:
63 unsigned int execution_index
65 cdef cppclass WeightsInfo:
68 map[string, Blob.Ptr] custom_blobs;
70 cdef cppclass IEExecNetwork:
71 vector[InferRequestWrap] infer_requests
73 cdef cppclass IENetwork:
75 IENetwork(const string &, const string &) except +
78 map[string, vector[size_t]] inputs
79 const vector[pair[string, IENetLayer]] getLayers() except +
80 map[string, InputInfo] getInputs() except +
81 map[string, OutputInfo] getOutputs() except +
82 void addOutputs(vector[string] &, string &) except +
83 void setAffinity(map[string, string] & types_affinity_map, map[string, string] & layers_affinity_map) except +
84 void setBatch(size_t size) except +
85 void setLayerParams(map[string, map[string, string]] params_map) except +
86 void serialize(const string& path_to_xml, const string& path_to_bin) except +
87 void reshape(map[string, vector[size_t]] input_shapes) except +
88 void setStats(map[string, map[string, vector[float]]] & stats) except +
89 map[string, map[string, vector[float]]] getStats() except +
91 cdef cppclass IEPlugin:
93 IEPlugin(const string &, const vector[string] &) except +
94 unique_ptr[IEExecNetwork] load(IENetwork & net, int num_requests, const map[string, string]& config) except +
95 void addCpuExtension(const string &) except +
96 void setConfig(const map[string, string] &) except +
97 void setInitialAffinity(IENetwork & net) except +
98 set[string] queryNetwork(const IENetwork & net) except +
102 cdef cppclass InferRequestWrap:
104 void getBlobPtr(const string &blob_name, Blob.Ptr &blob_ptr) except +
105 map[string, ProfileInfo] getPerformanceCounts() except +
106 void infer() except +
107 void infer_async() except +
108 int wait(int64_t timeout) except +
109 void setBatch(int size) except +
111 cdef T*get_buffer[T](Blob &)
113 cdef string get_version()