OrnamentContainer.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. import {AccidentalEnum} from "../../Common/DataObjects/Pitch";
  2. export class OrnamentContainer {
  3. constructor(ornament: OrnamentEnum) {
  4. this.ornament = ornament;
  5. }
  6. private ornament: OrnamentEnum;
  7. private accidentalAbove: AccidentalEnum = AccidentalEnum.NONE;
  8. private accidentalBelow: AccidentalEnum = AccidentalEnum.NONE;
  9. public get GetOrnament(): OrnamentEnum {
  10. return this.ornament;
  11. }
  12. public get AccidentalAbove(): AccidentalEnum {
  13. return this.accidentalAbove;
  14. }
  15. public set AccidentalAbove(value: AccidentalEnum) {
  16. this.accidentalAbove = value;
  17. }
  18. public get AccidentalBelow(): AccidentalEnum {
  19. return this.accidentalBelow;
  20. }
  21. public set AccidentalBelow(value: AccidentalEnum) {
  22. this.accidentalBelow = value;
  23. }
  24. }
  25. export enum OrnamentEnum {
  26. Trill,
  27. Turn,
  28. InvertedTurn,
  29. DelayedTurn,
  30. DelayedInvertedTurn,
  31. Mordent,
  32. InvertedMordent,
  33. // the following ornaments are not yet supported by MusicXML (3.1).
  34. // there is a "other-ornament"-node, but most programs probably don't export as such, e.g. Musescore
  35. // see musicXML manuals -> Ornaments
  36. /*
  37. UpPrall,
  38. DownPrall,
  39. PrallUp,
  40. PrallDown,
  41. UpMordent,
  42. DownMordent,
  43. LinePrall,
  44. PrallPrall
  45. */
  46. }