Project
Loading...
Searching...
No Matches
algorithm.h File Reference

helper functionalities useful for packing operations More...

#include <array>
#include <cstdint>
#include <cstring>
#include <type_traits>
#include "rANS/internal/common/utils.h"
#include "rANS/internal/common/containertraits.h"
#include "rANS/internal/transform/algorithmImpl.h"

Go to the source code of this file.

Namespaces

namespace  o2
 a couple of static helper functions to create timestamp values for CCDB queries or override obsolete objects
 
namespace  o2::rans
 
namespace  o2::rans::internal
 

Functions

template<class IT , std::enable_if_t< isPair_v< typename std::iterator_traits< IT >::value_type >, bool > = true>
auto o2::rans::internal::getValue (IT iter) -> typename std::iterator_traits< IT >::value_type::second_type
 
template<typename source_T , typename value_T >
auto o2::rans::internal::getValue (const std::pair< source_T, value_T > &pair) -> value_T
 
template<class IT , std::enable_if_t< isPair_v< typename std::iterator_traits< IT >::value_type >, bool > = true>
void o2::rans::internal::setValue (IT iter, const typename std::iterator_traits< IT >::value_type::second_type &value)
 
template<class IT , std::enable_if_t< std::is_pointer_v< std::remove_reference_t< IT > >, bool > = true>
void o2::rans::internal::setValue (IT iter, std::add_lvalue_reference_t< std::add_const_t< typename std::iterator_traits< IT >::value_type > > value)
 
template<typename container_T , std::enable_if_t< isDenseContainer_v< container_T >, bool > = true>
constexpr auto o2::rans::internal::getIndex (const container_T &container, typename container_T::const_iterator iter) -> typename container_T::source_type
 
template<typename container_T , class F >
void o2::rans::internal::forEachIndexValue (const container_T &container, typename container_T::const_iterator begin, typename container_T::const_iterator end, F functor)
 
template<typename container_T , class F , std::enable_if_t< isStorageContainer_v< container_T >, bool > = true>
void o2::rans::internal::forEachIndexValue (container_T &container, typename container_T::iterator begin, typename container_T::iterator end, F functor)
 
template<typename container_T , class F >
void o2::rans::internal::forEachIndexValue (const container_T &container, F functor)
 
template<typename container_T , class F >
void o2::rans::internal::forEachIndexValue (container_T &container, F functor)
 
template<typename container_T >
auto o2::rans::internal::trim (typename container_T::iterator begin, typename container_T::iterator end, typename container_T::const_reference zeroElem={}) -> std::pair< typename container_T::iterator, typename container_T::iterator >
 
template<typename container_T >
auto o2::rans::internal::trim (typename container_T::const_iterator begin, typename container_T::const_iterator end, typename container_T::const_reference zeroElem={}) -> std::pair< typename container_T::const_iterator, typename container_T::const_iterator >
 
template<typename container_T , std::enable_if_t< isStorageContainer_v< container_T >, bool > = true>
decltype(auto) o2::rans::internal::trim (container_T &container, const typename container_T::value_type &zeroElem={})
 
template<typename container_T , std::enable_if_t< isContainer_v< container_T >, bool > = true>
decltype(auto) o2::rans::internal::trim (const container_T &container, const typename container_T::value_type &zeroElem={})
 
template<class container_T , std::enable_if_t< isDenseContainer_v< container_T >||isAdaptiveContainer_v< container_T >||isSetContainer_v< container_T >, bool > = true>
auto o2::rans::internal::getMinMax (const container_T &container, typename container_T::const_iterator begin, typename container_T::const_iterator end, typename container_T::const_reference zeroElem={}) -> std::pair< typename container_T::source_type, typename container_T::source_type >
 
template<typename container_T >
auto o2::rans::internal::getMinMax (const container_T &container, typename container_T::const_reference zeroElem={}) -> std::pair< typename container_T::source_type, typename container_T::source_type >
 

Detailed Description

helper functionalities useful for packing operations

Author
Michael Lettrich

Definition in file algorithm.h.