/** * @brief Sets the parent VirtualInstrumentManager and sets up diagnostics if needed. * @param[in] aVIM The parent VirtualInstrumentManager. */ public void SetVIM(VirtualInstrumentManager aVIM) { mVIM = aVIM; #if DEBUG_AUDIO_DIAGNOSTICS mDiagnosticsHandler = mVIM.GetDiagnosticsHandler(); mReported = false; #endif }
/** * @brief Handles a key in the container being pressed. * @param[in] aPianoKey The white key that was pressed. */ private void HandleKeyPressed(PianoKey aPianoKey, int aNoteVelocity) { if (EnableAudio && mVIM != null) { #if DEBUG_AUDIO_DIAGNOSTICS mVIM.GetDiagnosticsHandler().SetInputTime.Invoke(); #endif mVIM.PlayNote.Invoke(aPianoKey.Pitch, aNoteVelocity); } }
/** @} */ /*************************************************************************//** * @defgroup MusTypPrivFunc Musical Typing Private Functions * @ingroup MusTyp * Functions used internally by @link MusTyp Musical Typing@endlink. ****************************************************************************/ /** @{ */ /** * @brief Sets the default values for musical typing. */ private void SetMusicalTypingVariables() { #if DEBUG_AUDIO_DIAGNOSTICS // Get the diagnostics handler mDiagnosticsHandler = mVIM.GetDiagnosticsHandler(); #endif // Set up the key velocities and the pressed keys. mKeyVelocities = new int[DEBUG_numMusicalTypingKeys]; mPressedKeys = new bool[DEBUG_numMusicalTypingKeys]; for (int i = 0; i < DEBUG_numMusicalTypingKeys; i++) { mKeyVelocities[i] = 100; mPressedKeys[i] = false; } // Set up the default range used when velocities are random. mRandomVelocityRange = new int[2]; mRandomVelocityRange[0] = 0; mRandomVelocityRange[1] = 100; }