MuseScore  3.4
Music composition and notation
Public Member Functions | Static Public Member Functions | Private Attributes | List of all members
Voice Class Reference

#include <voice.h>

Collaboration diagram for Voice:
Collaboration graph
[legend]

Public Member Functions

 Voice (Zerberus *)
 
Voicenext () const
 
void setNext (Voice *v)
 
void start (Channel *channel, int key, int velo, const Zone *, double durSinceNoteOn)
 
void updateEnvelopes ()
 
void process (int frames, float *)
 
void updateLoop ()
 
short getData (long long pos)
 
Channelchannel () const
 
int key () const
 
int velocity () const
 
bool isPlaying () const
 
bool isSustained () const
 
bool isOff () const
 
bool isStopped () const
 
void stop ()
 
void stop (float time)
 
void sustained ()
 
void off ()
 
const char * state () const
 
LoopMode loopMode () const
 
int getSamplesSinceStart ()
 
float getGain ()
 
OffMode offMode () const
 
int offBy () const
 

Static Public Member Functions

static void init ()
 

Private Attributes

Voice_next
 
Zerberus_zerberus
 
VoiceState _state = VoiceState::OFF
 
Channel_channel
 
int _key
 
int _velocity
 
int audioChan
 
short * data
 
long long eidx
 
LoopMode _loopMode
 
OffMode _offMode
 
int _offBy
 
long long _loopStart
 
long long _loopEnd
 
bool _looping
 
int _samplesSinceStart
 
float gain
 
Phase phase
 
Phase phaseIncr
 
ZFilter filter
 
int currentEnvelope
 
Envelope envelopes [V1Envelopes::COUNT]
 
Trigger trigger
 
const Zonez
 

Constructor & Destructor Documentation

◆ Voice()

Voice::Voice ( Zerberus z)

Member Function Documentation

◆ channel()

Channel* Voice::channel ( ) const
inline

◆ getData()

short Voice::getData ( long long  pos)

◆ getGain()

float Voice::getGain ( )
inline

◆ getSamplesSinceStart()

int Voice::getSamplesSinceStart ( )
inline

◆ init()

void Voice::init ( )
static

◆ isOff()

bool Voice::isOff ( ) const
inline

◆ isPlaying()

bool Voice::isPlaying ( ) const
inline

◆ isStopped()

bool Voice::isStopped ( ) const
inline

◆ isSustained()

bool Voice::isSustained ( ) const
inline

◆ key()

int Voice::key ( ) const
inline

◆ loopMode()

LoopMode Voice::loopMode ( ) const
inline

◆ next()

Voice* Voice::next ( ) const
inline

◆ off()

void Voice::off ( )
inline

◆ offBy()

int Voice::offBy ( ) const
inline

◆ offMode()

OffMode Voice::offMode ( ) const
inline

◆ process()

void Voice::process ( int  frames,
float *  p 
)

◆ setNext()

void Voice::setNext ( Voice v)
inline

◆ start()

void Voice::start ( Channel channel,
int  key,
int  velo,
const Zone zone,
double  durSinceNoteOn 
)

◆ state()

const char * Voice::state ( ) const

◆ stop() [1/2]

void Voice::stop ( )
inline

◆ stop() [2/2]

void Voice::stop ( float  time)

◆ sustained()

void Voice::sustained ( )
inline

◆ updateEnvelopes()

void Voice::updateEnvelopes ( )

◆ updateLoop()

void Voice::updateLoop ( )

◆ velocity()

int Voice::velocity ( ) const
inline

Member Data Documentation

◆ _channel

Channel* Voice::_channel
private

◆ _key

int Voice::_key
private

◆ _loopEnd

long long Voice::_loopEnd
private

◆ _looping

bool Voice::_looping
private

◆ _loopMode

LoopMode Voice::_loopMode
private

◆ _loopStart

long long Voice::_loopStart
private

◆ _next

Voice* Voice::_next
private

◆ _offBy

int Voice::_offBy
private

◆ _offMode

OffMode Voice::_offMode
private

◆ _samplesSinceStart

int Voice::_samplesSinceStart
private

◆ _state

VoiceState Voice::_state = VoiceState::OFF
private

◆ _velocity

int Voice::_velocity
private

◆ _zerberus

Zerberus* Voice::_zerberus
private

◆ audioChan

int Voice::audioChan
private

◆ currentEnvelope

int Voice::currentEnvelope
private

◆ data

short* Voice::data
private

◆ eidx

long long Voice::eidx
private

◆ envelopes

Envelope Voice::envelopes[V1Envelopes::COUNT]
private

◆ filter

ZFilter Voice::filter
private

◆ gain

float Voice::gain
private

◆ phase

Phase Voice::phase
private

◆ phaseIncr

Phase Voice::phaseIncr
private

◆ trigger

Trigger Voice::trigger
private

◆ z

const Zone* Voice::z
private

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