Wraps an EntryInfo instance and a note index.
More...
#include <Entries.h>
|
| NoteInfoPtr () |
| Default constructor.
|
|
| NoteInfoPtr (const EntryInfoPtr &entryInfo, size_t noteIndex) |
| Constructor.
|
|
| operator bool () const |
| Provides a boolean conversion based on whether the EntryInfoPtr is valid and the note index is valid.
|
|
bool | isSameNote (const NoteInfoPtr &src) const |
| Returns whether the input and the current instance refer to the same note.
|
|
std::shared_ptr< const Note > | operator-> () const |
| Allows -> access to the underlying Note instance.
|
|
EntryInfoPtr | getEntryInfo () const |
| Gets the entry info for this note.
|
|
std::tuple< Note::NoteName, int, int, int > | calcNoteProperties () const |
| Calculates the note name, octave number, actual alteration, and staff position.
|
|
NoteInfoPtr | calcTieTo () const |
| Calculates the note that this note could tie to. Check the return value's Note::tieEnd to see if there is actually a tie end.
|
|
NoteInfoPtr | calcTieFrom () const |
| Calculates the note that this note could tie from. Check the return value's Note::tieStart to see if there is actually a tie.
|
|
InstCmper | calcStaff () const |
| Calculates the staff number, taking into account cross staffing.
|
|
std::unique_ptr< music_theory::Transposer > | createTransposer () const |
| Creates a transposer for this Note instance.
|
|
Wraps an EntryInfo instance and a note index.
◆ NoteInfoPtr()
musx::dom::NoteInfoPtr::NoteInfoPtr |
( |
const EntryInfoPtr & |
entryInfo, |
|
|
size_t |
noteIndex |
|
) |
| |
|
inline |
◆ calcNoteProperties()
std::tuple< Note::NoteName, int, int, int > musx::dom::NoteInfoPtr::calcNoteProperties |
( |
| ) |
const |
Calculates the note name, octave number, actual alteration, and staff position.
- Returns
- A tuple containing:
- NoteName: The note name (C, D, E, F, G, A, B)
- int: The octave number (where 4 is the middle C octave)
- int: The actual alteration in EDO divisions (normally semitones), relative to natural
- int: The staff position of the note relative to the staff reference line. (For 5-line staves this is the top line.)
◆ calcTieFrom()
NoteInfoPtr musx::dom::NoteInfoPtr::calcTieFrom |
( |
| ) |
const |
Calculates the note that this note could tie from. Check the return value's Note::tieStart to see if there is actually a tie.
- Returns
- The candidate note or an empty NoteInfoPtr if no candidate was found.
◆ calcTieTo()
NoteInfoPtr musx::dom::NoteInfoPtr::calcTieTo |
( |
| ) |
const |
Calculates the note that this note could tie to. Check the return value's Note::tieEnd to see if there is actually a tie end.
- Returns
- The candidate note or an empty NoteInfoPtr if no candidate was found.
◆ createTransposer()
Creates a transposer for this Note instance.
- Returns
- A unique pointer to a transposer for this Note.