aboutsummaryrefslogtreecommitdiff
path: root/include/armnnOnnxParser/IOnnxParser.hpp
diff options
context:
space:
mode:
authorKevin May <kevin.may@arm.com>2021-01-29 14:24:57 +0000
committerKevin May <kevin.may@arm.com>2021-02-04 11:31:51 +0000
commitef33cb192eef332fb3a26be742b341288421e5bc (patch)
tree1497367ada6382887baf698b3b8a791abca05d9d /include/armnnOnnxParser/IOnnxParser.hpp
parent7d96b16acfdbdcef6739d59ba067a37c062aa03f (diff)
downloadarmnn-ef33cb192eef332fb3a26be742b341288421e5bc.tar.gz
IVGCVSW-5592 Implement Pimpl Idiom for Caffe and Onnx Parsers
Signed-off-by: Kevin May <kevin.may@arm.com> Change-Id: I760dc4f33c0f87113cda2fa924da70f2e8c19025
Diffstat (limited to 'include/armnnOnnxParser/IOnnxParser.hpp')
-rw-r--r--include/armnnOnnxParser/IOnnxParser.hpp18
1 files changed, 11 insertions, 7 deletions
diff --git a/include/armnnOnnxParser/IOnnxParser.hpp b/include/armnnOnnxParser/IOnnxParser.hpp
index d6b9399dd5..f9d692738d 100644
--- a/include/armnnOnnxParser/IOnnxParser.hpp
+++ b/include/armnnOnnxParser/IOnnxParser.hpp
@@ -16,6 +16,7 @@ namespace armnnOnnxParser
using BindingPointInfo = armnn::BindingPointInfo;
+class OnnxParserImpl;
class IOnnxParser;
using IOnnxParserPtr = std::unique_ptr<IOnnxParser, void(*)(IOnnxParser* parser)>;
@@ -27,22 +28,25 @@ public:
static void Destroy(IOnnxParser* parser);
/// Create the network from a protobuf binary file on disk
- virtual armnn::INetworkPtr CreateNetworkFromBinaryFile(const char* graphFile) = 0;
+ armnn::INetworkPtr CreateNetworkFromBinaryFile(const char* graphFile);
/// Create the network from a protobuf text file on disk
- virtual armnn::INetworkPtr CreateNetworkFromTextFile(const char* graphFile) = 0;
+ armnn::INetworkPtr CreateNetworkFromTextFile(const char* graphFile);
/// Create the network directly from protobuf text in a string. Useful for debugging/testing
- virtual armnn::INetworkPtr CreateNetworkFromString(const std::string& protoText) = 0;
+ armnn::INetworkPtr CreateNetworkFromString(const std::string& protoText);
/// Retrieve binding info (layer id and tensor info) for the network input identified by the given layer name
- virtual BindingPointInfo GetNetworkInputBindingInfo(const std::string& name) const = 0;
+ BindingPointInfo GetNetworkInputBindingInfo(const std::string& name) const;
/// Retrieve binding info (layer id and tensor info) for the network output identified by the given layer name
- virtual BindingPointInfo GetNetworkOutputBindingInfo(const std::string& name) const = 0;
+ BindingPointInfo GetNetworkOutputBindingInfo(const std::string& name) const;
- protected:
- virtual ~IOnnxParser() {};
+private:
+ IOnnxParser();
+ ~IOnnxParser();
+
+ std::unique_ptr<OnnxParserImpl> pOnnxParserImpl;
};
}