LMMS
Loading...
Searching...
No Matches
Multi_Buffer Class Referenceabstract

#include <Multi_Buffer.h>

Inheritance diagram for Multi_Buffer:
Effects_Buffer Mono_Buffer Silent_Buffer Stereo_Buffer

Classes

struct  channel_t

Public Types

enum  { type_index_mask = 0xFF }
enum  { wave_type = 0x100 , noise_type = 0x200 , mixed_type = wave_type | noise_type }

Public Member Functions

 Multi_Buffer (int samples_per_frame)
virtual ~Multi_Buffer ()
virtual blargg_err_t set_channel_count (int)
virtual channel_t channel (int index, int type)=0
virtual blargg_err_t set_sample_rate (long rate, int msec=blip_default_length)=0
virtual void clock_rate (long)=0
virtual void bass_freq (int)=0
virtual void clear ()=0
long sample_rate () const
int length () const
virtual void end_frame (blip_time_t)=0
int samples_per_frame () const
unsigned channels_changed_count ()
virtual long read_samples (blip_sample_t *, long)=0
virtual long samples_avail () const =0

Protected Member Functions

void channels_changed ()

Private Member Functions

 Multi_Buffer (const Multi_Buffer &)
Multi_Bufferoperator= (const Multi_Buffer &)

Private Attributes

unsigned channels_changed_count_
long sample_rate_
int length_
int const samples_per_frame_

Member Enumeration Documentation

◆ anonymous enum

anonymous enum
Enumerator
wave_type 
noise_type 
mixed_type 

◆ anonymous enum

anonymous enum
Enumerator
type_index_mask 

Constructor & Destructor Documentation

◆ Multi_Buffer() [1/2]

Multi_Buffer::Multi_Buffer ( int samples_per_frame)

◆ ~Multi_Buffer()

virtual Multi_Buffer::~Multi_Buffer ( )
inlinevirtual

◆ Multi_Buffer() [2/2]

Multi_Buffer::Multi_Buffer ( const Multi_Buffer & )
private

Member Function Documentation

◆ bass_freq()

virtual void Multi_Buffer::bass_freq ( int )
pure virtual

◆ channel()

virtual channel_t Multi_Buffer::channel ( int index,
int type )
pure virtual

◆ channels_changed()

void Multi_Buffer::channels_changed ( )
inlineprotected

◆ channels_changed_count()

unsigned Multi_Buffer::channels_changed_count ( )
inline

◆ clear()

virtual void Multi_Buffer::clear ( )
pure virtual

◆ clock_rate()

virtual void Multi_Buffer::clock_rate ( long )
pure virtual

◆ end_frame()

virtual void Multi_Buffer::end_frame ( blip_time_t )
pure virtual

◆ length()

int Multi_Buffer::length ( ) const
inline

◆ operator=()

Multi_Buffer & Multi_Buffer::operator= ( const Multi_Buffer & )
private

◆ read_samples()

virtual long Multi_Buffer::read_samples ( blip_sample_t * ,
long  )
pure virtual

◆ sample_rate()

long Multi_Buffer::sample_rate ( ) const
inline

◆ samples_avail()

virtual long Multi_Buffer::samples_avail ( ) const
pure virtual

◆ samples_per_frame()

int Multi_Buffer::samples_per_frame ( ) const
inline

◆ set_channel_count()

blargg_err_t Multi_Buffer::set_channel_count ( int )
virtual

◆ set_sample_rate()

blargg_err_t Multi_Buffer::set_sample_rate ( long rate,
int msec = blip_default_length )
inlinepure virtual

Member Data Documentation

◆ channels_changed_count_

unsigned Multi_Buffer::channels_changed_count_
private

◆ length_

int Multi_Buffer::length_
private

◆ sample_rate_

long Multi_Buffer::sample_rate_
private

◆ samples_per_frame_

int const Multi_Buffer::samples_per_frame_
private

The documentation for this class was generated from the following files: