libpsynth 0.2.1
Classes | Namespaces | Functions
/home/raskolnikov/dev/psynth/trunk/src/psynth/sound/channel_base_algorithm.hpp File Reference

Time-stamp: <2010-11-07 15:59:33 raskolnikov> More...

#include <algorithm>
#include <boost/type_traits.hpp>
#include <boost/utility/enable_if.hpp>
#include <boost/mpl/contains.hpp>
#include <boost/mpl/at.hpp>
#include <psynth/base/compat.hpp>
#include <psynth/sound/concept.hpp>
#include <psynth/sound/util.hpp>
Include dependency graph for channel_base_algorithm.hpp:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  psynth::sound::size< ChannelBase >
 Returns an MPL integral type specifying the number of elements in a channel base. More...
struct  psynth::sound::kth_semantic_element_type< ChannelBase, K >
 Specifies the type of the K-th semantic element of a channel base. More...
struct  psynth::sound::kth_semantic_element_reference_type< ChannelBase, K >
 Specifies the return type of the mutable semantic_at_c<K>(channel_base);. More...
struct  psynth::sound::kth_semantic_element_const_reference_type< ChannelBase, K >
 Specifies the return type of the constant semantic_at_c<K>(channel_base);. More...
struct  psynth::sound::contains_channel< ChannelBase, Channel >
 A predicate metafunction determining whether a given channel base contains a given channel. More...
struct  psynth::sound::channel_index_type< ChannelBase, Channel >
struct  psynth::sound::channel_element_type< ChannelBase, Channel >
 Specifies the type of the element associated with a given channel tag. More...
struct  psynth::sound::channel_element_reference_type< ChannelBase, Channel >
 Specifies the return type of the mutable element accessor by channel name, get_channel(channel_base, Channel());. More...
struct  psynth::sound::channel_element_const_reference_type< ChannelBase, Channel >
 Specifies the return type of the constant element accessor by channel name, get_channel(channel_base, Channel());. More...
struct  psynth::sound::element_type< ChannelBase >
 Specifies the element type of a homogeneous channel base. More...
struct  psynth::sound::element_reference_type< ChannelBase >
 Specifies the return type of the mutable element accessor sound::at_c of a homogeneous channel base. More...
struct  psynth::sound::element_const_reference_type< ChannelBase >
 Specifies the return type of the constant element accessor sound::at_c of a homogeneous channel base. More...
struct  psynth::sound::detail::element_recursion< N >
struct  psynth::sound::detail::element_recursion< 0 >
struct  psynth::sound::detail::min_max_recur< N >
struct  psynth::sound::detail::min_max_recur< 1 >

Namespaces

namespace  psynth
namespace  psynth::sound
namespace  psynth::sound::detail
 

interleaved_range_get_raw_data, planar_range_get_raw_data - return pointers to the raw data (the samples) of a basic homogeneous range.


Functions

template<int K, typename ChannelBase >
boost::disable_if
< boost::is_const< ChannelBase >
, typename
kth_semantic_element_reference_type
< ChannelBase, K >::type >
::type 
psynth::sound::semantic_at_c (ChannelBase &p)
 A mutable accessor to the K-th semantic element of a channel base.
template<int K, typename ChannelBase >
kth_semantic_element_const_reference_type
< ChannelBase, K >::type 
psynth::sound::semantic_at_c (const ChannelBase &p)
 A constant accessor to the K-th semantic element of a channel base.
template<typename ChannelBase , typename Channel >
channel_element_reference_type
< ChannelBase, Channel >::type 
psynth::sound::get_channel (ChannelBase &cb, Channel=Channel())
 Mutable accessor to the element associated with a given channel name.
template<typename ChannelBase , typename Channel >
channel_element_const_reference_type
< ChannelBase, Channel >::type 
psynth::sound::get_channel (const ChannelBase &cb, Channel=Channel())
 Constant accessor to the element associated with a given channel name.
template<typename Q >
const Q & psynth::sound::detail::mutable_min (const Q &x, const Q &y)
template<typename Q >
Q & psynth::sound::detail::mutable_min (Q &x, Q &y)
template<typename Q >
const Q & psynth::sound::detail::mutable_max (const Q &x, const Q &y)
template<typename Q >
Q & psynth::sound::detail::mutable_max (Q &x, Q &y)
template<typename P >
PSYNTH_FORCEINLINE
element_const_reference_type
< P >::type 
psynth::sound::static_max (const P &p)
template<typename P >
PSYNTH_FORCEINLINE
element_reference_type< P >
::type 
psynth::sound::static_max (P &p)
template<typename P >
PSYNTH_FORCEINLINE
element_const_reference_type
< P >::type 
psynth::sound::static_min (const P &p)
template<typename P >
PSYNTH_FORCEINLINE
element_reference_type< P >
::type 
psynth::sound::static_min (P &p)
template<typename P1 , typename P2 >
PSYNTH_FORCEINLINE bool psynth::sound::static_equal (const P1 &p1, const P2 &p2)
template<typename Src , typename Dst >
PSYNTH_FORCEINLINE void psynth::sound::static_copy (const Src &src, Dst &dst)
template<typename P , typename V >
PSYNTH_FORCEINLINE void psynth::sound::static_fill (P &p, const V &v)
template<typename P1 , typename Op >
PSYNTH_FORCEINLINE void psynth::sound::static_generate (P1 &dst, Op op)
template<typename Src , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (Src &src, Dst &dst, Op op)
template<typename Src , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (const Src &src, Dst &dst, Op op)
template<typename P2 , typename P3 , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (P2 &p2, P3 &p3, Dst &dst, Op op)
template<typename P2 , typename P3 , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (P2 &p2, const P3 &p3, Dst &dst, Op op)
template<typename P2 , typename P3 , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (const P2 &p2, P3 &p3, Dst &dst, Op op)
template<typename P2 , typename P3 , typename Dst , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_transform (const P2 &p2, const P3 &p3, Dst &dst, Op op)
template<typename P1 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, Op op)
template<typename P1 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, Op op)
template<typename P1 , typename P2 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, P2 &p2, Op op)
template<typename P1 , typename P2 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, const P2 &p2, Op op)
template<typename P1 , typename P2 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, P2 &p2, Op op)
template<typename P1 , typename P2 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, const P2 &p2, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, P2 &p2, P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, P2 &p2, const P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, const P2 &p2, P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (P1 &p1, const P2 &p2, const P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, P2 &p2, P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, P2 &p2, const P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, const P2 &p2, P3 &p3, Op op)
template<typename P1 , typename P2 , typename P3 , typename Op >
PSYNTH_FORCEINLINE Op psynth::sound::static_for_each (const P1 &p1, const P2 &p2, const P3 &p3, Op op)

Detailed Description

Time-stamp: <2010-11-07 15:59:33 raskolnikov>

Author:
Juan Pedro Bolivar Puente <raskolnikov@es.gnu.org>
Date:
Fri Oct 29 13:53:18 2010

Frame related algorithms.