#include <NoteContainer.h>
Public Member Functions | |
| void | sort () |
| SortedNotes | getSortedNotes () |
| int | count () |
| void | append (NoteMusic *) |
| void | print () |
| void | setLocalNumerator (int) |
| void | setCommonNumerator (CommonNumerator *) |
| QPtrList< VoiceMC > | getVoices () |
| NoteMusic * | getNextVoiceNote (NoteMusic *, QPtrList< NoteMusic > *noteList) |
| QString | toString () |
| int | getLastDivision () |
| bool | isUpperVoice (NoteMusic *, NoteMusic *) |
| int | getIdVoice (NoteMusic *) |
| VoiceMC * | getVoice (int i) |
|
|
|
|
|
This function maybe optimized
|
|
||||||||||||
|
To let us know what is the next note in the voice we implement the function getNextVoiceNote(NoteMusic * pnote) in the sorted notes object. It return the note that has a start time equal to pnote->getLStart()+pnote->getLDuration(). If several note correspond to this constraint we choose the one that has the same staff and we set the remainingVoice note to the one that we do not return If the voice is unspecified (-1) then every note that has the same virtual voice became eligible. Please note that a note in a chord is never part of a voice, the only note in the voice is the one that this note is chorded to.
if there are several notes corresponding to the criteria then we return the fisrt note that has the same staff than the parameter note there will also be a voice criteria in the future to take in account |
|
|
It is important that no other method let the not be accessed so the common numerator adjustement can be done
|
|
|
|
|
|
This method build the voices. It has the following algorithm. If the 1025 in the implementation seems to you a mystery look at the VoiceMC class and you will understand, if still not look in the stems.txt specs if still not... Who cares... The modified variable is usefull not to compute every time the voices. |
|
||||||||||||
|
|
|
|
for debbuging purpose
|
|
|
This sets the common numerator (Universal time to parts |
|
|
This set the local numerator |
|
|
sort the notes only if modified |
|
|
|
1.3.6