Expression Templates Library (ETL)
Static Public Member Functions | List of all members
etl::impl::standard::avg_pool_3d Struct Reference

Functor for 3D Average Pooling. More...

#include <avg_pooling.hpp>

Static Public Member Functions

template<typename A >
static auto pool_block_border (const A &sub, size_t i, size_t j, size_t k, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3, size_t p1, size_t p2, size_t p3)
 Pool a block of the sub expression. More...
 
template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, typename A >
static auto pool_block_3d (const A &sub, size_t i, size_t j, size_t k)
 Pool a block of the sub expression. More...
 
template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, typename A >
static auto pool_block_4d (const A &sub, size_t n, size_t i, size_t j, size_t k)
 Pool a block of the sub expression. More...
 
template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_3d A, typename M >
static void apply (const A &sub, M &&m)
 Apply the functor on sub and store the result in m. More...
 
template<typename A >
static auto pool_block_3d (const A &sub, size_t i, size_t j, size_t k, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3, size_t p1, size_t p2, size_t p3)
 Pool a block of the sub expression. More...
 
template<typename A >
static auto pool_block_4d (const A &sub, size_t n, size_t i, size_t j, size_t k, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3)
 Pool a block of the sub expression. More...
 
template<etl_3d A, typename M >
static void apply (const A &sub, M &&m, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3, size_t p1, size_t p2, size_t p3)
 Apply the functor on sub and store the result in m. More...
 
template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_4d A, typename M >
static void apply (const A &sub, M &&m)
 Apply the functor on sub and store the result in m. More...
 
template<etl_4d A, typename M >
static void apply (const A &sub, M &&m, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3, size_t p1, size_t p2, size_t p3)
 Apply the functor on sub and store the result in m. More...
 
template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_5d_and_plus A, typename M >
static void apply (const A &sub, M &&m)
 Apply the functor on sub and store the result in m. More...
 
template<etl_5d_and_plus A, typename M >
static void apply (const A &sub, M &&m, size_t c1, size_t c2, size_t c3, size_t s1, size_t s2, size_t s3, size_t p1, size_t p2, size_t p3)
 Apply the functor on sub and store the result in m. More...
 

Detailed Description

Functor for 3D Average Pooling.

Member Function Documentation

◆ apply() [1/6]

template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_3d A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
Template Parameters
C1The first dimension pooling ratio
C2The second dimension pooling ratio
C3The third dimension pooling ratio

◆ apply() [2/6]

template<etl_3d A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3,
size_t  p1,
size_t  p2,
size_t  p3 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio

◆ apply() [3/6]

template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_4d A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
Template Parameters
C1The first dimension pooling ratio
C2The second dimension pooling ratio
C3The third dimension pooling ratio

◆ apply() [4/6]

template<etl_4d A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3,
size_t  p1,
size_t  p2,
size_t  p3 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio

◆ apply() [5/6]

template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, etl_5d_and_plus A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
Template Parameters
C1The first dimension pooling ratio
C2The second dimension pooling ratio
C3The third dimension pooling ratio

◆ apply() [6/6]

template<etl_5d_and_plus A, typename M >
static void etl::impl::standard::avg_pool_3d::apply ( const A &  sub,
M &&  m,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3,
size_t  p1,
size_t  p2,
size_t  p3 
)
inlinestatic

Apply the functor on sub and store the result in m.

Parameters
subThe sub expression
mThe storage matrix
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio

◆ pool_block_3d() [1/2]

template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, size_t P1, size_t P2, size_t P3, typename A >
static auto etl::impl::standard::avg_pool_3d::pool_block_3d ( const A &  sub,
size_t  i,
size_t  j,
size_t  k 
)
inlinestatic

Pool a block of the sub expression.

Parameters
subThe sub expression
iThe first index of the block
jThe second index of the block
kThe third index of the block
Template Parameters
C1The first dimension pooling ratio
C2The second dimension pooling ratio
C3The third dimension pooling ratio

◆ pool_block_3d() [2/2]

template<typename A >
static auto etl::impl::standard::avg_pool_3d::pool_block_3d ( const A &  sub,
size_t  i,
size_t  j,
size_t  k,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3,
size_t  p1,
size_t  p2,
size_t  p3 
)
inlinestatic

Pool a block of the sub expression.

Parameters
subThe sub expression
iThe first index of the block
jThe second index of the block
kThe third index of the block
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio

◆ pool_block_4d() [1/2]

template<size_t C1, size_t C2, size_t C3, size_t S1, size_t S2, size_t S3, typename A >
static auto etl::impl::standard::avg_pool_3d::pool_block_4d ( const A &  sub,
size_t  n,
size_t  i,
size_t  j,
size_t  k 
)
inlinestatic

Pool a block of the sub expression.

Parameters
subThe sub expression
iThe first index of the block
jThe second index of the block
kThe third index of the block
Template Parameters
C1The first dimension pooling ratio
C2The second dimension pooling ratio
C3The third dimension pooling ratio

◆ pool_block_4d() [2/2]

template<typename A >
static auto etl::impl::standard::avg_pool_3d::pool_block_4d ( const A &  sub,
size_t  n,
size_t  i,
size_t  j,
size_t  k,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3 
)
inlinestatic

Pool a block of the sub expression.

Parameters
subThe sub expression
iThe first index of the block
jThe second index of the block
kThe third index of the block
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio

◆ pool_block_border()

template<typename A >
static auto etl::impl::standard::avg_pool_3d::pool_block_border ( const A &  sub,
size_t  i,
size_t  j,
size_t  k,
size_t  c1,
size_t  c2,
size_t  c3,
size_t  s1,
size_t  s2,
size_t  s3,
size_t  p1,
size_t  p2,
size_t  p3 
)
inlinestatic

Pool a block of the sub expression.

Parameters
subThe sub expression
iThe first index of the block
jThe second index of the block
kThe third index of the block
c1The first dimension pooling ratio
c2The second dimension pooling ratio
c3The third dimension pooling ratio
s1The first dimension stride
s2The second dimension stride
s3The third dimension stride
p1The first dimension padding
p2The second dimension padding
p3The third dimension padding

The documentation for this struct was generated from the following file: