LMMS
Loading...
Searching...
No Matches
juce::dsp::detail Namespace Reference

Classes

struct  Vtable
struct  UseContextDirectly

Typedefs

template<typename T>
using TupleIndexSequence = std::make_index_sequence<std::tuple_size<std::remove_cv_t<std::remove_reference_t<T>>>::value>

Functions

template<typename Fn>
void move (void *from, void *to)
template<typename Fn, typename Ret, typename... Args>
std::enable_if< std::is_same< Ret, void >::value, Ret >::type call (void *s, Args... args)
template<typename Fn, typename Ret, typename... Args>
std::enable_if<!std::is_same< Ret, void >::value, Ret >::type call (void *s, Args... args)
template<typename Fn>
void clear (void *s)
template<typename Fn, typename Ret, typename... Args>
constexpr Vtable< Ret, Args... > makeVtable ()
template<typename Fn, typename Tuple, size_t... Ix>
constexpr void forEachInTuple (Fn &&fn, Tuple &&tuple, std::index_sequence< Ix... >)
template<typename Fn, typename Tuple>
constexpr void forEachInTuple (Fn &&fn, Tuple &&tuple)

Detailed Description

The contents of this namespace are used to implement ProcessorChain and should not be used elsewhere. Their interfaces (and existence) are liable to change!

Typedef Documentation

◆ TupleIndexSequence

template<typename T>
using juce::dsp::detail::TupleIndexSequence = std::make_index_sequence<std::tuple_size<std::remove_cv_t<std::remove_reference_t<T>>>::value>

Function Documentation

◆ call() [1/2]

template<typename Fn, typename Ret, typename... Args>
std::enable_if<!std::is_same< Ret, void >::value, Ret >::type juce::dsp::detail::call ( void * s,
Args... args )

◆ call() [2/2]

template<typename Fn, typename Ret, typename... Args>
std::enable_if< std::is_same< Ret, void >::value, Ret >::type juce::dsp::detail::call ( void * s,
Args... args )

◆ clear()

template<typename Fn>
void juce::dsp::detail::clear ( void * s)

◆ forEachInTuple() [1/2]

template<typename Fn, typename Tuple>
void juce::dsp::detail::forEachInTuple ( Fn && fn,
Tuple && tuple )
constexpr

◆ forEachInTuple() [2/2]

template<typename Fn, typename Tuple, size_t... Ix>
void juce::dsp::detail::forEachInTuple ( Fn && fn,
Tuple && tuple,
std::index_sequence< Ix... >  )
constexpr

◆ makeVtable()

template<typename Fn, typename Ret, typename... Args>
Vtable< Ret, Args... > juce::dsp::detail::makeVtable ( )
constexpr

◆ move()

template<typename Fn>
void juce::dsp::detail::move ( void * from,
void * to )