Boost GIL


Classes | Functions
Histogram-Helpers

Helper implementations supporting the histogram class. More...

Classes

struct  hash_tuple< T >
 Functor provided for the hashing of tuples. The following approach makes use hash_combine from boost::container_hash. Although there is a direct hashing available for tuples, this approach will ease adopting in future to a std::hash_combine. In case std::hash extends support to tuples this functor as well as the helper implementation hash_tuple_impl can be removed. More...
 
struct  tuple_limit< Tuple >
 Provides equivalent of std::numeric_limits for type std::tuple tuple_limit gets called with only tuples having integral elements. More...
 
struct  filler< Dimension >
 Filler is used to fill the histogram class with all values between a specified range This functor is used when sparsefill is false, since all the keys need to be present in that case. Currently on 1D implementation is available, extend by adding specialization for 2D and higher dimensional cases. More...
 
struct  filler< 1 >
 Specialisation for 1D histogram. More...
 

Functions

template<std::size_t Index, typename... T>
auto hash_tuple_impl (std::size_t &, std::tuple< T... > const &) -> typename std::enable_if< Index==sizeof...(T), void >::type
 
template<typename Pixel , std::size_t... I>
auto pixel_to_tuple (Pixel const &p, boost::mp11::index_sequence< I... >) -> decltype(std::make_tuple(p[I]...))
 
template<typename Tuple , std::size_t... I>
auto tuple_to_tuple (Tuple const &t, boost::mp11::index_sequence< I... >) -> decltype(std::make_tuple(std::get< I >(t)...))
 
template<typename Tuple , std::size_t... I>
bool tuple_compare (Tuple const &t1, Tuple const &t2, boost::mp11::index_sequence< I... >)
 
template<typename Tuple >
bool tuple_compare (Tuple const &t1, Tuple const &t2)
 Compares 2 tuples and outputs t1 <= t2 Comparison is not in a lexicographic manner but on every element of the tuple hence (2, 2) > (1, 3) evaluates to false.
 

Detailed Description

Helper implementations supporting the histogram class.

Function Documentation

◆ pixel_to_tuple()

auto boost::gil::detail::pixel_to_tuple ( Pixel const &  p,
boost::mp11::index_sequence< I... >   
) -> decltype(std::make_tuple(p[I]...))
Todo:
With C++14 and using auto we don't need the decltype anymore

◆ tuple_to_tuple()

auto boost::gil::detail::tuple_to_tuple ( Tuple const &  t,
boost::mp11::index_sequence< I... >   
) -> decltype(std::make_tuple(std::get<I>(t)...))
Todo:
With C++14 and using auto we don't need the decltype anymore