neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::audio_bitstream< Interface > Class Template Reference

#include <audio_bitstream.hpp>

Inheritance diagram for neogfx::audio_bitstream< Interface >:
neolib::reference_counted< Base, DeallocateOnRelease >

Public Member Functions

 audio_bitstream (audio_sample_rate aSampleRate, float aAmplitude=1.0f)
 
 audio_bitstream (i_audio_device const &aDevice, float aAmplitude=1.0f)
 
 ~audio_bitstream ()
 
audio_sample_rate sample_rate () const final
 
void set_sample_rate (audio_sample_rate aSampleRate) override
 
float amplitude () const final
 
void set_amplitude (float aAmplitude) final
 
bool has_envelope () const final
 
adsr_envelope const & envelope () const final
 
void clear_envelope () final
 
void set_envelope (adsr_envelope const &aEnvelope) final
 
- Public Member Functions inherited from neolib::reference_counted< Base, DeallocateOnRelease >
 reference_counted () noexcept
 
 reference_counted (const reference_counted &aOther) noexcept
 
 ~reference_counted ()
 
reference_countedoperator= (const reference_counted &)
 
void add_ref () const noexcept override
 
void release () const override
 
int32_t use_count () const noexcept override
 
const base_type * release_and_take_ownership () const override
 
base_type * release_and_take_ownership () override
 
void pin () const noexcept override
 
void unpin () const override
 
i_ref_control_blockcontrol_block () override
 

Protected Member Functions

float apply_envelope (audio_sample_index aIndex, audio_sample_count aLength) const
 

Detailed Description

template<typename Interface>
class neogfx::audio_bitstream< Interface >

Definition at line 29 of file audio_bitstream.hpp.

Constructor & Destructor Documentation

◆ audio_bitstream() [1/2]

template<typename Interface >
neogfx::audio_bitstream< Interface >::audio_bitstream ( audio_sample_rate  aSampleRate,
float  aAmplitude = 1.0f 
)
inline

Definition at line 27 of file audio_bitstream.ipp.

◆ audio_bitstream() [2/2]

template<typename Interface >
neogfx::audio_bitstream< Interface >::audio_bitstream ( i_audio_device const &  aDevice,
float  aAmplitude = 1.0f 
)
inline

Definition at line 33 of file audio_bitstream.ipp.

◆ ~audio_bitstream()

template<typename Interface >
neogfx::audio_bitstream< Interface >::~audio_bitstream ( )
inline

Definition at line 39 of file audio_bitstream.ipp.

Member Function Documentation

◆ amplitude()

template<typename Interface >
float neogfx::audio_bitstream< Interface >::amplitude ( ) const
inlinefinal

Definition at line 57 of file audio_bitstream.ipp.

◆ apply_envelope()

template<typename Interface >
float neogfx::audio_bitstream< Interface >::apply_envelope ( audio_sample_index  aIndex,
audio_sample_count  aLength 
) const
inlineprotected

Definition at line 93 of file audio_bitstream.ipp.

◆ clear_envelope()

template<typename Interface >
void neogfx::audio_bitstream< Interface >::clear_envelope ( )
inlinefinal

Definition at line 81 of file audio_bitstream.ipp.

◆ envelope()

template<typename Interface >
adsr_envelope const & neogfx::audio_bitstream< Interface >::envelope ( ) const
inlinefinal

Definition at line 75 of file audio_bitstream.ipp.

◆ has_envelope()

template<typename Interface >
bool neogfx::audio_bitstream< Interface >::has_envelope ( ) const
inlinefinal

Definition at line 69 of file audio_bitstream.ipp.

◆ sample_rate()

template<typename Interface >
audio_sample_rate neogfx::audio_bitstream< Interface >::sample_rate ( ) const
inlinefinal

Definition at line 44 of file audio_bitstream.ipp.

◆ set_amplitude()

template<typename Interface >
void neogfx::audio_bitstream< Interface >::set_amplitude ( float  aAmplitude)
inlinefinal

Definition at line 63 of file audio_bitstream.ipp.

◆ set_envelope()

template<typename Interface >
void neogfx::audio_bitstream< Interface >::set_envelope ( adsr_envelope const &  aEnvelope)
inlinefinal

Definition at line 87 of file audio_bitstream.ipp.

◆ set_sample_rate()

template<typename Interface >
void neogfx::audio_bitstream< Interface >::set_sample_rate ( audio_sample_rate  aSampleRate)
inlineoverride

Definition at line 50 of file audio_bitstream.ipp.


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