LibMusicXML 3.22
MusicXMLTimePositions Class Reference

Public Types

typedef std::tuple< double, int, int, int > VoicedTimePosition
typedef std::vector< VoicedTimePosition > TimePositionList

Public Member Functions

 MusicXMLTimePositions (const MusicXMLTimePositions &p1)
void addTimePosition (std::string measure, double positionInMeasure, const MusicXML2::notevisitor &nv)
float getDxForElement (MusicXML2::xmlelement *element, double position, std::string onMeasure, int voice, int staff, double xmlOffset)
float getDxRelativeToMeasureForElement (MusicXML2::xmlelement *element, std::string onMeasure, int voice, double xmlOffset)
 Finds Guido Dx for XML Directions whose default horizontal position is from the Beginning of the Measure, such as Words and Tempo.
size_t size ()

Protected Member Functions

int getVoice (VoicedTimePosition e)
int getDefaultX (VoicedTimePosition e)
int getStaff (VoicedTimePosition e)
TimePositionList::iterator find (TimePositionList &timePos4measure, int voiceId, int staff, double position)
 Returns iterator in TimePositionList with equal voiceId and EQUAL position to query.

Member Function Documentation

◆ getDxForElement()

float getDxForElement ( MusicXML2::xmlelement * element,
double position,
std::string onMeasure,
int voice,
int staff,
double xmlOffset )

Finds appropriate Guido Dx based on default-x of a musicXML element by overlooking all elements in measure based on position and voice number

Parameters
elementthe MusicXML element
positionmusical position in measure
onMeasuremeasure number (from musicXML)
voicevoice number
staffstaff number
xmlOffsetMusicXML offset of the element if any
Returns
a float containing Guido dx value based on available default-x in measure