Amuse
amuse::Sequencer Class Reference

#include <Sequencer.hpp>

Inheritance diagram for amuse::Sequencer:
Inheritance graph
Collaboration diagram for amuse::Sequencer:
Collaboration graph

Public Member Functions

 Sequencer (Engine &engine, const AudioGroup &group, int groupId, const SongGroupIndex &songGroup, int setupId, Submix *smx)
 
void advance (double dt)
 
SubmixgetSubmix ()
 
SequencerState state () const
 
size_t getVoiceCount () const
 
std::shared_ptr< VoicekeyOn (uint8_t chan, uint8_t note, uint8_t velocity)
 
void keyOff (uint8_t chan, uint8_t note, uint8_t velocity)
 
void setCtrlValue (uint8_t chan, uint8_t ctrl, int8_t val)
 
void setPitchWheel (uint8_t chan, float pitchWheel)
 
void allOff (bool now=false)
 
void killKeygroup (uint8_t kg, bool now)
 
std::shared_ptr< VoicefindVoice (int vid)
 
void sendMacroMessage (ObjectId macroId, int32_t val)
 
void setTempo (double ticksPerSec)
 
void playSong (const unsigned char *arrData, bool dieOnEnd=true)
 
void setVolume (float vol)
 
int8_t getChanProgram (int8_t chanId) const
 
bool setChanProgram (int8_t chanId, int8_t prog)
 
void nextChanProgram (int8_t chanId)
 
void prevChanProgram (int8_t chanId)
 
void kill ()
 
- Public Member Functions inherited from amuse::Entity
 Entity (Engine &engine, const AudioGroup &group, int groupId, ObjectId oid=ObjectId())
 
EnginegetEngine ()
 
const AudioGroupgetAudioGroup () const
 
int getGroupId () const
 
ObjectId getObjectId () const
 

Friends

class Engine
 

Additional Inherited Members

- Protected Member Functions inherited from amuse::Entity
void _destroy ()
 
- Protected Attributes inherited from amuse::Entity
bool m_destroyed = false
 
Enginem_engine
 
const AudioGroupm_audioGroup
 
int m_groupId
 
ObjectId m_objectId = 0xffff
 

Detailed Description

Multi-voice lifetime manager and polyphonic parameter tracking

Definition at line 27 of file Sequencer.hpp.

Member Function Documentation

void amuse::Sequencer::advance ( double  dt)

Advance current song data (if any)

void amuse::Sequencer::allOff ( bool  now = false)

Send keyoffs to all active notes, silence immediately if now set

std::shared_ptr<Voice> amuse::Sequencer::findVoice ( int  vid)

Find voice instance contained within Sequencer

int8_t amuse::Sequencer::getChanProgram ( int8_t  chanId) const

Get current program number of channel

Submix* amuse::Sequencer::getSubmix ( )
inline

Obtain pointer to Sequencer's Submix

Definition at line 92 of file Sequencer.hpp.

size_t amuse::Sequencer::getVoiceCount ( ) const

Get number of active voices

void amuse::Sequencer::keyOff ( uint8_t  chan,
uint8_t  note,
uint8_t  velocity 
)

Register key release with voice set

std::shared_ptr<Voice> amuse::Sequencer::keyOn ( uint8_t  chan,
uint8_t  note,
uint8_t  velocity 
)

Register key press with voice set

void amuse::Sequencer::kill ( )
inline

Manually kill sequencer for deferred release from engine

Definition at line 146 of file Sequencer.hpp.

void amuse::Sequencer::killKeygroup ( uint8_t  kg,
bool  now 
)

Stop all voices in kg, stops immediately (no KeyOff) when now set

void amuse::Sequencer::nextChanProgram ( int8_t  chanId)

Advance to next program in channel

void amuse::Sequencer::playSong ( const unsigned char *  arrData,
bool  dieOnEnd = true 
)

Play MIDI arrangement

void amuse::Sequencer::prevChanProgram ( int8_t  chanId)

Advance to prev program in channel

void amuse::Sequencer::sendMacroMessage ( ObjectId  macroId,
int32_t  val 
)

Send all voices using macroId the message val

bool amuse::Sequencer::setChanProgram ( int8_t  chanId,
int8_t  prog 
)

Set current program number of channel

void amuse::Sequencer::setCtrlValue ( uint8_t  chan,
uint8_t  ctrl,
int8_t  val 
)

Set MIDI control value [0,127] for all voices

void amuse::Sequencer::setPitchWheel ( uint8_t  chan,
float  pitchWheel 
)

Set pitchwheel value for use with voice controllers

void amuse::Sequencer::setTempo ( double  ticksPerSec)

Set tempo of sequencer and all voices in ticks per second

void amuse::Sequencer::setVolume ( float  vol)

Set total volume of sequencer

SequencerState amuse::Sequencer::state ( ) const
inline

Get current state of sequencer

Definition at line 95 of file Sequencer.hpp.


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