Namespaces | Classes | Functions

mln::data::impl Namespace Reference

Implementation namespace of data namespace. More...

Namespaces

namespace  generic
 

Generic implementation namespace of data namespace.


Classes

struct  median_t
struct  value_psite_greater_
struct  value_psite_less_

Functions

template<typename V , typename I >
mln::trait::ch_value< I, V >::ret convert_identity (const V &v, const Image< I > &input)
template<typename I , typename W , typename O >
void fast_median (const I &input, const W &win, O &output)
template<typename I , typename O >
void hmedian (const I &input, const win::hline2d &win, O &output)
template<typename I , typename W , typename O >
void median_as_procedure (const I &input, const W &win, O &output)
template<typename I , typename M , unsigned i, typename C >
mln::trait::concrete< I >::ret median_line (const Image< I > &input, const win::line< M, i, C > &win)
template<typename Pd , typename Ps >
void memcpy__ (Pd &dest, const Ps &src, std::size_t n)
template<typename P >
void memset__ (P &pix, const typename P::value &v, std::size_t n)
template<typename I , typename J >
void paste_without_localization_fast (const Image< I > &input_, Image< J > &output_)
 Paste data to an image without using localization. Performs a point-wise copy.
template<typename I , typename J >
void paste_without_localization_fastest (const Image< I > &input_, Image< J > &output_)
 Paste data to an image without using localization. Performs a one-block memory copy.
template<typename I , typename J >
void paste_without_localization_lines (const Image< I > &input_, Image< J > &output_)
 Paste data to an image without using localization. Performs a line-per-line memory copy.
template<typename I >
util::array< unsigned > sort_offsets_decreasing_radix (const Image< I > &input_)
template<typename I >
util::array< unsigned > sort_offsets_increasing_radix (const Image< I > &input_)
template<typename I >
p_array< typename I::psite > sort_psites_decreasing_ (trait::image::quant::any, const I &input)
template<typename I >
p_array< typename I::psite > sort_psites_decreasing_ (trait::image::quant::low, const I &input)
template<typename I >
p_array< typename I::psite > sort_psites_increasing_ (trait::image::quant::low, const I &input)
template<typename I >
p_array< typename I::psite > sort_psites_increasing_ (trait::image::quant::any, const I &input)
template<typename V , typename I >
mln::trait::ch_value< I, V >::ret stretch (const V &v, const Image< I > &input)
 Generic implementation of data::stretch.
template<typename I , typename F >
void transform_inplace_fastest (Image< I > &ima_, const Function_v2v< F > &f_)
template<typename I1 , typename I2 , typename F >
void transform_inplace_fastest (Image< I1 > &ima_, const Image< I2 > &aux_, const Function_vv2v< F > &f_)
template<typename I , typename F >
void transform_inplace_fastest_lowq (Image< I > &input_, const Function_v2v< F > &f_)
template<typename I , typename F >
void transform_inplace_lowq (Image< I > &input_, const Function_v2v< F > &f_)
 Specialized implementation.
template<typename I , typename F >
void transform_inplace_singleton (Image< I > &input_, const Function_v2v< F > &f_)
template<typename I , typename F >
void transform_inplace_taken (Image< I > &input_, const Function_v2v< F > &f_)
template<typename A , typename I >
A::result update_fastest (Accumulator< A > &a_, const Image< I > &input_)
 Fastest implementation of data::update.

Detailed Description

Implementation namespace of data namespace.


Function Documentation

template<typename V , typename I >
mln::trait::ch_value< I , V >::ret mln::data::impl::convert_identity ( const V &  v,
const Image< I > &  input 
) [inline]
template<typename I , typename W , typename O >
void mln::data::impl::fast_median ( const I &  input,
const W &  win,
O &  output 
) [inline]
template<typename I , typename O >
void mln::data::impl::hmedian ( const I &  input,
const win::hline2d &  win,
O &  output 
)
template<typename I , typename W , typename O >
void mln::data::impl::median_as_procedure ( const I &  input,
const W &  win,
O &  output 
)
template<typename I , typename M , unsigned i, typename C >
mln::trait::concrete< I >::ret mln::data::impl::median_line ( const Image< I > &  input,
const win::line< M, i, C > &  win 
) [inline]
template<typename Pd , typename Ps >
void mln::data::impl::memcpy__ ( Pd &  dest,
const Ps &  src,
std::size_t  n 
) [inline]

Definition at line 77 of file memcpy_.hh.

Referenced by mln::data::memcpy_().

template<typename P >
void mln::data::impl::memset__ ( P &  pix,
const typename P::value &  v,
std::size_t  n 
) [inline]

Definition at line 87 of file memset_.hh.

References mln::trace::entering(), and mln::trace::exiting().

Referenced by mln::data::memset_().

template<typename I , typename J >
void mln::data::impl::paste_without_localization_fast ( const Image< I > &  input_,
Image< J > &  output_ 
) [inline]

Paste data to an image without using localization. Performs a point-wise copy.

input and output must have both the following properties:

They must also fulfill the following conditions:

  • Same domain size.

Definition at line 220 of file paste_without_localization.hh.

References mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::data::input, and mln::data::internal::paste_without_localization_tests().

Referenced by mln::data::internal::paste_without_localization_dispatch().

template<typename I , typename J >
void mln::data::impl::paste_without_localization_fastest ( const Image< I > &  input_,
Image< J > &  output_ 
) [inline]

Paste data to an image without using localization. Performs a one-block memory copy.

input and output must have both the following properties:

They must also fulfill the following conditions:

  • Same border size.
  • Same domain size.
  • Same value type.

Definition at line 142 of file paste_without_localization.hh.

References mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::data::input, and mln::data::internal::paste_without_localization_tests().

Referenced by mln::data::internal::paste_without_localization_dispatch().

template<typename I , typename J >
void mln::data::impl::paste_without_localization_lines ( const Image< I > &  input_,
Image< J > &  output_ 
) [inline]

Paste data to an image without using localization. Performs a line-per-line memory copy.

input and output must have both the following properties:

They must also fulfill the following conditions:

  • Same domain size.
  • Same value type.

Definition at line 179 of file paste_without_localization.hh.

References mln::trace::entering(), mln::exact(), mln::trace::exiting(), mln::data::input, and mln::data::internal::paste_without_localization_tests().

Referenced by mln::data::internal::paste_without_localization_dispatch().

template<typename I >
util::array<unsigned> mln::data::impl::sort_offsets_decreasing_radix ( const Image< I > &  input_  )  [inline]
template<typename I >
util::array<unsigned> mln::data::impl::sort_offsets_increasing_radix ( const Image< I > &  input_  )  [inline]
template<typename I >
p_array<typename I ::psite> mln::data::impl::sort_psites_decreasing_ ( trait::image::quant::any  ,
const I &  input 
) [inline]
template<typename I >
p_array<typename I ::psite> mln::data::impl::sort_psites_decreasing_ ( trait::image::quant::low  ,
const I &  input 
) [inline]

Definition at line 184 of file sort_psites.hh.

References mln::data::compute(), mln::data::input, and mln::geom::nsites().

template<typename I >
p_array<typename I ::psite> mln::data::impl::sort_psites_increasing_ ( trait::image::quant::low  ,
const I &  input 
) [inline]

Definition at line 140 of file sort_psites.hh.

References mln::data::compute(), mln::data::input, and mln::geom::nsites().

template<typename I >
p_array<typename I ::psite> mln::data::impl::sort_psites_increasing_ ( trait::image::quant::any  ,
const I &  input 
) [inline]
template<typename V , typename I >
mln::trait::ch_value< I , V >::ret mln::data::impl::stretch ( const V &  v,
const Image< I > &  input 
) [inline]

Generic implementation of data::stretch.

Parameters:
[in] v A value to set the output value type.
[in] input The input image.
Returns:
A stretch image with values of the same type as v.

Definition at line 83 of file stretch.hh.

References mln::trace::entering(), mln::trace::exiting(), mln::initialize(), mln::estim::min_max(), mln::data::transform(), and mln::trace::warning().

Referenced by mln::data::stretch().

template<typename I , typename F >
void mln::data::impl::transform_inplace_fastest ( Image< I > &  ima_,
const Function_v2v< F > &  f_ 
)
template<typename I1 , typename I2 , typename F >
void mln::data::impl::transform_inplace_fastest ( Image< I1 > &  ima_,
const Image< I2 > &  aux_,
const Function_vv2v< F > &  f_ 
)
template<typename I , typename F >
void mln::data::impl::transform_inplace_fastest_lowq ( Image< I > &  input_,
const Function_v2v< F > &  f_ 
)
template<typename I , typename F >
void mln::data::impl::transform_inplace_lowq ( Image< I > &  input_,
const Function_v2v< F > &  f_ 
)
template<typename I , typename F >
void mln::data::impl::transform_inplace_singleton ( Image< I > &  input_,
const Function_v2v< F > &  f_ 
)
template<typename I , typename F >
void mln::data::impl::transform_inplace_taken ( Image< I > &  input_,
const Function_v2v< F > &  f_ 
)
template<typename A , typename I >
A ::result mln::data::impl::update_fastest ( Accumulator< A > &  a_,
const Image< I > &  input_ 
) [inline]

Fastest implementation of data::update.

Parameters:
[in] a_ The accumulator.
[in] input_ The input image.
Returns:
The accumulator result.

Definition at line 129 of file update.hh.

References mln::trace::entering(), mln::exact(), mln::trace::exiting(), and mln::data::internal::update_tests().

Referenced by mln::data::internal::update_dispatch().