|
libpsynth 0.2.1
|
Represents a run-time specified buffer range. More...
#include <dynamic_buffer_range.hpp>


Public Types | |
| typedef dynamic_buffer_range < typename detail::ranges_get_const_type < BufferRangeTypes >::type > | const_range |
| typedef std::size_t | size_type |
| typedef std::ptrdiff_t | difference_type |
Public Member Functions | |
| dynamic_buffer_range () | |
| template<typename T > | |
| dynamic_buffer_range (const T &obj) throw () | |
| dynamic_buffer_range (const dynamic_buffer_range &v) | |
| template<typename T > | |
| dynamic_buffer_range & | operator= (const T &obj) |
| dynamic_buffer_range & | operator= (const dynamic_buffer_range &v) |
| std::size_t | num_samples () const |
| size_type | size () const |
Represents a run-time specified buffer range.
Models HasDynamicXStepTypeConcept, HasDynamicYStepTypeConcept, Note that this class does NOT model BufferRangeConcept
Represents a range whose type (color space, layout, planar/interleaved organization, etc) can be specified at run time. It is the runtime equivalent of buffer_range.
Some of the requirements of BufferRangeConcept, such as the value_type typedef cannot be fulfilled, since the language does not allow runtime type specification. Other requirements, such as access to the frames, would be inefficient to provide. Thus dynamic_buffer_range does not fully model BufferRangeConcept. However, many algorithms provide overloads taking runtime specified ranges and thus in many cases dynamic_buffer_range can be used in places taking a range.
To perform an algorithm on dynamic_buffer_range, put the algorithm in a function object and invoke it by calling apply_operation(runtime_range, algorithm_fn);
| typedef dynamic_buffer_range< typename detail::ranges_get_const_type<BufferRangeTypes>::type> psynth::sound::dynamic_buffer_range< BufferRangeTypes >::const_range |
| typedef std::ptrdiff_t psynth::sound::dynamic_buffer_range< BufferRangeTypes >::difference_type |
| typedef std::size_t psynth::sound::dynamic_buffer_range< BufferRangeTypes >::size_type |
| psynth::sound::dynamic_buffer_range< BufferRangeTypes >::dynamic_buffer_range | ( | ) | [inline] |
| psynth::sound::dynamic_buffer_range< BufferRangeTypes >::dynamic_buffer_range | ( | const T & | obj | ) | throw () [inline, explicit] |
| psynth::sound::dynamic_buffer_range< BufferRangeTypes >::dynamic_buffer_range | ( | const dynamic_buffer_range< BufferRangeTypes > & | v | ) | [inline] |
| std::size_t psynth::sound::dynamic_buffer_range< BufferRangeTypes >::num_samples | ( | ) | const [inline] |
| dynamic_buffer_range& psynth::sound::dynamic_buffer_range< BufferRangeTypes >::operator= | ( | const dynamic_buffer_range< BufferRangeTypes > & | v | ) | [inline] |
| dynamic_buffer_range& psynth::sound::dynamic_buffer_range< BufferRangeTypes >::operator= | ( | const T & | obj | ) | [inline] |
Reimplemented from psynth::sound::variant< BufferRangeTypes >.
| size_type psynth::sound::dynamic_buffer_range< BufferRangeTypes >::size | ( | ) | const [inline] |
1.7.4