From bceff2fb3fc68bb0aa88b886900c34b77340c826 Mon Sep 17 00:00:00 2001 From: surmeh01 Date: Thu, 29 Mar 2018 16:29:27 +0100 Subject: Release 18.03 --- include/armnnTfParser/ITfParser.hpp | 60 +++++++++++++++++++++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 include/armnnTfParser/ITfParser.hpp (limited to 'include/armnnTfParser/ITfParser.hpp') diff --git a/include/armnnTfParser/ITfParser.hpp b/include/armnnTfParser/ITfParser.hpp new file mode 100644 index 0000000000..a6f56c8a19 --- /dev/null +++ b/include/armnnTfParser/ITfParser.hpp @@ -0,0 +1,60 @@ +// +// Copyright © 2017 Arm Ltd. All rights reserved. +// See LICENSE file in the project root for full license information. +// +#pragma once + +#include "armnn/Types.hpp" +#include "armnn/Tensor.hpp" +#include "armnn/INetwork.hpp" + +#include +#include +#include +#include + +namespace armnnTfParser +{ + +using BindingPointInfo = std::pair; + +class ITfParser; +using ITfParserPtr = std::unique_ptr; + +/// parses a directed acyclic graph from a tensorflow protobuf file +class ITfParser +{ +public: + static ITfParser* CreateRaw(); + static ITfParserPtr Create(); + static void Destroy(ITfParser* parser); + + /// Create the network from a protobuf text file on disk + virtual armnn::INetworkPtr CreateNetworkFromTextFile( + const char* graphFile, + const std::map& inputShapes, + const std::vector& requestedOutputs) = 0; + + /// Create the network from a protobuf binary file on disk + virtual armnn::INetworkPtr CreateNetworkFromBinaryFile( + const char* graphFile, + const std::map& inputShapes, + const std::vector& requestedOutputs) = 0; + + /// Create the network directly from protobuf text in a string. Useful for debugging/testing + virtual armnn::INetworkPtr CreateNetworkFromString( + const char* protoText, + const std::map& inputShapes, + const std::vector& requestedOutputs) = 0; + + /// 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; + + /// 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; + +protected: + virtual ~ITfParser() {}; +}; + +} -- cgit v1.2.1