Compute Library
 19.08
Window Class Reference

Describe a multidimensional execution window. More...

#include <Window.h>

Data Structures

class  Dimension
 Describe one of the image's dimensions with a start, end and step. More...
 

Public Member Functions

constexpr Window ()
 Default constructor: create a window containing a single element. More...
 
 Window (const Window &src)
 Copy constructor. More...
 
Windowoperator= (const Window &rhs)
 Copy assignment operator. More...
 
constexpr const Dimensionoperator[] (size_t dimension) const
 Read only access to a given dimension of the window. More...
 
constexpr const Dimensionx () const
 Alias to access the first dimension of the window. More...
 
constexpr const Dimensiony () const
 Alias to access the second dimension of the window. More...
 
constexpr const Dimensionz () const
 Alias to access the third dimension of the window. More...
 
void set (size_t dimension, const Dimension &dim)
 Set the values of a given dimension. More...
 
void use_tensor_dimensions (const TensorShape &shape, size_t first_dimension=Window::DimX)
 Use the tensor's dimensions to fill the window dimensions. More...
 
void shift (size_t dimension, int shift_value)
 Shift the values of a given dimension by the given shift_value. More...
 
Window shift_dimensions (unsigned int shift_value) const
 Shift down all the dimensions of a window. More...
 
void adjust (size_t dimension, int adjust_value, bool is_at_start)
 Adjust the start or end of a given dimension by the given value. More...
 
void scale (size_t dimension, float scale_value)
 Scale the values of a given dimension by the given scale_value. More...
 
void set_dimension_step (size_t dimension, int step)
 Set the step of a given dimension. More...
 
void validate () const
 Will validate all the window's dimensions' values when asserts are enabled. More...
 
constexpr size_t num_iterations (size_t dimension) const
 Return the number of iterations needed to iterate through a given dimension. More...
 
size_t num_iterations_total () const
 Return the total number of iterations needed to iterate through the entire window. More...
 
TensorShape shape () const
 Return the shape of the window in number of steps. More...
 
Window split_window (size_t dimension, size_t id, size_t total) const
 Split a window into a set of sub windows along a given dimension. More...
 
Window first_slice_window_1D () const
 First 1D slice of the window. More...
 
Window first_slice_window_2D () const
 First 2D slice of the window. More...
 
Window first_slice_window_3D () const
 First 3D slice of the window. More...
 
Window first_slice_window_4D () const
 First 4D slice of the window. More...
 
bool slide_window_slice_1D (Window &slice) const
 Slide the passed 1D window slice. More...
 
bool slide_window_slice_2D (Window &slice) const
 Slide the passed 2D window slice. More...
 
bool slide_window_slice_3D (Window &slice) const
 Slide the passed 3D window slice. More...
 
bool slide_window_slice_4D (Window &slice) const
 Slide the passed 4D window slice. More...
 
Window collapse_if_possible (const Window &full_window, size_t first, size_t last, bool *has_collapsed=nullptr) const
 Collapse the dimensions between first and last if possible. More...
 
Window collapse_if_possible (const Window &full_window, size_t first, bool *has_collapsed=nullptr) const
 Collapse the dimensions higher than first if possible. More...
 
Window collapse (const Window &full_window, size_t first, size_t last=Coordinates::num_max_dimensions) const
 Collapse the dimensions between first and last. More...
 
Window broadcast_if_dimension_le_one (const TensorShape &shape) const
 Don't advance in the dimension where shape is less equal to 1. More...
 
Window broadcast_if_dimension_le_one (const ITensorInfo &info) const
 Don't advance in the dimension where shape of info is less equal to 1. More...
 

Static Public Attributes

static constexpr size_t DimX = 0
 Alias for dimension 0 also known as X dimension. More...
 
static constexpr size_t DimY = 1
 Alias for dimension 1 also known as Y dimension. More...
 
static constexpr size_t DimZ = 2
 Alias for dimension 2 also known as Z dimension. More...
 

Friends

void swap (Window &lhs, Window &rhs)
 Friend function that swaps the contents of two windows. More...
 

Detailed Description

Describe a multidimensional execution window.

Definition at line 39 of file Window.h.

Constructor & Destructor Documentation

◆ Window() [1/2]

constexpr Window ( )
inline

Default constructor: create a window containing a single element.

Definition at line 50 of file Window.h.

51  : _dims()
52  {
53  }

◆ Window() [2/2]

Window ( const Window src)
inline

Copy constructor.

Parameters
[in]srcCopy the values from src to a new object

Definition at line 26 of file Window.inl.

27  : _dims()
28 {
29  for(size_t i = 0; i < Coordinates::num_max_dimensions; ++i)
30  {
31  set(i, src[i]);
32  }
33 }
void set(size_t dimension, const Dimension &dim)
Set the values of a given dimension.
Definition: Window.inl:48
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45
cast configure & src
Definition: Cast.cpp:169

References Dimensions< int >::num_max_dimensions, Window::set(), and arm_compute::test::validation::src.

Member Function Documentation

◆ adjust()

void adjust ( size_t  dimension,
int  adjust_value,
bool  is_at_start 
)
inline

Adjust the start or end of a given dimension by the given value.

Parameters
[in]dimensionThe dimension to adjust
[in]adjust_valueThe adjusted value.
[in]is_at_startThe flag to indicate whether adjust the start or end of the dimension.

Definition at line 126 of file Window.inl.

127 {
129  Window::Dimension &d = _dims[dimension];
130 
131  if(is_at_start)
132  {
133  d = Window::Dimension(d.start() + adjust_value, d.end(), d.step());
134  }
135  else
136  {
137  d = Window::Dimension(d.start(), d.end() + adjust_value, d.step());
138  }
139 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, Window::Dimension::end(), Dimensions< int >::num_max_dimensions, Window::Dimension::start(), and Window::Dimension::step().

Referenced by GCDepthwiseConvolutionLayer3x3Kernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), and CLDirectConvolutionLayerKernel::run().

◆ broadcast_if_dimension_le_one() [1/2]

Window broadcast_if_dimension_le_one ( const TensorShape shape) const
inline

Don't advance in the dimension where shape is less equal to 1.

Parameters
[in]shapeA TensorShape.
Returns
Broadcast window.

Definition at line 106 of file Window.inl.

107 {
108  Window broadcastWin(*this);
109  for(size_t d = 0; d < TensorShape::num_max_dimensions; ++d)
110  {
111  if(shape[d] <= 1)
112  {
113  broadcastWin.set(d, Dimension(0, 0, 0));
114  }
115  }
116  return broadcastWin;
117 }
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50
TensorShape shape() const
Return the shape of the window in number of steps.
Definition: Window.inl:258
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References Dimensions< size_t >::num_max_dimensions, Window::set(), and Window::shape().

Referenced by Window::broadcast_if_dimension_le_one(), and NEComplexPixelWiseMultiplicationKernel::run().

◆ broadcast_if_dimension_le_one() [2/2]

Window broadcast_if_dimension_le_one ( const ITensorInfo info) const
inline

Don't advance in the dimension where shape of info is less equal to 1.

Parameters
[in]infoAn ITensorInfo.
Returns
Broadcast window.

Definition at line 390 of file Window.h.

391  {
392  return broadcast_if_dimension_le_one(info.tensor_shape());
393  }
Window broadcast_if_dimension_le_one(const TensorShape &shape) const
Don't advance in the dimension where shape is less equal to 1.
Definition: Window.inl:106

References Window::broadcast_if_dimension_le_one(), and arm_compute::test::validation::info.

◆ collapse()

Window collapse ( const Window full_window,
size_t  first,
size_t  last = Coordinates::num_max_dimensions 
) const
inline

Collapse the dimensions between first and last.

A dimension is collapsable if it starts from 0 and matches the corresponding dimension in the full_window

Parameters
[in]full_windowFull window window has been created from.
[in]firstStart dimension into which the following are collapsed.
[in]lastEnd (exclusive) dimension to collapse.
Returns
Collapsed window if successful.

Definition at line 97 of file Window.inl.

98 {
99  bool has_collapsed = false;
100  Window collapsed = collapse_if_possible(full_window, first, last, &has_collapsed);
101  // Make sure that the window has collapsed
102  ARM_COMPUTE_ERROR_ON(!has_collapsed);
103  return collapsed;
104 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
Window collapse_if_possible(const Window &full_window, size_t first, size_t last, bool *has_collapsed=nullptr) const
Collapse the dimensions between first and last if possible.
Definition: Window.inl:54
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50

References ARM_COMPUTE_ERROR_ON, and Window::collapse_if_possible().

Referenced by CLFlattenLayerKernel::run(), CLPermuteKernel::run(), CLReverseKernel::run(), CLComputeAllAnchorsKernel::run(), CLScaleKernel::run(), CLStackLayerKernel::run(), and CLFuseBatchNormalizationKernel::run().

◆ collapse_if_possible() [1/2]

Window collapse_if_possible ( const Window full_window,
size_t  first,
size_t  last,
bool *  has_collapsed = nullptr 
) const
inline

Collapse the dimensions between first and last if possible.

A dimension is collapsable if it starts from 0 and matches the corresponding dimension in the full_window

Parameters
[in]full_windowFull window window has been created from.
[in]firstStart dimension into which the following are collapsed.
[in]lastEnd (exclusive) dimension to collapse.
[out]has_collapsed(Optional) Whether the window was collapsed.
Returns
Collapsed window.

Definition at line 54 of file Window.inl.

56 {
57  Window collapsed(*this);
58 
59  bool is_collapsable = true;
60  int collapsed_end = _dims[first].end();
61 
62  for(size_t d = first + 1; is_collapsable && (d < last); ++d)
63  {
64  // The _dims's dimension must match the full _dims dimension to be collapsable:
65  is_collapsable = (_dims[d].start() == 0) && (full_window[d].start() == 0) && (_dims[d].step() <= 1)
66  && (full_window[d].end() == _dims[d].end());
67  collapsed_end *= _dims[d].end();
68  }
69 
70  if(is_collapsable)
71  {
72  collapsed._dims.at(first).set_end(collapsed_end);
73  for(size_t d = first + 1; is_collapsable && (d < last); ++d)
74  {
75  collapsed.set(d, Dimension());
76  }
77  }
78 
79  if(has_collapsed != nullptr)
80  {
81  *has_collapsed = is_collapsable;
82  }
83 
84  return collapsed;
85 }
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50

References Window::set(), and arm_compute::test::validation::step.

Referenced by Window::collapse(), Window::collapse_if_possible(), CLDepthConvertLayerKernel::configure(), CLElementwiseOperationKernel::run(), CLElementWiseUnaryLayerKernel::run(), GCActivationLayerKernel::run(), NEMemsetKernel::run(), CLFloorKernel::run(), CLDequantizationLayerKernel::run(), CLReshapeLayerKernel::run(), CLQuantizationLayerKernel::run(), CLCopyKernel::run(), GCLogits1DShiftExpSumKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), CLFFTScaleKernel::run(), CLNormalizationLayerKernel::run(), CLFillBorderKernel::run(), CLUpsampleLayerKernel::run(), CLMemsetKernel::run(), CLPoolingLayerKernel::run(), CLGatherKernel::run(), CLTileKernel::run(), CLComparisonKernel::run(), CLActivationLayerKernel::run(), GCPoolingLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLFFTDigitReverseKernel::run(), CLMinMaxLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), CLSelectKernel::run(), NEReorgLayerKernel::run(), CLPixelWiseMultiplicationKernel::run(), CLYOLOLayerKernel::run(), CLFFTRadixStageKernel::run(), GCCol2ImKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLDeconvolutionReshapeOutputKernel::run(), NEPixelWiseMultiplicationKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLWinogradInputTransformKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), CLCol2ImKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), CLStridedSliceKernel::run(), CLGEMMLowpOffsetContributionKernel::run(), CLWinogradOutputTransformKernel::run(), NEGEMMLowpMatrixAReductionKernel::run(), CLIm2ColKernel::run(), GCLogits1DNormKernel::run(), CLGEMMLowpMatrixBReductionKernel::run(), CLComplexPixelWiseMultiplicationKernel::run(), NEGEMMLowpMatrixBReductionKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), and CLLogits1DNormKernel::run().

◆ collapse_if_possible() [2/2]

Window collapse_if_possible ( const Window full_window,
size_t  first,
bool *  has_collapsed = nullptr 
) const
inline

Collapse the dimensions higher than first if possible.

A dimension is collapsable if it starts from 0 and matches the corresponding dimension in the full_window

Parameters
[in]full_windowFull window window has been created from.
[in]firstStart dimension into which the following are collapsed.
[out]has_collapsed(Optional) Whether the window was collapsed.
Returns
Collapsed window.

Definition at line 359 of file Window.h.

360  {
361  return collapse_if_possible(full_window, first, Coordinates::num_max_dimensions, has_collapsed);
362  }
Window collapse_if_possible(const Window &full_window, size_t first, size_t last, bool *has_collapsed=nullptr) const
Collapse the dimensions between first and last if possible.
Definition: Window.inl:54
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References Window::collapse_if_possible(), and Dimensions< int >::num_max_dimensions.

◆ first_slice_window_1D()

◆ first_slice_window_2D()

Window first_slice_window_2D ( ) const
inline

First 2D slice of the window.

Returns
The first slice of the window.

Definition at line 267 of file Window.h.

268  {
269  return first_slice_window<2>();
270  };

Referenced by ICLSimple2DKernel::run(), IGCSimple2DKernel::run(), GCTransposeKernel::run(), GCGEMMMatrixAccumulateBiasesKernel::run(), CLGaussianPyramidHorKernel::run(), CLHistogramKernel::run(), CLGradientKernel::run(), CLBitwiseOrKernel::run(), CLMinMaxKernel::run(), CLBitwiseXorKernel::run(), CLRemapKernel::run(), CLBitwiseAndKernel::run(), CLSobel3x3Kernel::run(), CLDerivativeKernel::run(), CLSobel5x5HorKernel::run(), CLSobel7x7HorKernel::run(), CLHOGOrientationBinningKernel::run(), GCGEMMMatrixAdditionKernel::run(), CLAbsoluteDifferenceKernel::run(), GCAbsoluteDifferenceKernel::run(), CLGEMMMatrixAccumulateBiasesKernel::run(), GCGEMMTranspose1xWKernel::run(), CLMagnitudePhaseKernel::run(), CLIntegralImageVertKernel::run(), CLLocallyConnectedMatrixMultiplyKernel::run(), CLChannelExtractKernel::run(), CLFastCornersKernel::run(), CLMeanStdDevNormalizationKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), NEDepthToSpaceLayerKernel::run(), CLHarrisScoreKernel::run(), CLHOGDetectorKernel::run(), CLPriorBoxLayerKernel::run(), CLChannelCombineKernel::run(), GCGEMMInterleave4x4Kernel::run(), CLScaleKernel::run(), CLMeanStdDevKernel::run(), CLScharr3x3Kernel::run(), CLBoundingBoxTransformKernel::run(), CLReductionOperationKernel::run(), CLL2NormalizeLayerKernel::run(), GCWeightsReshapeKernel::run(), CLColorConvertKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), GCGEMMMatrixMultiplyKernel::run(), CLGaussianPyramidVertKernel::run(), CLHistogramBorderKernel::run(), CLSpaceToBatchLayerKernel::run(), CLEdgeNonMaxSuppressionKernel::run(), CLMinMaxLocationKernel::run(), CLHOGBlockNormalizationKernel::run(), CLWeightsReshapeKernel::run(), CLIm2ColKernel::run(), CLSobel5x5VertKernel::run(), CLSobel7x7VertKernel::run(), CLCopyToArrayKernel::run(), CLGEMMLowpMatrixBReductionKernel::run(), CLEdgeTraceKernel::run(), and CLConvolutionRectangleKernel::run().

◆ first_slice_window_3D()

Window first_slice_window_3D ( ) const
inline

First 3D slice of the window.

Returns
The first slice of the window.

Definition at line 275 of file Window.h.

276  {
277  return first_slice_window<3>();
278  };

Referenced by ICLSimple3DKernel::run(), IGCSimple3DKernel::run(), GCScaleKernel::run(), CLElementwiseOperationKernel::run(), GCActivationLayerKernel::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), GCPixelWiseMultiplicationKernel::run(), GCNormalizationLayerKernel::run(), CLDequantizationLayerKernel::run(), CLGEMMMatrixVectorMultiplyKernel::run(), CLFloorKernel::run(), GCDepthConcatenateLayerKernel::run(), CLReshapeLayerKernel::run(), CLSpaceToDepthLayerKernel::run(), CLCopyKernel::run(), CLDepthToSpaceLayerKernel::run(), CLQuantizationLayerKernel::run(), CLROIPoolingLayerKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), GCDropoutLayerKernel::run(), GCLogits1DShiftExpSumKernel::run(), CLLocallyConnectedMatrixMultiplyKernel::run(), CLUpsampleLayerKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), GCFillBorderKernel::run(), NEGEMMMatrixVectorMultiplyKernel::run(), CLFFTScaleKernel::run(), CLFillBorderKernel::run(), CLMemsetKernel::run(), CLNormalizationLayerKernel::run(), CLGEMMMatrixAdditionKernel::run(), CLActivationLayerKernel::run(), GCPoolingLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLComparisonKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), CLPoolingLayerKernel::run(), CLFFTDigitReverseKernel::run(), NESpaceToDepthLayerKernel::run(), CLMinMaxLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLReorgLayerKernel::run(), CLDepthwiseVectorToTensorKernel::run(), GCArithmeticAdditionKernel::run(), NEFlattenLayerKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), GCNormalizePlanarYUVLayerKernel::run(), CLDepthConcatenateLayerKernel::run(), CLBatchConcatenateLayerKernel::run(), CLSelectKernel::run(), GCTensorShiftKernel::run(), CLReductionOperationKernel::run(), CLPixelWiseMultiplicationKernel::run(), CLYOLOLayerKernel::run(), CLL2NormalizeLayerKernel::run(), CLFFTRadixStageKernel::run(), CLGEMMReshapeRHSMatrixKernel::run(), CLGEMMLowpMatrixMultiplyKernel::run(), CLDirectConvolutionLayerOutputStageKernel::run(), CLGEMMLowpMatrixMultiplyNativeKernel::run(), GCWeightsReshapeKernel::run(), CLGEMMReshapeLHSMatrixKernel::run(), GCCol2ImKernel::run(), CLDepthwiseIm2ColKernel::run(), CLROIAlignLayerKernel::run(), CLGEMMLowpMatrixMultiplyReshapedOnlyRHSKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLBatchToSpaceLayerKernel::run(), NEPixelWiseMultiplicationKernel::run(), GCBatchNormalizationLayerKernel::run(), CLWinogradInputTransformKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), CLCol2ImKernel::run(), NEBatchToSpaceLayerKernel::run(), CLDirectConvolutionLayerKernel::run(), CLBatchNormalizationLayerKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), CLGEMMLowpOffsetContributionKernel::run(), CLFuseBatchNormalizationKernel::run(), CLGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixMultiplyReshapedKernel::run(), CLGEMMMatrixMultiplyNativeKernel::run(), CLSpaceToBatchLayerKernel::run(), CLGEMMMatrixMultiplyReshapedOnlyRHSKernel::run(), NESpaceToBatchLayerKernel::run(), CLWeightsReshapeKernel::run(), GCLogits1DNormKernel::run(), CLIm2ColKernel::run(), CLGEMMMatrixMultiplyReshapedKernel::run(), CLComplexPixelWiseMultiplicationKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), and CLLogits1DNormKernel::run().

◆ first_slice_window_4D()

◆ num_iterations()

constexpr size_t num_iterations ( size_t  dimension) const
inline

Return the number of iterations needed to iterate through a given dimension.

Parameters
[in]dimensionThe requested dimension
Returns
The number of iterations

Definition at line 168 of file Window.inl.

169 {
170  // Precondition: dimension < Coordinates::num_max_dimensions
171  // Precondition: (end - start) % step == 0
172  return (_dims.at(dimension).end() - _dims.at(dimension).start()) / _dims.at(dimension).step();
173 }

Referenced by CLCopyKernel::configure(), CLMemsetKernel::configure(), CLCropKernel::configure(), Window::num_iterations_total(), NEGEMMInterleavedWrapper::prepare(), OMPScheduler::schedule(), CPPScheduler::schedule(), and Window::split_window().

◆ num_iterations_total()

size_t num_iterations_total ( ) const
inline

Return the total number of iterations needed to iterate through the entire window.

Returns
Number of total iterations

Definition at line 268 of file Window.inl.

269 {
270  size_t total = 1;
271  for(size_t d = 0; d < Coordinates::num_max_dimensions; ++d)
272  {
273  total *= num_iterations(d);
274  }
275  return total;
276 }
constexpr size_t num_iterations(size_t dimension) const
Return the number of iterations needed to iterate through a given dimension.
Definition: Window.inl:168
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References Window::num_iterations(), and Dimensions< int >::num_max_dimensions.

Referenced by NEGEMMInterleavedWrapper::configure(), and NEGEMMInterleavedWrapper::prepare().

◆ operator=()

Window & operator= ( const Window rhs)
inline

Copy assignment operator.

Parameters
[in]rhsCopy the values from rhs to the current object
Returns
Reference to the updated object

Definition at line 35 of file Window.inl.

36 {
37  Window tmp(rhs);
38  swap(*this, tmp);
39  return *this;
40 }
friend void swap(Window &lhs, Window &rhs)
Friend function that swaps the contents of two windows.
Definition: Window.inl:278
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50

References Window::swap.

◆ operator[]()

constexpr const Window::Dimension & operator[] ( size_t  dimension) const
inline

Read only access to a given dimension of the window.

Note
Precondition: dimension < Coordinates::num_max_dimensions
Parameters
[in]dimensionThe dimension to access
Returns
The requested dimension

Definition at line 42 of file Window.inl.

43 {
44  // Precondition: dimension < Coordinates::num_max_dimensions
45  return _dims.at(dimension);
46 }

◆ scale()

void scale ( size_t  dimension,
float  scale_value 
)
inline

Scale the values of a given dimension by the given scale_value.

Note
The end of the window is rounded up to be a multiple of step after the scaling.
Parameters
[in]dimensionThe dimension to scale
[in]scale_valueValue to scale the start, end and step values of.

Definition at line 141 of file Window.inl.

142 {
144  Window::Dimension &d = _dims[dimension];
145  const int scaled_step = d.step() * scale_value;
146  const int scaled_start = d.start() * scale_value;
147  const int scaled_diff = (d.end() - d.start()) * scale_value;
148  const int scaled_end = scaled_start + ceil_to_multiple(scaled_diff, scaled_step);
149 
150  d = Window::Dimension(scaled_start, scaled_end, scaled_step);
151 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
auto ceil_to_multiple(S value, T divisor) -> decltype(((value+divisor - 1)/divisor) *divisor)
Computes the smallest number larger or equal to value that is a multiple of divisor.
Definition: Utils.h:66
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, arm_compute::ceil_to_multiple(), Window::Dimension::end(), Dimensions< int >::num_max_dimensions, Window::Dimension::start(), and Window::Dimension::step().

Referenced by CLGaussianPyramidHorKernel::run(), NEGaussianPyramidHorKernel::run(), GCGEMMInterleave4x4Kernel::run(), CLGaussianPyramidVertKernel::run(), and NEGaussianPyramidVertKernel::run().

◆ set()

void set ( size_t  dimension,
const Dimension dim 
)
inline

Set the values of a given dimension.

Parameters
[in]dimensionThe dimension to set
[in]dimThe values to set the dimension to

Definition at line 48 of file Window.inl.

49 {
51  _dims[dimension] = dim;
52 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, and Dimensions< int >::num_max_dimensions.

Referenced by Window::broadcast_if_dimension_le_one(), arm_compute::calculate_max_enlarged_window(), arm_compute::calculate_max_window(), arm_compute::calculate_max_window_horizontal(), Window::collapse_if_possible(), arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), CLElementWiseUnaryLayerKernel::configure(), CLDequantizationLayerKernel::configure(), CLCopyKernel::configure(), CLHistogramKernel::configure(), CLQuantizationLayerKernel::configure(), CLTileKernel::configure(), CLUpsampleLayerKernel::configure(), CLFillBorderKernel::configure(), GCFillBorderKernel::configure(), CLCropKernel::configure(), GCDepthConcatenateLayerKernel::configure(), NEFillInnerBorderKernel::configure(), NEFillBorderKernel::configure(), CLStridedSliceKernel::configure(), NEHOGDetectorKernel::configure(), CLHOGDetectorKernel::configure(), NEROIPoolingLayerKernel::configure(), GCTensorShiftKernel::configure(), CLHistogramBorderKernel::configure(), CLLKTrackerInitKernel::configure(), CLLKTrackerFinalizeKernel::configure(), NEGEMMInterleavedWrapper::configure(), CLLKTrackerStage0Kernel::configure(), CLLKTrackerStage1Kernel::configure(), create_window(), AssetsLibrary::fill_borders_with_garbage(), IImageLoader::fill_image(), IImageLoader::fill_planar_tensor(), IKernel::IKernel(), arm_compute::utils::load_trained_data(), NEGEMMInterleavedWrapper::prepare(), CLMinMaxLayerKernel::reset(), NEMinMaxLayerKernel::reset(), GCGEMMMatrixAccumulateBiasesKernel::run(), CLHOGOrientationBinningKernel::run(), GCGEMMTranspose1xWKernel::run(), CLGEMMMatrixAccumulateBiasesKernel::run(), NEMemsetKernel::run(), CLGEMMMatrixVectorMultiplyKernel::run(), GCDepthConcatenateLayerKernel::run(), CLPermuteKernel::run(), CLSpaceToDepthLayerKernel::run(), CLDepthToSpaceLayerKernel::run(), NECopyKernel::run(), NEGEMMMatrixAccumulateBiasesKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), NETileKernel::run(), CLUpsampleLayerKernel::run(), CLChannelExtractKernel::run(), NEGEMMMatrixVectorMultiplyKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), CLPoolingLayerKernel::run(), GCPoolingLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLDepthwiseVectorToTensorKernel::run(), CLChannelCombineKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), NEFFTScaleKernel::run(), NEFlattenLayerKernel::run(), CLSelectKernel::run(), NEPoolingLayerKernel::run(), GCNormalizePlanarYUVLayerKernel::run(), CLReductionOperationKernel::run(), CLCropKernel::run(), CLL2NormalizeLayerKernel::run(), CLGEMMLowpMatrixMultiplyKernel::run(), CLGEMMLowpMatrixMultiplyNativeKernel::run(), NEGEMMLowpMatrixMultiplyKernel::run(), NEMinMaxLayerKernel::run(), CLColorConvertKernel::run(), CLDepthwiseIm2ColKernel::run(), NEFFTRadixStageKernel::run(), GCGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLGEMMLowpMatrixMultiplyReshapedOnlyRHSKernel::run(), GCBatchNormalizationLayerKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLBatchToSpaceLayerKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), NEBatchToSpaceLayerKernel::run(), CLBatchNormalizationLayerKernel::run(), CLGEMMLowpOffsetContributionKernel::run(), NEGEMMTranspose1xWKernel::run(), CLGEMMMatrixMultiplyKernel::run(), CLGEMMMatrixMultiplyNativeKernel::run(), CLGEMMLowpMatrixMultiplyReshapedKernel::run(), CLSpaceToBatchLayerKernel::run(), CLWinogradOutputTransformKernel::run(), CLGEMMMatrixMultiplyReshapedOnlyRHSKernel::run(), NEGEMMLowpMatrixAReductionKernel::run(), CLCropResize::run(), GCLogits1DNormKernel::run(), CLIm2ColKernel::run(), CLGEMMMatrixMultiplyReshapedKernel::run(), CLGEMMLowpMatrixBReductionKernel::run(), NEGEMMLowpMatrixBReductionKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), CLLogits1DNormKernel::run(), arm_compute::utils::save_to_ppm(), Window::shift_dimensions(), Window::split_window(), AccessWindowTranspose::update_window_if_needed(), AccessWindowStatic::update_window_if_needed(), AccessWindowRectangle::update_window_if_needed(), Window::use_tensor_dimensions(), CLPadLayer::validate(), and Window::Window().

◆ set_dimension_step()

void set_dimension_step ( size_t  dimension,
int  step 
)
inline

◆ shape()

TensorShape shape ( ) const
inline

Return the shape of the window in number of steps.

Definition at line 258 of file Window.inl.

259 {
260  TensorShape shape;
261  for(size_t d = 0; d < TensorShape::num_max_dimensions; ++d)
262  {
263  shape.set(d, (_dims[d].end() - _dims[d].start()) / _dims[d].step());
264  }
265  return shape;
266 }
TensorShape shape() const
Return the shape of the window in number of steps.
Definition: Window.inl:258
TensorShape & set(size_t dimension, size_t value, bool apply_dim_correction=true)
Accessor to set the value of one of the dimensions.
Definition: TensorShape.h:78
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References Dimensions< size_t >::num_max_dimensions, TensorShape::set(), and arm_compute::test::validation::step.

Referenced by Window::broadcast_if_dimension_le_one(), NEGEMMInterleavedWrapper::prepare(), CLWinogradInputTransformKernel::run(), and Window::use_tensor_dimensions().

◆ shift()

void shift ( size_t  dimension,
int  shift_value 
)
inline

Shift the values of a given dimension by the given shift_value.

Parameters
[in]dimensionThe dimension to shift
[in]shift_valueValue to shift the start and end values of.

Definition at line 119 of file Window.inl.

120 {
122  Window::Dimension &d = _dims[dimension];
123  d = Window::Dimension(d.start() + shift_value, d.end() + shift_value, d.step());
124 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, Window::Dimension::end(), Dimensions< int >::num_max_dimensions, Window::Dimension::start(), and Window::Dimension::step().

Referenced by NEGaussian5x5HorKernel::run(), CLGaussianPyramidHorKernel::run(), GCActivationLayerKernel::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), NEGaussianPyramidHorKernel::run(), NESobel5x5HorKernel::run(), and NEGaussianPyramidVertKernel::run().

◆ shift_dimensions()

Window shift_dimensions ( unsigned int  shift_value) const
inline

Shift down all the dimensions of a window.

i.e new_dims[n] = old_dims[n+shift_value].

Parameters
[in]shift_valueNumber of dimensions to shift the window by.
Returns
The window with the shifted dimensions.

Definition at line 87 of file Window.inl.

88 {
89  Window shifted_window;
90  for(size_t n = 0; n < (Coordinates::num_max_dimensions - shift_value); n++)
91  {
92  shifted_window.set(n, _dims[n + shift_value]);
93  }
94  return shifted_window;
95 }
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References Dimensions< int >::num_max_dimensions, and Window::set().

◆ slide_window_slice_1D()

bool slide_window_slice_1D ( Window slice) const
inline

Slide the passed 1D window slice.

If slice contains the last slice then it will remain unchanged and false will be returned.

Parameters
[in,out]sliceCurrent slice, to be updated to the next slice.
Returns
true if slice contains a new slice, false if slice already contained the last slice

Definition at line 295 of file Window.h.

296  {
297  return slide_window_slice<1>(slice);
298  }
SimpleTensor< T > slice(const SimpleTensor< T > &src, Coordinates starts, Coordinates ends)

References arm_compute::test::validation::reference::slice().

Referenced by CLElementWiseUnaryLayerKernel::run(), CLDepthwiseVectorToTensorKernel::run(), NEFlattenLayerKernel::run(), CLReductionOperationKernel::run(), GCWeightsReshapeKernel::run(), and CLWeightsReshapeKernel::run().

◆ slide_window_slice_2D()

bool slide_window_slice_2D ( Window slice) const
inline

Slide the passed 2D window slice.

If slice contains the last slice then it will remain unchanged and false will be returned.

Parameters
[in,out]sliceCurrent slice, to be updated to the next slice.
Returns
true if slice contains a new slice, false if slice already contained the last slice

Definition at line 307 of file Window.h.

308  {
309  return slide_window_slice<2>(slice);
310  }
SimpleTensor< T > slice(const SimpleTensor< T > &src, Coordinates starts, Coordinates ends)

References arm_compute::test::validation::reference::slice().

Referenced by ICLSimple2DKernel::run(), IGCSimple2DKernel::run(), GCTransposeKernel::run(), GCGEMMMatrixAccumulateBiasesKernel::run(), CLGaussianPyramidHorKernel::run(), CLHistogramKernel::run(), CLGradientKernel::run(), CLBitwiseOrKernel::run(), CLMinMaxKernel::run(), CLRemapKernel::run(), CLBitwiseXorKernel::run(), CLBitwiseAndKernel::run(), CLSobel3x3Kernel::run(), CLDerivativeKernel::run(), CLSobel5x5HorKernel::run(), CLSobel7x7HorKernel::run(), CLHOGOrientationBinningKernel::run(), GCGEMMMatrixAdditionKernel::run(), CLAbsoluteDifferenceKernel::run(), GCAbsoluteDifferenceKernel::run(), CLGEMMMatrixAccumulateBiasesKernel::run(), GCGEMMTranspose1xWKernel::run(), CLMagnitudePhaseKernel::run(), CLIntegralImageVertKernel::run(), CLLocallyConnectedMatrixMultiplyKernel::run(), CLChannelExtractKernel::run(), CLMeanStdDevNormalizationKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), NEDepthToSpaceLayerKernel::run(), CLFastCornersKernel::run(), CLHarrisScoreKernel::run(), GCGEMMInterleave4x4Kernel::run(), CLChannelCombineKernel::run(), CLHOGDetectorKernel::run(), CLScaleKernel::run(), CLMeanStdDevKernel::run(), CLScharr3x3Kernel::run(), CLReductionOperationKernel::run(), CLL2NormalizeLayerKernel::run(), CLColorConvertKernel::run(), GCWeightsReshapeKernel::run(), GCGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLGaussianPyramidVertKernel::run(), CLHistogramBorderKernel::run(), CLEdgeNonMaxSuppressionKernel::run(), CLHOGBlockNormalizationKernel::run(), CLMinMaxLocationKernel::run(), CLWeightsReshapeKernel::run(), CLIm2ColKernel::run(), CLSobel5x5VertKernel::run(), CLSobel7x7VertKernel::run(), CLCopyToArrayKernel::run(), CLGEMMLowpMatrixBReductionKernel::run(), CLEdgeTraceKernel::run(), and CLConvolutionRectangleKernel::run().

◆ slide_window_slice_3D()

bool slide_window_slice_3D ( Window slice) const
inline

Slide the passed 3D window slice.

If slice contains the last slice then it will remain unchanged and false will be returned.

Parameters
[in,out]sliceCurrent slice, to be updated to the next slice.
Returns
true if slice contains a new slice, false if slice already contained the last slice

Definition at line 319 of file Window.h.

320  {
321  return slide_window_slice<3>(slice);
322  }
SimpleTensor< T > slice(const SimpleTensor< T > &src, Coordinates starts, Coordinates ends)

References arm_compute::test::validation::reference::slice().

Referenced by ICLSimple3DKernel::run(), IGCSimple3DKernel::run(), GCScaleKernel::run(), CLElementwiseOperationKernel::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), GCActivationLayerKernel::run(), GCPixelWiseMultiplicationKernel::run(), GCNormalizationLayerKernel::run(), CLDequantizationLayerKernel::run(), CLGEMMMatrixVectorMultiplyKernel::run(), CLFloorKernel::run(), GCDepthConcatenateLayerKernel::run(), CLCopyKernel::run(), CLDepthToSpaceLayerKernel::run(), CLQuantizationLayerKernel::run(), CLSpaceToDepthLayerKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), GCDropoutLayerKernel::run(), GCLogits1DShiftExpSumKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), GCFillBorderKernel::run(), CLMemsetKernel::run(), CLFFTScaleKernel::run(), CLNormalizationLayerKernel::run(), CLUpsampleLayerKernel::run(), CLGEMMMatrixAdditionKernel::run(), GCPoolingLayerKernel::run(), CLActivationLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLComparisonKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), CLPoolingLayerKernel::run(), CLFFTDigitReverseKernel::run(), NESpaceToDepthLayerKernel::run(), CLMinMaxLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLReorgLayerKernel::run(), CLDepthwiseVectorToTensorKernel::run(), GCArithmeticAdditionKernel::run(), NEFlattenLayerKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), GCNormalizePlanarYUVLayerKernel::run(), CLDepthConcatenateLayerKernel::run(), CLSelectKernel::run(), CLBatchConcatenateLayerKernel::run(), GCTensorShiftKernel::run(), CLReductionOperationKernel::run(), CLPixelWiseMultiplicationKernel::run(), CLL2NormalizeLayerKernel::run(), CLYOLOLayerKernel::run(), CLGEMMReshapeRHSMatrixKernel::run(), CLGEMMLowpMatrixMultiplyKernel::run(), CLFFTRadixStageKernel::run(), CLDirectConvolutionLayerOutputStageKernel::run(), CLGEMMLowpMatrixMultiplyNativeKernel::run(), CLGEMMReshapeLHSMatrixKernel::run(), GCCol2ImKernel::run(), CLDepthwiseIm2ColKernel::run(), CLGEMMLowpMatrixMultiplyReshapedOnlyRHSKernel::run(), GCBatchNormalizationLayerKernel::run(), NEPixelWiseMultiplicationKernel::run(), CLBatchToSpaceLayerKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLWinogradInputTransformKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), CLCol2ImKernel::run(), CLDirectConvolutionLayerKernel::run(), CLBatchNormalizationLayerKernel::run(), NEBatchToSpaceLayerKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), CLGEMMLowpOffsetContributionKernel::run(), CLGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixMultiplyReshapedKernel::run(), CLGEMMMatrixMultiplyNativeKernel::run(), CLSpaceToBatchLayerKernel::run(), CLWinogradOutputTransformKernel::run(), CLGEMMMatrixMultiplyReshapedOnlyRHSKernel::run(), NESpaceToBatchLayerKernel::run(), CLIm2ColKernel::run(), GCLogits1DNormKernel::run(), CLGEMMMatrixMultiplyReshapedKernel::run(), CLComplexPixelWiseMultiplicationKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), and CLLogits1DNormKernel::run().

◆ slide_window_slice_4D()

bool slide_window_slice_4D ( Window slice) const
inline

Slide the passed 4D window slice.

If slice contains the last slice then it will remain unchanged and false will be returned.

Parameters
[in,out]sliceCurrent slice, to be updated to the next slice.
Returns
true if slice contains a new slice, false if slice already contained the last slice

Definition at line 331 of file Window.h.

332  {
333  return slide_window_slice<4>(slice);
334  }
SimpleTensor< T > slice(const SimpleTensor< T > &src, Coordinates starts, Coordinates ends)

References arm_compute::test::validation::reference::slice().

Referenced by CLPermuteKernel::run(), CLReverseKernel::run(), CLPoolingLayerKernel::run(), CLTileKernel::run(), CLWidthConcatenate2TensorsKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), CLWidthConcatenate4TensorsKernel::run(), CLReductionOperationKernel::run(), GCWeightsReshapeKernel::run(), CLCol2ImKernel::run(), CLStridedSliceKernel::run(), CLWeightsReshapeKernel::run(), and arm_compute::run_reverse().

◆ split_window()

Window split_window ( size_t  dimension,
size_t  id,
size_t  total 
) const
inline

Split a window into a set of sub windows along a given dimension.

For example to split a window into 3 sub-windows along the Y axis, you would have to do:
Window sub0 = window.split_window( 1, 0, 3);
Window sub1 = window.split_window( 1, 1, 3);
Window sub2 = window.split_window( 1, 2, 3);

Parameters
[in]dimensionDimension along which the split will be performed
[in]idId of the sub-window to return. Must be in the range (0, total-1)
[in]totalTotal number of sub-windows the window will be split into.
Returns
The subwindow "id" out of "total"

Definition at line 175 of file Window.inl.

176 {
177  ARM_COMPUTE_ERROR_ON(id >= total);
179 
180  Window out;
181 
182  for(size_t d = 0; d < Coordinates::num_max_dimensions; ++d)
183  {
184  if(d == dimension)
185  {
186  int start = _dims[d].start();
187  int end = _dims[d].end();
188  int per_sub_window = (num_iterations(d) / total) * _dims[d].step();
189 
190  start += id * per_sub_window;
191 
192  if(id != total - 1)
193  {
194  end = start + per_sub_window;
195  }
196 
197  out.set(d, Dimension(start, end, _dims[d].step()));
198  }
199  else
200  {
201  out.set(d, _dims[d]);
202  }
203  }
204 
205  return out;
206 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
constexpr size_t num_iterations(size_t dimension) const
Return the number of iterations needed to iterate through a given dimension.
Definition: Window.inl:168
constexpr Window()
Default constructor: create a window containing a single element.
Definition: Window.h:50
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, Window::num_iterations(), Dimensions< int >::num_max_dimensions, Window::set(), and arm_compute::test::validation::step.

Referenced by NEGEMMInterleavedWrapper::prepare(), OMPScheduler::schedule(), and CPPScheduler::schedule().

◆ use_tensor_dimensions()

void use_tensor_dimensions ( const TensorShape shape,
size_t  first_dimension = Window::DimX 
)
inline

Use the tensor's dimensions to fill the window dimensions.

Parameters
[in]shapeTensorShape to copy the dimensions from.
[in]first_dimensionOnly copy dimensions which are greater or equal to this value.

Definition at line 250 of file Window.inl.

251 {
252  for(unsigned int n = first_dimension; n < shape.num_dimensions(); ++n)
253  {
254  set(n, Window::Dimension(0, std::max(shape[n], static_cast<size_t>(1))));
255  }
256 }
void set(size_t dimension, const Dimension &dim)
Set the values of a given dimension.
Definition: Window.inl:48
unsigned int num_dimensions() const
Returns the effective dimensionality of the tensor.
Definition: Dimensions.h:122
TensorShape shape() const
Return the shape of the window in number of steps.
Definition: Window.inl:258

References Dimensions< T >::num_dimensions(), Window::set(), and Window::shape().

Referenced by arm_compute::utils::compare_tensor(), CLFillBorderKernel::configure(), GCFillBorderKernel::configure(), NEFillInnerBorderKernel::configure(), NEFillBorderKernel::configure(), GCTensorShiftKernel::configure(), ITensor::copy_from(), AssetsLibrary::fill_layer_data(), arm_compute::utils::fill_random_tensor(), NPYLoader::fill_tensor(), arm_compute::test::validation::reference::gather(), CaffePreproccessor::preprocess(), TFPreproccessor::preprocess(), CLMinMaxLayerKernel::reset(), NEMinMaxLayerKernel::reset(), GCDepthwiseConvolutionLayer3x3Kernel::run(), CLFlattenLayerKernel::run(), CLLocallyConnectedMatrixMultiplyKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), NEFlattenLayerKernel::run(), CLCropKernel::run(), CLStackLayerKernel::run(), CLDirectConvolutionLayerOutputStageKernel::run(), NEMinMaxLayerKernel::run(), GCWeightsReshapeKernel::run(), NEStackLayerKernel::run(), CLCol2ImKernel::run(), CLDirectConvolutionLayerKernel::run(), CLWinogradFilterTransformKernel::run(), CLWinogradOutputTransformKernel::run(), CLWeightsReshapeKernel::run(), CLIm2ColKernel::run(), arm_compute::test::validation::reference::slice(), arm_compute::test::validation::reference::strided_slice(), and arm_compute::test::validation::TEST_CASE().

◆ validate()

void validate ( ) const
inline

Will validate all the window's dimensions' values when asserts are enabled.

No-op when asserts are disabled

Definition at line 159 of file Window.inl.

160 {
161  for(size_t i = 0; i < Coordinates::num_max_dimensions; ++i)
162  {
163  ARM_COMPUTE_ERROR_ON(_dims[i].end() < _dims[i].start());
164  ARM_COMPUTE_ERROR_ON((_dims[i].step() != 0) && (((_dims[i].end() - _dims[i].start()) % _dims[i].step()) != 0));
165  }
166 }
#define ARM_COMPUTE_ERROR_ON(cond)
If the condition is true then an error message is printed and an exception thrown.
Definition: Error.h:337
static constexpr size_t num_max_dimensions
Number of dimensions the tensor has.
Definition: Dimensions.h:45

References ARM_COMPUTE_ERROR_ON, Dimensions< int >::num_max_dimensions, and arm_compute::test::validation::step.

Referenced by arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_rgb_to_yuv4(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), arm_compute::error_on_invalid_subwindow(), arm_compute::error_on_mismatching_windows(), arm_compute::error_on_window_not_collapsable_at_dimension(), OMPScheduler::schedule(), CPPScheduler::schedule(), AccessWindowTranspose::update_window_if_needed(), and AccessWindowRectangle::update_window_if_needed().

◆ x()

constexpr const Dimension& x ( ) const
inline

Alias to access the first dimension of the window.

Returns
First dimension of the window

Definition at line 143 of file Window.h.

144  {
145  return _dims.at(Window::DimX);
146  }
static constexpr size_t DimX
Alias for dimension 0 also known as X dimension.
Definition: Window.h:43

References Window::DimX.

Referenced by arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), AccessWindowTranspose::compute_valid_region(), AccessWindowRectangle::compute_valid_region(), CLElementWiseUnaryLayerKernel::configure(), CLDequantizationLayerKernel::configure(), CLCopyKernel::configure(), CLQuantizationLayerKernel::configure(), CLTileKernel::configure(), CLCropKernel::configure(), GCGEMMTranspose1xWKernel::configure(), CLStridedSliceKernel::configure(), arm_compute::enqueue(), arm_compute::error_on_unconfigured_kernel(), ICLKernel::gws_from_window(), WindowIterator< L >::iterate_3D(), NEGEMMInterleavedWrapper::prepare(), CLHistogramKernel::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), NEGaussianPyramidHorKernel::run(), CLHOGOrientationBinningKernel::run(), GCGEMMTranspose1xWKernel::run(), NEMemsetKernel::run(), NEHOGOrientationBinningKernel::run(), NEGEMMMatrixAccumulateBiasesKernel::run(), NETileKernel::run(), CLChannelExtractKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), CLPoolingLayerKernel::run(), GCPoolingLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), NEROIPoolingLayerKernel::run(), NESpaceToDepthLayerKernel::run(), CLChannelCombineKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), NEFlattenLayerKernel::run(), NEPoolingLayerKernel::run(), CLReductionOperationKernel::run(), CLCropKernel::run(), NEMinMaxLayerKernel::run(), NEGEMMLowpMatrixMultiplyKernel::run(), CLColorConvertKernel::run(), NEBatchToSpaceLayerKernel::run(), CLGaussianPyramidVertKernel::run(), CLHistogramBorderKernel::run(), NESpaceToBatchLayerKernel::run(), NEGaussianPyramidVertKernel::run(), NEWinogradLayerTransformWeightsKernel< T, OutputTileRows, OutputTileCols, KernelRows, KernelCols >::run(), arm_compute::run_reverse(), AccessWindowTranspose::update_padding_if_needed(), AccessWindowTranspose::update_window_if_needed(), AccessWindowRectangle::update_window_if_needed(), CLMemsetKernel::validate(), and CLCropKernel::validate().

◆ y()

constexpr const Dimension& y ( ) const
inline

Alias to access the second dimension of the window.

Returns
Second dimension of the window

Definition at line 152 of file Window.h.

153  {
154  return _dims.at(Window::DimY);
155  }
static constexpr size_t DimY
Alias for dimension 1 also known as Y dimension.
Definition: Window.h:45

References Window::DimY.

Referenced by arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), AccessWindowTranspose::compute_valid_region(), AccessWindowRectangle::compute_valid_region(), arm_compute::enqueue(), ICLKernel::gws_from_window(), WindowIterator< L >::iterate_3D(), GCDepthwiseConvolutionLayer3x3Kernel::run(), CLHOGOrientationBinningKernel::run(), GCGEMMTranspose1xWKernel::run(), NEHOGOrientationBinningKernel::run(), CLChannelExtractKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), NEDepthToSpaceLayerKernel::run(), CLPoolingLayerKernel::run(), GCPoolingLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLChannelCombineKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), NEPoolingLayerKernel::run(), NEGEMMLowpMatrixMultiplyKernel::run(), CLColorConvertKernel::run(), CLGaussianPyramidVertKernel::run(), NESpaceToBatchLayerKernel::run(), NEGaussianPyramidVertKernel::run(), AccessWindowTranspose::update_padding_if_needed(), AccessWindowTranspose::update_window_if_needed(), and AccessWindowRectangle::update_window_if_needed().

◆ z()

constexpr const Dimension& z ( ) const
inline

Alias to access the third dimension of the window.

Returns
Third dimension of the window

Definition at line 161 of file Window.h.

162  {
163  return _dims.at(Window::DimZ);
164  }
static constexpr size_t DimZ
Alias for dimension 2 also known as Z dimension.
Definition: Window.h:47

References Window::DimZ.

Referenced by arm_compute::enqueue(), WindowIterator< L >::iterate_3D(), NESpaceToDepthLayerKernel::run(), and CLDepthwiseConvolutionLayer3x3NHWCKernel::run().

Friends And Related Function Documentation

◆ swap

void swap ( Window lhs,
Window rhs 
)
friend

Friend function that swaps the contents of two windows.

Parameters
[in]lhsFirst window to swap.
[in]rhsSecond window to swap.

Definition at line 278 of file Window.inl.

279 {
280  lhs._dims.swap(rhs._dims);
281 }

Referenced by Window::operator=().

Field Documentation

◆ DimX

constexpr size_t DimX = 0
static

Alias for dimension 0 also known as X dimension.

Definition at line 43 of file Window.h.

Referenced by arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), arm_compute::misc::shape_calculator::compute_min_max_shape(), arm_compute::misc::shape_calculator::compute_reductionB_shape(), arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape(), arm_compute::test::validation::reference::concatenate_layer(), CLElementWiseUnaryLayerKernel::configure(), GCTransposeKernel::configure(), CLDequantizationLayerKernel::configure(), CLCopyKernel::configure(), CLQuantizationLayerKernel::configure(), CLTileKernel::configure(), CLUpsampleLayerKernel::configure(), CLMemsetKernel::configure(), CLFillBorderKernel::configure(), GCFillBorderKernel::configure(), CLHOGOrientationBinningKernel::configure(), NEHOGDescriptor::configure(), CLCropKernel::configure(), CLHOGDescriptor::configure(), GCDepthConcatenateLayerKernel::configure(), NEHOGOrientationBinningKernel::configure(), CLROIPoolingLayerKernel::configure(), NEFillInnerBorderKernel::configure(), NEFillBorderKernel::configure(), CLStridedSliceKernel::configure(), NEHOGDetectorKernel::configure(), CLHOGDetectorKernel::configure(), NEROIPoolingLayerKernel::configure(), GCTensorShiftKernel::configure(), CLHOGMultiDetection::configure(), NEHOGMultiDetection::configure(), CLLKTrackerInitKernel::configure(), NELSTMLayer::configure(), CLLSTMLayerQuantized::configure(), NELSTMLayerQuantized::configure(), CLLSTMLayer::configure(), CLLKTrackerFinalizeKernel::configure(), NEGEMMInterleavedWrapper::configure(), CLLKTrackerStage0Kernel::configure(), CLLKTrackerStage1Kernel::configure(), IImageLoader::fill_image(), IImageLoader::fill_planar_tensor(), IKernel::IKernel(), NEDepthwiseConvolutionAssemblyDispatch::is_optimized_supported(), arm_compute::utils::load_trained_data(), NEWinogradConvolutionLayer::prepare(), NEGEMMLowpMatrixMultiplyCore::prepare(), NEGEMMInterleavedWrapper::prepare(), NEDepthwiseConvolutionLayer::prepare(), CLMinMaxLayerKernel::reset(), NEMinMaxLayerKernel::reset(), NESimpleAssemblyFunction::run(), GCScaleKernel::run(), NEGaussian5x5HorKernel::run(), CLElementWiseUnaryLayerKernel::run(), CLGaussianPyramidHorKernel::run(), GCActivationLayerKernel::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), CLHOGOrientationBinningKernel::run(), NEGaussianPyramidHorKernel::run(), NEROIPoolingLayer::run(), GCGEMMTranspose1xWKernel::run(), NEMemsetKernel::run(), CPPUpsampleKernel::run(), NERange::run(), CLGEMMMatrixVectorMultiplyKernel::run(), NEUpsampleLayer::run(), NEHOGOrientationBinningKernel::run(), NESobel5x5HorKernel::run(), CLPermuteKernel::run(), CLROIPoolingLayerKernel::run(), NECopyKernel::run(), CLDepthToSpaceLayerKernel::run(), CLSpaceToDepthLayerKernel::run(), NEGEMMMatrixAccumulateBiasesKernel::run(), NETileKernel::run(), CLComputeAllAnchorsKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), NEPoolingLayer::run(), CLChannelExtractKernel::run(), CLUpsampleLayerKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), NEGEMMMatrixVectorMultiplyKernel::run(), CLPoolingLayerKernel::run(), NEFFT1D::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), GCPoolingLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLMeanStdDevNormalizationKernel::run(), CLMinMaxLayerKernel::run(), CLDepthwiseVectorToTensorKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), NEROIPoolingLayerKernel::run(), CLChannelCombineKernel::run(), GCGEMMInterleave4x4Kernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), GCArithmeticAdditionKernel::run(), NEFFTScaleKernel::run(), NEFlattenLayerKernel::run(), NEPoolingLayerKernel::run(), CLSelectKernel::run(), GCNormalizePlanarYUVLayerKernel::run(), CLReductionOperationKernel::run(), GCTensorShiftKernel::run(), NEWinogradConvolutionLayer::run(), CLCropKernel::run(), CLL2NormalizeLayerKernel::run(), CLGEMMLowpMatrixMultiplyKernel::run(), CLGEMMLowpMatrixMultiplyNativeKernel::run(), NEMinMaxLayerKernel::run(), NEGEMMLowpMatrixMultiplyKernel::run(), CLColorConvertKernel::run(), CLROIAlignLayerKernel::run(), CLDepthwiseIm2ColKernel::run(), GCGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLGEMMLowpMatrixMultiplyReshapedOnlyRHSKernel::run(), CLBatchToSpaceLayerKernel::run(), GCBatchNormalizationLayerKernel::run(), NEOpticalFlow::run(), CLDirectConvolutionLayerKernel::run(), CLBatchNormalizationLayerKernel::run(), NEBatchToSpaceLayerKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), CLGEMMLowpOffsetContributionKernel::run(), CLGEMMLowpMatrixMultiplyReshapedKernel::run(), CLGEMMMatrixMultiplyNativeKernel::run(), NEGEMMTranspose1xWKernel::run(), CLGEMMMatrixMultiplyKernel::run(), CLSpaceToBatchLayerKernel::run(), NELocallyConnectedLayer::run(), CLWinogradOutputTransformKernel::run(), CLGEMMMatrixMultiplyReshapedOnlyRHSKernel::run(), NEGEMM::run(), NEGEMMLowpMatrixAReductionKernel::run(), CLHOGBlockNormalizationKernel::run(), NEGaussianPyramidVertKernel::run(), CLIm2ColKernel::run(), GCLogits1DNormKernel::run(), CLGEMMMatrixMultiplyReshapedKernel::run(), NEGEMMLowpMatrixMultiplyCore::run(), NEDepthwiseConvolutionAssemblyDispatch::run(), NEHOGBlockNormalizationKernel::run(), NEGEMMLowpMatrixBReductionKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), CLLogits1DNormKernel::run(), NEDepthwiseConvolutionLayer::run(), arm_compute::run_reverse(), arm_compute::utils::save_to_ppm(), NEDeconvolutionLayer::validate(), CLLSTMLayerQuantized::validate(), NELSTMLayerQuantized::validate(), NELSTMLayer::validate(), CLLSTMLayer::validate(), and Window::x().

◆ DimY

constexpr size_t DimY = 1
static

Alias for dimension 1 also known as Y dimension.

Definition at line 45 of file Window.h.

Referenced by arm_compute::colorconvert_iyuv_to_nv12(), arm_compute::colorconvert_iyuv_to_rgb(), arm_compute::colorconvert_iyuv_to_yuv4(), arm_compute::colorconvert_nv12_to_iyuv(), arm_compute::colorconvert_nv12_to_rgb(), arm_compute::colorconvert_nv12_to_yuv4(), arm_compute::colorconvert_rgb_to_iyuv(), arm_compute::colorconvert_rgb_to_nv12(), arm_compute::colorconvert_yuyv_to_iyuv(), arm_compute::colorconvert_yuyv_to_nv12(), arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape(), arm_compute::test::validation::reference::concatenate_layer(), GCTransposeKernel::configure(), CLUpsampleLayerKernel::configure(), GCFillBorderKernel::configure(), CLHOGOrientationBinningKernel::configure(), CLFillBorderKernel::configure(), NEHOGDescriptor::configure(), CLHOGDescriptor::configure(), GCDepthConcatenateLayerKernel::configure(), NEHOGOrientationBinningKernel::configure(), CLIntegralImageVertKernel::configure(), CLROIPoolingLayerKernel::configure(), NEFillInnerBorderKernel::configure(), NEFillBorderKernel::configure(), CLColorConvertKernel::configure(), NEHOGDetectorKernel::configure(), NEColorConvertKernel::configure(), CLHOGDetectorKernel::configure(), NEROIPoolingLayerKernel::configure(), NEDirectConvolutionLayer::configure(), GCTensorShiftKernel::configure(), NEHOGMultiDetection::configure(), CLHOGMultiDetection::configure(), CLLKTrackerInitKernel::configure(), CLLSTMLayerQuantized::configure(), NELSTMLayerQuantized::configure(), CLLKTrackerFinalizeKernel::configure(), NEGEMMInterleavedWrapper::configure(), CLLKTrackerStage0Kernel::configure(), CLLKTrackerStage1Kernel::configure(), ITensor::copy_from(), arm_compute::utils::draw_detection_rectangle(), IImageLoader::fill_image(), IImageLoader::fill_planar_tensor(), IKernel::IKernel(), NEDepthwiseConvolutionAssemblyDispatch::is_optimized_supported(), NEGEMM::prepare(), NEGEMMLowpMatrixMultiplyCore::prepare(), INESimpleFunctionNoBorder::run(), ICPPSimpleFunction::run(), INESimpleFunction::run(), NEHistogram::run(), NEMeanStdDev::run(), GCGEMMMatrixAccumulateBiasesKernel::run(), NEGEMMLowpAssemblyMatrixMultiplyCore::run(), GCDepthwiseConvolutionLayer3x3Kernel::run(), CLHOGOrientationBinningKernel::run(), NEHOGDescriptor::run(), NEDerivative::run(), NEEqualizeHistogram::run(), NEMinMaxLocation::run(), GCGEMMTranspose1xWKernel::run(), CLGEMMMatrixAccumulateBiasesKernel::run(), NEGaussian5x5::run(), NEHOGGradient::run(), CPPUpsampleKernel::run(), CLGEMMMatrixVectorMultiplyKernel::run(), NEHOGOrientationBinningKernel::run(), CLSpaceToDepthLayerKernel::run(), NESobel5x5::run(), NESobel7x7::run(), NEGEMMMatrixAccumulateBiasesKernel::run(), CLDepthToSpaceLayerKernel::run(), CLPermuteKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), NEPoolingLayer::run(), NEReductionOperation::run(), NEArgMinMaxLayer::run(), CLChannelExtractKernel::run(), CLUpsampleLayerKernel::run(), GCDirectConvolutionLayerKernel< kernel_size >::run(), NEGEMMMatrixVectorMultiplyKernel::run(), NEHOGDetectorKernel::run(), NEDepthToSpaceLayerKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), GCPoolingLayerKernel::run(), CLPoolingLayerKernel::run(), NEFastCorners::run(), NEFFT1D::run(), NEL2NormalizeLayer::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLDepthwiseVectorToTensorKernel::run(), NEROIPoolingLayerKernel::run(), CLMinMaxLayerKernel::run(), CLPriorBoxLayerKernel::run(), NEStackLayer::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), GCGEMMInterleave4x4Kernel::run(), CLChannelCombineKernel::run(), NESpaceToDepthLayer::run(), NEPadLayer::run(), NENormalizationLayer::run(), NEPoolingLayerKernel::run(), CLMeanStdDevKernel::run(), NEScale::run(), NEHeightConcatenateLayerKernel::run(), CLReductionOperationKernel::run(), CLL2NormalizeLayerKernel::run(), CLGEMMLowpMatrixMultiplyKernel::run(), CLGEMMLowpMatrixMultiplyNativeKernel::run(), NEGEMMLowpMatrixMultiplyKernel::run(), NERNNLayer::run(), NECannyEdge::run(), CLColorConvertKernel::run(), CLDepthwiseIm2ColKernel::run(), GCGEMMMatrixMultiplyKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLGEMMLowpMatrixMultiplyReshapedOnlyRHSKernel::run(), NEBatchNormalizationLayer::run(), CLBatchToSpaceLayerKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLHarrisCorners::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), NESoftmaxLayer::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), NEHarrisCorners::run(), NEHOGMultiDetection::run(), NEBatchToSpaceLayerKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), CLDirectConvolutionLayerKernel::run(), NEConvolutionSquare< matrix_size >::run(), CLHOGMultiDetection::run(), CLGEMMLowpOffsetContributionKernel::run(), CLGaussianPyramidVertKernel::run(), CLGEMMMatrixMultiplyNativeKernel::run(), NEGaussianPyramidHalf::run(), CLGEMMMatrixMultiplyKernel::run(), NEGEMMTranspose1xWKernel::run(), CLGEMMLowpMatrixMultiplyReshapedKernel::run(), NELocallyConnectedLayer::run(), CLSpaceToBatchLayerKernel::run(), NEGEMM::run(), CLGEMMMatrixMultiplyReshapedOnlyRHSKernel::run(), CLWinogradOutputTransformKernel::run(), NEFuseBatchNormalization::run(), NEGEMMLowpMatrixAReductionKernel::run(), CLHOGBlockNormalizationKernel::run(), NEDirectConvolutionLayer::run(), NEGaussianPyramidVertKernel::run(), NESpaceToBatchLayer::run(), CLIm2ColKernel::run(), CLGEMMMatrixMultiplyReshapedKernel::run(), NEGEMMLowpMatrixMultiplyCore::run(), CLGEMMLowpMatrixBReductionKernel::run(), NEFullyConnectedLayer::run(), NEHOGBlockNormalizationKernel::run(), NEGEMMLowpMatrixBReductionKernel::run(), NELSTMLayer::run(), NEGEMMConvolutionLayer::run(), NEDepthwiseConvolutionLayer::run(), arm_compute::utils::save_to_ppm(), NEDeconvolutionLayer::validate(), CLLSTMLayerQuantized::validate(), NELSTMLayerQuantized::validate(), and Window::y().

◆ DimZ

constexpr size_t DimZ = 2
static

Alias for dimension 2 also known as Z dimension.

Definition at line 47 of file Window.h.

Referenced by arm_compute::misc::shape_calculator::compute_winograd_filter_transform_shape(), arm_compute::test::validation::reference::concatenate_layer(), CLDepthConvertLayerKernel::configure(), GCConcatenateLayer::configure(), CLUpsampleLayerKernel::configure(), GCFillBorderKernel::configure(), CLFillBorderKernel::configure(), GCDepthConcatenateLayerKernel::configure(), NEFillInnerBorderKernel::configure(), CLROIPoolingLayerKernel::configure(), NEFillBorderKernel::configure(), NEDirectConvolutionLayer::configure(), GCTensorShiftKernel::configure(), GCIm2ColKernel::configure(), NEGEMMInterleavedWrapper::configure(), IImageLoader::fill_planar_tensor(), NEDepthwiseConvolutionAssemblyDispatch::is_optimized_supported(), NEDeconvolutionLayer::prepare(), INESimpleFunction::run(), NEFillBorder::run(), NEMeanStdDev::run(), CLElementwiseOperationKernel::run(), NEConvertFullyConnectedWeights::run(), GCActivationLayerKernel::run(), NEDerivative::run(), NEMemsetKernel::run(), CLGEMMMatrixVectorMultiplyKernel::run(), CLFloorKernel::run(), NEGaussian5x5::run(), GCDepthConcatenateLayerKernel::run(), NEUpsampleLayer::run(), CLFlattenLayerKernel::run(), CLReshapeLayerKernel::run(), CLROIPoolingLayerKernel::run(), CLDepthToSpaceLayerKernel::run(), CLPermuteKernel::run(), CLCopyKernel::run(), CLReverseKernel::run(), NESobel5x5::run(), NESobel7x7::run(), CLSpaceToDepthLayerKernel::run(), GCLogits1DShiftExpSumKernel::run(), CLDeconvolutionLayerUpsampleKernel::run(), NEPoolingLayer::run(), CLMemsetKernel::run(), NEGEMMMatrixVectorMultiplyKernel::run(), CLNormalizationLayerKernel::run(), CLFFTScaleKernel::run(), CLFillBorderKernel::run(), CLUpsampleLayerKernel::run(), GCPoolingLayerKernel::run(), NEDepthToSpaceLayerKernel::run(), CLPoolingLayerKernel::run(), NEFFT1D::run(), CLComparisonKernel::run(), NEFastCorners::run(), CLGatherKernel::run(), CLActivationLayerKernel::run(), CLDepthwiseConvolutionLayerReshapeWeightsGenericKernel::run(), CLTileKernel::run(), CLDepthwiseConvolutionLayer3x3NCHWKernel::run(), CLDepthwiseVectorToTensorKernel::run(), CLFFTDigitReverseKernel::run(), CLMinMaxLayerKernel::run(), NEROIPoolingLayerKernel::run(), CLDepthwiseConvolutionLayer3x3NHWCKernel::run(), CLNormalizePlanarYUVLayerKernel::run(), CLScaleKernel::run(), NEPoolingLayerKernel::run(), CLSelectKernel::run(), NEScale::run(), CLReductionOperationKernel::run(), CLPixelWiseMultiplicationKernel::run(), CLYOLOLayerKernel::run(), CLL2NormalizeLayerKernel::run(), CLFFTRadixStageKernel::run(), CLStackLayerKernel::run(), NECannyEdge::run(), GCCol2ImKernel::run(), CLDepthwiseIm2ColKernel::run(), CLGEMMLowpMatrixAReductionKernel::run(), CLBatchToSpaceLayerKernel::run(), CLDeconvolutionReshapeOutputKernel::run(), NEPixelWiseMultiplicationKernel::run(), CLGEMMLowpQuantizeDownInt32ToInt16ScaleByFixedPointKernel::run(), CLWinogradInputTransformKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFloatKernel::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleByFixedPointKernel::run(), NEHarrisCorners::run(), CLGEMMLowpQuantizeDownInt32ToUint8ScaleKernel::run(), CLCol2ImKernel::run(), NEBatchToSpaceLayerKernel::run(), CLGEMMLowpOffsetContributionOutputStageKernel::run(), NEConvolutionSquare< matrix_size >::run(), CLGEMMLowpOffsetContributionKernel::run(), CLStridedSliceKernel::run(), CLFuseBatchNormalizationKernel::run(), NEGaussianPyramidHalf::run(), CLSpaceToBatchLayerKernel::run(), CLWinogradOutputTransformKernel::run(), NECropResize::run(), NEGEMMLowpMatrixAReductionKernel::run(), NEDirectConvolutionLayer::run(), GCLogits1DNormKernel::run(), CLIm2ColKernel::run(), CLGEMMLowpMatrixBReductionKernel::run(), CLComplexPixelWiseMultiplicationKernel::run(), NEGEMMLowpMatrixBReductionKernel::run(), CLLogits1DMaxShiftExpSumKernel::run(), CLLogits1DNormKernel::run(), NEDeconvolutionLayer::validate(), and Window::z().


The documentation for this class was generated from the following files: