diff options
author | Jan Eilers <jan.eilers@arm.com> | 2020-04-02 13:56:54 +0100 |
---|---|---|
committer | Jan Eilers <jan.eilers@arm.com> | 2020-04-10 10:11:11 +0100 |
commit | bb446e576e120512d5752a5d6dc1ddc636f563ba (patch) | |
tree | 147d0b5f2886af208199a24704afd845a4825bf8 /src/armnnTfParser/TfParser.cpp | |
parent | e5d0b93b152a26faf93538eb719d03e5b477d670 (diff) | |
download | armnn-bb446e576e120512d5752a5d6dc1ddc636f563ba.tar.gz |
IVGCVSW-4483 Remove boost::polymorphic_downcast
* exchange boost::polymorphic_downcast with armnn::PolymorphicDowncast
* remove unnecessary includes of boost::polymorphic_downcast
Signed-off-by: Jan Eilers <jan.eilers@arm.com>
Change-Id: Ie603fb82860fe05fee547dc78073230cc62b2e1f
Diffstat (limited to 'src/armnnTfParser/TfParser.cpp')
-rwxr-xr-x | src/armnnTfParser/TfParser.cpp | 47 |
1 files changed, 23 insertions, 24 deletions
diff --git a/src/armnnTfParser/TfParser.cpp b/src/armnnTfParser/TfParser.cpp index 491a9648cd..7a7c5a4375 100755 --- a/src/armnnTfParser/TfParser.cpp +++ b/src/armnnTfParser/TfParser.cpp @@ -12,6 +12,7 @@ #include <armnnUtils/DataLayoutIndexed.hpp> #include <armnnUtils/Transpose.hpp> #include <armnn/utility/IgnoreUnused.hpp> +#include <armnn/utility/PolymorphicDowncast.hpp> #include <GraphTopologicalSort.hpp> #include <ParserHelper.hpp> @@ -22,10 +23,8 @@ #include <tensorflow/core/framework/graph.pb.h> #include <boost/format.hpp> -#include <boost/format.hpp> #include <boost/numeric/conversion/cast.hpp> -#include <boost/polymorphic_cast.hpp> - +#include <armnn/utility/PolymorphicDowncast.hpp> #include <numeric> using namespace armnnUtils; @@ -1220,7 +1219,7 @@ ParsedTfOperationPtr TfParser::ParseConv2D(const tensorflow::NodeDef& nodeDef, % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<float>* weightNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); std::string paddingString = ReadMandatoryNodeStringAttribute(nodeDef, "padding"); std::string dataFormat = ReadMandatoryNodeStringAttribute(nodeDef, "data_format"); @@ -1364,7 +1363,7 @@ ParsedTfOperationPtr TfParser::ParseDepthwiseConv2D(const tensorflow::NodeDef& n } ParsedConstTfOperation<float>* weightNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); std::string paddingString = ReadMandatoryNodeStringAttribute(nodeDef, "padding"); std::string dataFormat = ReadMandatoryNodeStringAttribute(nodeDef, "data_format"); @@ -1578,7 +1577,7 @@ ParsedTfOperationPtr TfParser::ParseFusedBatchNorm(const tensorflow::NodeDef& no % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<float>* scaleNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[1].m_IndexedValue); if (!HasParsedConstTensor<float>(inputs[2].m_IndexedValue->GetNode().name())) { @@ -1592,7 +1591,7 @@ ParsedTfOperationPtr TfParser::ParseFusedBatchNorm(const tensorflow::NodeDef& no % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<float>* offsetNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[2].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[2].m_IndexedValue); if (!HasParsedConstTensor<float>(inputs[3].m_IndexedValue->GetNode().name())) { @@ -1606,7 +1605,7 @@ ParsedTfOperationPtr TfParser::ParseFusedBatchNorm(const tensorflow::NodeDef& no % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<float>* meanNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[3].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[3].m_IndexedValue); if (!HasParsedConstTensor<float>(inputs[4].m_IndexedValue->GetNode().name())) { @@ -1620,7 +1619,7 @@ ParsedTfOperationPtr TfParser::ParseFusedBatchNorm(const tensorflow::NodeDef& no % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<float>* varianceNode = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>(inputs[4].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<float> *>(inputs[4].m_IndexedValue); const std::string dataFormat = ReadOptionalNodeStringAttribute(nodeDef, "data_format", "NHWC"); CHECK_DATA_FORMAT(nodeDef, dataFormat, "FusedBatchNorm"); @@ -1689,7 +1688,7 @@ bool TfParser::IsSupportedLeakyReluPattern(const tensorflow::NodeDef& mulNodeDef if (HasParsedConstTensor<float>(inputs[alphaLayerIndex].m_IndexedValue->GetNode().name())) { ParsedConstTfOperation<float>* alpha = - boost::polymorphic_downcast<ParsedConstTfOperation<float> *>( + PolymorphicDowncast<ParsedConstTfOperation<float> *>( inputs[alphaLayerIndex].m_IndexedValue); std::vector<float> const_data; @@ -2079,7 +2078,7 @@ ParsedTfOperationPtr TfParser::ParseTranspose(const tensorflow::NodeDef& nodeDef const auto constInput = inputs[GetConstInputIndex(inputs)]; auto* permuteVectorInput = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(constInput.m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(constInput.m_IndexedValue); const auto& permuteVectorInfo = permuteVectorInput->GetTensorInfo(); std::vector<int32_t> permuteVectorData; @@ -2177,7 +2176,7 @@ ParsedTfOperationPtr TfParser::ParsePad(const tensorflow::NodeDef& nodeDef, } ParsedConstTfOperation<int32_t>* paddingTensorOp = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); std::vector<int32_t> paddingTensorData; ConstTensor paddingTensor = paddingTensorOp->GetConstTensor(paddingTensorData); @@ -2244,7 +2243,7 @@ ParsedTfOperationPtr TfParser::ParseConcat(const tensorflow::NodeDef& nodeDef, unsigned int index = GetConstInputIndex(inputs); // Get the axis tensor data ParsedConstTfOperation<int32_t>* shapeNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[index].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[index].m_IndexedValue); std::vector<int32_t> axisTensorData; shapeNode->GetConstTensor(axisTensorData); @@ -2377,7 +2376,7 @@ ParsedTfOperationPtr TfParser::ParseReshape(const tensorflow::NodeDef& nodeDef, % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<int32_t>* shapeNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); armnn::IOutputSlot& prevLayerOutputSlot = inputNode->ResolveArmnnOutputSlot(inputs[0].m_Index); TensorInfo inputTensorInfo = prevLayerOutputSlot.GetTensorInfo(); @@ -2415,7 +2414,7 @@ ParsedTfOperationPtr TfParser::ParseResizeBilinear(const tensorflow::NodeDef& no % CHECK_LOCATION().AsString())); } ParsedConstTfOperation<int32_t>* sizeNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); // Checks the align_corners attribute is not set. if (ReadOptionalNodeBoolAttribute(nodeDef, "align_corners", false)) @@ -2630,7 +2629,7 @@ ParsedTfOperationPtr TfParser::ParseMean(const tensorflow::NodeDef& nodeDef, con bool keepDims = ReadMandatoryNodeBoolAttribute(nodeDef, "keep_dims"); ParsedConstTfOperation<int32_t>* axisNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[1].m_IndexedValue); const TensorInfo& axisTensorInfo = axisNode->GetTensorInfo(); @@ -2810,7 +2809,7 @@ ParsedTfOperationPtr TfParser::ParseSplit(const tensorflow::NodeDef& nodeDef, unsigned int index = GetConstInputIndex(inputs); // Get the axis tensor data ParsedConstTfOperation<int32_t>* shapeNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t>*>(inputs[index].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t>*>(inputs[index].m_IndexedValue); std::vector<int32_t> axisTensorData; shapeNode->GetConstTensor(axisTensorData); @@ -2913,17 +2912,17 @@ ParsedTfOperationPtr TfParser::ParseStridedSlice(const tensorflow::NodeDef& node std::vector<OutputOfParsedTfOperation> inputs = GetInputParsedTfOperationsChecked(nodeDef, numInputs); ParsedConstTfOperation<int32_t>* beginNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t> *>(inputs[1].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t> *>(inputs[1].m_IndexedValue); std::vector<int32_t> beginTensorData; beginNode->GetConstTensor(beginTensorData); ParsedConstTfOperation<int32_t>* endNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t> *>(inputs[2].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t> *>(inputs[2].m_IndexedValue); std::vector<int32_t> endTensorData; endNode->GetConstTensor(endTensorData); ParsedConstTfOperation<int32_t>* stridesNode = - boost::polymorphic_downcast<ParsedConstTfOperation<int32_t> *>(inputs[3].m_IndexedValue); + PolymorphicDowncast<ParsedConstTfOperation<int32_t> *>(inputs[3].m_IndexedValue); std::vector<int32_t> stridesTensorData; stridesNode->GetConstTensor(stridesTensorData); @@ -3311,11 +3310,11 @@ IConnectableLayer* TfParser::AddFullyConnectedLayer(const tensorflow::NodeDef& m // Finds our inputs. if (HasParsedConstTensor<float>(addInputs[0].m_IndexedValue->GetNode().name())) { - biasNode = boost::polymorphic_downcast<ParsedConstTfOperation<float>*>(addInputs[0].m_IndexedValue); + biasNode = PolymorphicDowncast<ParsedConstTfOperation<float>*>(addInputs[0].m_IndexedValue); } else if (HasParsedConstTensor<float>(addInputs[1].m_IndexedValue->GetNode().name())) { - biasNode = boost::polymorphic_downcast<ParsedConstTfOperation<float>*>(addInputs[1].m_IndexedValue); + biasNode = PolymorphicDowncast<ParsedConstTfOperation<float>*>(addInputs[1].m_IndexedValue); } else { @@ -3339,13 +3338,13 @@ IConnectableLayer* TfParser::AddFullyConnectedLayer(const tensorflow::NodeDef& m std::vector<OutputOfParsedTfOperation> mulInputs = GetInputParsedTfOperationsChecked(matMulNodeDef, 2); if (HasParsedConstTensor<float>(mulInputs[0].m_IndexedValue->GetNode().name())) { - weightNode = boost::polymorphic_downcast<ParsedConstTfOperation<float>*>(mulInputs[0].m_IndexedValue); + weightNode = PolymorphicDowncast<ParsedConstTfOperation<float>*>(mulInputs[0].m_IndexedValue); inputNode = mulInputs[1].m_IndexedValue; inputIdx = mulInputs[1].m_Index; } else if (HasParsedConstTensor<float>(mulInputs[1].m_IndexedValue->GetNode().name())) { - weightNode = boost::polymorphic_downcast<ParsedConstTfOperation<float>*>(mulInputs[1].m_IndexedValue); + weightNode = PolymorphicDowncast<ParsedConstTfOperation<float>*>(mulInputs[1].m_IndexedValue); inputNode = mulInputs[0].m_IndexedValue; inputIdx = mulInputs[0].m_Index; } |