MCPcopy Create free account
hub / github.com/BespokeSynth/BespokeSynth / UpdateLights

Method UpdateLights

Source/PlaySequencer.cpp:338–378  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

336}
337
338void PlaySequencer::UpdateLights(bool betweener)
339{
340 if (mGridControlTarget->GetGridController() == nullptr)
341 return;
342
343 IGridController* gridController = mGridControlTarget->GetGridController();
344
345 for (int i = 0; i < 4; ++i)
346 gridController->SetLight(i, 0, mWrite ? kGridColor2Bright : kGridColorOff);
347
348 for (int i = 0; i < 3; ++i)
349 gridController->SetLight(i, 1, mNoteRepeat && !betweener ? kGridColor2Bright : kGridColorOff);
350
351 gridController->SetLight(3, 1, mLinkColumns ? kGridColor2Bright : kGridColorOff);
352
353 gridController->SetLight(0, 2, mNumMeasures == 1 ? kGridColor3Bright : kGridColorOff);
354 gridController->SetLight(1, 2, mNumMeasures == 2 ? kGridColor3Bright : kGridColorOff);
355 gridController->SetLight(2, 2, mNumMeasures == 4 ? kGridColor3Bright : kGridColorOff);
356 gridController->SetLight(3, 2, mNumMeasures == 8 ? kGridColor3Bright : kGridColorOff);
357
358 gridController->SetLight(0, 3, GetVelocityLevel() == 1 || GetVelocityLevel() == 3 ? kGridColor2Bright : kGridColorOff);
359 gridController->SetLight(1, 3, GetVelocityLevel() == 2 || GetVelocityLevel() == 3 ? kGridColor2Bright : kGridColorOff);
360
361 gridController->SetLight(3, 3, mClearLane ? kGridColor1Bright : kGridColorOff);
362
363 int step = GetStep(gTime);
364 for (int i = 0; i < 16; ++i)
365 {
366 int x = (i / 4) % 4 + 4;
367 int y = i % 4;
368 gridController->SetLight(x, y, step % 16 == i ? kGridColor3Bright : kGridColorOff);
369 }
370
371 for (int i = 0; i < (int)mLanes.size(); ++i)
372 {
373 int x = i % 4 * 2;
374 int y = 7 - i / 4;
375 gridController->SetLight(x, y, mLanes[i].mIsPlaying ? kGridColor2Bright : kGridColorOff);
376 gridController->SetLight(x + 1, y, mLanes[i].mMuteOrErase ? kGridColorOff : kGridColor1Bright);
377 }
378}
379
380int PlaySequencer::GetVelocityLevel()
381{

Callers 1

OnTimeEventMethod · 0.45

Calls 3

GetGridControllerMethod · 0.80
sizeMethod · 0.80
SetLightMethod · 0.45

Tested by

no test coverage detected