// // Copyright © 2017 Arm Ltd. All rights reserved. // SPDX-License-Identifier: MIT // #pragma once #include "LayerWithParameters.hpp" namespace armnn { class ScopedCpuTensorHandle; class BatchNormalizationLayer : public LayerWithParameters { public: std::unique_ptr m_Mean; std::unique_ptr m_Variance; std::unique_ptr m_Beta; std::unique_ptr m_Gamma; virtual std::unique_ptr CreateWorkload(const Graph& graph, const IWorkloadFactory& factory) const override; BatchNormalizationLayer* Clone(Graph& graph) const override; void ValidateTensorShapesFromInputs() override; protected: BatchNormalizationLayer(const BatchNormalizationDescriptor& param, const char* name); ~BatchNormalizationLayer() = default; ConstantTensors GetConstantTensorsByRef() override; }; } // namespace