ArmNN
 21.02
StaticRangeStrategy.hpp
Go to the documentation of this file.
1 //
2 // Copyright © 2021 Arm Ltd and Contributors. All rights reserved.
3 // SPDX-License-Identifier: MIT
4 //
5 
6 #pragma once
7 
9 #include "RangeTracker.hpp"
10 
11 #include <armnn/INetwork.hpp>
13 
14 
15 namespace armnn
16 {
17 
19 {
20 public:
21  StaticRangeStrategy(RangeTracker& rangeTracker);
22  ~StaticRangeStrategy() = default;
23 
24  void ExecuteStrategy(const armnn::IConnectableLayer *layer,
25  const BaseDescriptor &descriptor,
26  const std::vector<armnn::ConstTensor> &constants,
27  const char *name,
28  const armnn::LayerBindingId id) override;
29 
30 private:
31  /// Set the range for an output slot on a layer
32  void SetRange(const IConnectableLayer* layer, unsigned int outputIdx, float min, float max);
33 
34  void ForwardParentParameters(const IConnectableLayer* layer);
35 
36  /// Mapping from a layer Guid to an array of ranges for outputs
37  RangeTracker& m_RangeTracker;
38 
39 };
40 
41 } //namespace armnn
Interface for a layer that is connectable to other layers via InputSlots and OutputSlots.
Definition: INetwork.hpp:62
void ExecuteStrategy(const armnn::IConnectableLayer *layer, const BaseDescriptor &descriptor, const std::vector< armnn::ConstTensor > &constants, const char *name, const armnn::LayerBindingId id) override
StaticRangeStrategy(RangeTracker &rangeTracker)
Copyright (c) 2021 ARM Limited and Contributors.
int LayerBindingId
Type of identifiers for bindable layers (inputs, outputs).
Definition: Types.hpp:210
Base class for all descriptors.
Definition: Descriptors.hpp:22