ArmNN
 25.11
Loading...
Searching...
No Matches
IDeserializer.hpp
Go to the documentation of this file.
1//
2// Copyright © 2017 Arm Ltd. All rights reserved.
3// SPDX-License-Identifier: MIT
4//
5#pragma once
6
7#include "armnn/Types.hpp"
9#include "armnn/Tensor.hpp"
10#include "armnn/INetwork.hpp"
11
12#include <memory>
13#include <map>
14#include <vector>
15
17{
23
24class IDeserializer;
25using IDeserializerPtr = std::unique_ptr<IDeserializer, void(*)(IDeserializer* parser)>;
26
27class IDeserializer
28{
29public:
30 static IDeserializer* CreateRaw();
31 static IDeserializerPtr Create();
32 static void Destroy(IDeserializer* parser);
33
34 /// Create an input network from binary file contents
35 armnn::INetworkPtr CreateNetworkFromBinary(const std::vector<uint8_t>& binaryContent);
36
37 /// Create an input network from a binary input stream
38 armnn::INetworkPtr CreateNetworkFromBinary(std::istream& binaryContent);
39
40 /// Retrieve binding info (layer id and tensor info) for the network input identified by
41 /// the given layer name and layers id
42 BindingPointInfo GetNetworkInputBindingInfo(unsigned int layerId, const std::string& name) const;
43
44 /// Retrieve binding info (layer id and tensor info) for the network output identified by
45 /// the given layer name and layers id
46 BindingPointInfo GetNetworkOutputBindingInfo(unsigned int layerId, const std::string& name) const;
47
48private:
49 IDeserializer();
50 ~IDeserializer();
51
52 class DeserializerImpl;
53 std::unique_ptr<DeserializerImpl> pDeserializerImpl;
54};
55} //namespace armnnDeserializer
BindingPointInfo GetNetworkOutputBindingInfo(unsigned int layerId, const std::string &name) const
Retrieve binding info (layer id and tensor info) for the network output identified by the given layer...
BindingPointInfo GetNetworkInputBindingInfo(unsigned int layerId, const std::string &name) const
Retrieve binding info (layer id and tensor info) for the network input identified by the given layer ...
static IDeserializer * CreateRaw()
armnn::INetworkPtr CreateNetworkFromBinary(const std::vector< uint8_t > &binaryContent)
Create an input network from binary file contents.
static IDeserializerPtr Create()
static void Destroy(IDeserializer *parser)
std::unique_ptr< IDeserializer, void(*)(IDeserializer *parser)> IDeserializerPtr
int LayerBindingId
Type of identifiers for bindable layers (inputs, outputs).
Definition Types.hpp:311
std::unique_ptr< INetwork, void(*)(INetwork *network)> INetworkPtr
Definition INetwork.hpp:339