MCPcopy Create free account
hub / github.com/doldecomp/mkdd / channelStart

Method channelStart

libs/JSystem/JAudio/System/JASTrack.cpp:309–333  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

307}
308
309JASChannel *JASTrack::channelStart(JASTrack::TChannelMgr *channelMgr, u32 p2, u32 p3, u32 updateTimer) {
310 JASBank *bank = NULL;
311 if (mBankTable != NULL) {
312 bank = mBankTable->getBank(mBankNumber);
313 }
314 JASChannel *channel = JASBank::noteOn(bank, mProgNumber, p2, p3,
315 mNoteOnPrio | mReleasePrio << 8,
316 channelUpdateCallback, channelMgr);
317 if (channel == NULL) {
318 return NULL;
319 }
320 channel->setUpdateTimer(updateTimer);
321 channel->setSkipSamples(mSkipSample);
322 channel->setVibrateDelay(mVibDelay);
323 channel->setTremoloDelay(mTremDelay);
324
325 for (u32 i = 0; i < 6; i++) {
326 channel->setMixConfig(i, mMixConfig[i]);
327 }
328 overwriteOsc(channel);
329 if (mDirectRelease != 0) {
330 channel->setDirectRelease(mDirectRelease);
331 }
332 return channel;
333}
334
335int JASTrack::noteOn(u32 noteid, u32 p2, u32 p3) {
336#line 476

Callers

nothing calls this directly

Calls 7

setUpdateTimerMethod · 0.80
setSkipSamplesMethod · 0.80
setVibrateDelayMethod · 0.80
setTremoloDelayMethod · 0.80
setMixConfigMethod · 0.80
getBankMethod · 0.45
setDirectReleaseMethod · 0.45

Tested by

no test coverage detected