Amuse
|
#include <Sequencer.hpp>
Public Member Functions | |
Sequencer (Engine &engine, const AudioGroup &group, int groupId, const SongGroupIndex &songGroup, int setupId, Submix *smx) | |
void | advance (double dt) |
Submix * | getSubmix () |
SequencerState | state () const |
size_t | getVoiceCount () const |
std::shared_ptr< Voice > | keyOn (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< Voice > | findVoice (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()) | |
Engine & | getEngine () |
const AudioGroup & | getAudioGroup () 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 |
Engine & | m_engine |
const AudioGroup & | m_audioGroup |
int | m_groupId |
ObjectId | m_objectId = 0xffff |
Multi-voice lifetime manager and polyphonic parameter tracking
Definition at line 27 of file Sequencer.hpp.
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
|
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
|
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
|
inline |
Get current state of sequencer
Definition at line 95 of file Sequencer.hpp.