diff options
author | Kevin May <kevin.may@arm.com> | 2021-01-29 14:24:57 +0000 |
---|---|---|
committer | Kevin May <kevin.may@arm.com> | 2021-02-04 11:31:51 +0000 |
commit | ef33cb192eef332fb3a26be742b341288421e5bc (patch) | |
tree | 1497367ada6382887baf698b3b8a791abca05d9d /include/armnnOnnxParser/IOnnxParser.hpp | |
parent | 7d96b16acfdbdcef6739d59ba067a37c062aa03f (diff) | |
download | armnn-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.hpp | 18 |
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; }; } |