MCPcopy Create free account
hub / github.com/CoderLine/alphaTab / _parseBar

Method _parseBar

packages/alphatab/src/importer/GpifParser.ts:1587–1649  ·  view source on GitHub ↗
(node: XmlNode)

Source from the content-addressed store, hash-verified

1585 }
1586
1587 private _parseBar(node: XmlNode): void {
1588 const bar: Bar = new Bar();
1589 const barId: string = node.getAttribute('id');
1590 for (const c of node.childElements()) {
1591 switch (c.localName) {
1592 case 'Voices':
1593 this._voicesOfBar.set(barId, GpifParser._splitSafe(c.innerText));
1594 break;
1595 case 'Clef':
1596 switch (c.innerText) {
1597 case 'Neutral':
1598 bar.clef = Clef.Neutral;
1599 break;
1600 case 'G2':
1601 bar.clef = Clef.G2;
1602 break;
1603 case 'F4':
1604 bar.clef = Clef.F4;
1605 break;
1606 case 'C4':
1607 bar.clef = Clef.C4;
1608 break;
1609 case 'C3':
1610 bar.clef = Clef.C3;
1611 break;
1612 }
1613 break;
1614 case 'Ottavia':
1615 switch (c.innerText) {
1616 case '8va':
1617 bar.clefOttava = Ottavia._8va;
1618 break;
1619 case '15ma':
1620 bar.clefOttava = Ottavia._15ma;
1621 break;
1622 case '8vb':
1623 bar.clefOttava = Ottavia._8vb;
1624 break;
1625 case '15mb':
1626 bar.clefOttava = Ottavia._15mb;
1627 break;
1628 }
1629 break;
1630 case 'SimileMark':
1631 switch (c.innerText) {
1632 case 'Simple':
1633 bar.simileMark = SimileMark.Simple;
1634 break;
1635 case 'FirstOfDouble':
1636 bar.simileMark = SimileMark.FirstOfDouble;
1637 break;
1638 case 'SecondOfDouble':
1639 bar.simileMark = SimileMark.SecondOfDouble;
1640 break;
1641 }
1642 break;
1643 case 'XProperties':
1644 this._parseBarXProperties(c, bar);

Callers 1

_parseBarsMethod · 0.95

Calls 5

_parseBarXPropertiesMethod · 0.95
getAttributeMethod · 0.80
childElementsMethod · 0.80
_splitSafeMethod · 0.80
setMethod · 0.45

Tested by

no test coverage detected