Go to the documentation of this file.
12 #include "spdlog/spdlog.h"
86 throw std::logic_error(
"OpenVINO - Unknown version enum specified");
91 for(
const auto& v : versions) {
96 throw std::logic_error(
"OpenVINO - Cannot parse version name: " + versionString);
100 std::pair<std::uint32_t, std::uint32_t> blobVersion;
101 blobVersion.first = majorVersion;
102 blobVersion.second = minorVersion;
111 std::pair<std::uint32_t, std::uint32_t> blobVersion;
112 blobVersion.first = majorVersion;
113 blobVersion.second = minorVersion;
133 bool v1Found =
false;
134 bool v2Found =
false;
138 if(el == v1) v1Found =
true;
139 if(el == v2) v2Found =
true;
142 if(v1Found && v2Found) {
145 }
else if(!v1Found && !v2Found) {
155 logger::error(
"OpenVINO - version compatibility check with invalid values or unknown blob version");
177 std::ifstream stream(path, std::ios::in | std::ios::binary);
178 if(!stream.is_open()) {
181 throw std::runtime_error(fmt::format(
"Cannot load blob, file at path {} doesn't exist.", path));
183 blobInit(*
this, std::vector<std::uint8_t>(std::istreambuf_iterator<char>(stream), {}));
Version version
OpenVINO version.
uint32_t getNumberOfSlices() const
uint32_t stageCount
Number of network stages.
Version
OpenVINO Version supported version information.
constexpr static const Version DEFAULT_VERSION
Main OpenVINO version.
void parse(const std::vector< std::uint8_t > &blob)
static Version getBlobVersion(std::uint32_t majorVersion, std::uint32_t minorVersion)
uint32_t getStageCount() const
constexpr auto data(C &c) -> decltype(c.data())
static bool areVersionsBlobCompatible(Version v1, Version v2)
std::vector< uint8_t > data
Blob data.
uint32_t getNumberOfShaves() const
uint32_t numShaves
Number of shaves the blob was compiled for.
uint32_t numSlices
Number of CMX slices the blob was compiled for.
static Version getBlobLatestSupportedVersion(std::uint32_t majorVersion, std::uint32_t minorVersion)
static const std::map< std::pair< std::uint32_t, std::uint32_t >, Version > blobVersionToOpenvinoGuessMapping
uint32_t getVersionMajor() const
const std::unordered_map< std::string, TensorInfo > & getNetworkOutputs() const
void error(const FormatString &fmt, Args &&...args)
std::unordered_map< std::string, TensorInfo > networkOutputs
Map of output names to additional information.
static std::vector< Version > getVersions()
static std::string getVersionName(Version version)
static std::vector< Version > getBlobSupportedVersions(std::uint32_t majorVersion, std::uint32_t minorVersion)
uint32_t getVersionMinor() const
static void blobInit(OpenVINO::Blob &blob, std::vector< uint8_t > data)
Blob(std::vector< uint8_t > data)
Construct a new Blob from data in memory.
const std::unordered_map< std::string, TensorInfo > & getNetworkInputs() const
Represents paths on a filesystem; accepts utf-8, Windows utf-16 wchar_t, or std::filesystem::path.
static const std::map< std::pair< std::uint32_t, std::uint32_t >, std::vector< Version > > blobVersionToOpenvinoMapping
std::unordered_map< std::string, TensorInfo > networkInputs
Map of input names to additional information.
static Version parseVersionName(const std::string &versionString)
depthai
Author(s): Martin Peterlin
autogenerated on Sat Mar 22 2025 02:58:19