56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			1.6 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
|   | /*
 | ||
|  |   ============================================================================== | ||
|  | 
 | ||
|  |    This file is part of the JUCE library. | ||
|  |    Copyright (c) 2017 - ROLI Ltd. | ||
|  | 
 | ||
|  |    JUCE is an open source library subject to commercial or open-source | ||
|  |    licensing. | ||
|  | 
 | ||
|  |    The code included in this file is provided under the terms of the ISC license | ||
|  |    http://www.isc.org/downloads/software-support-policy/isc-license. Permission
 | ||
|  |    To use, copy, modify, and/or distribute this software for any purpose with or | ||
|  |    without fee is hereby granted provided that the above copyright notice and | ||
|  |    this permission notice appear in all copies. | ||
|  | 
 | ||
|  |    JUCE IS PROVIDED "AS IS" WITHOUT ANY WARRANTY, AND ALL WARRANTIES, WHETHER | ||
|  |    EXPRESSED OR IMPLIED, INCLUDING MERCHANTABILITY AND FITNESS FOR PURPOSE, ARE | ||
|  |    DISCLAIMED. | ||
|  | 
 | ||
|  |   ============================================================================== | ||
|  | */ | ||
|  | 
 | ||
|  | namespace juce | ||
|  | { | ||
|  | 
 | ||
|  | MPESynthesiserVoice::MPESynthesiserVoice() | ||
|  | { | ||
|  | } | ||
|  | 
 | ||
|  | MPESynthesiserVoice::~MPESynthesiserVoice() | ||
|  | { | ||
|  | } | ||
|  | 
 | ||
|  | //==============================================================================
 | ||
|  | bool MPESynthesiserVoice::isCurrentlyPlayingNote (MPENote note) const noexcept | ||
|  | { | ||
|  |     return isActive() && currentlyPlayingNote.noteID == note.noteID; | ||
|  | } | ||
|  | 
 | ||
|  | bool MPESynthesiserVoice::isPlayingButReleased() const noexcept | ||
|  | { | ||
|  |     return isActive() && currentlyPlayingNote.keyState == MPENote::off; | ||
|  | } | ||
|  | 
 | ||
|  | bool MPESynthesiserVoice::wasStartedBefore (const MPESynthesiserVoice& other) const noexcept | ||
|  | { | ||
|  |     return noteStartTime < other.noteStartTime; | ||
|  | } | ||
|  | 
 | ||
|  | void MPESynthesiserVoice::clearCurrentNote() noexcept | ||
|  | { | ||
|  |     currentlyPlayingNote = MPENote(); | ||
|  | } | ||
|  | 
 | ||
|  | } // namespace juce
 |