public virtual void createNoteGlyph(global::alphatab.model.Note n)
        {
            unchecked
            {
                global::alphatab.rendering.ScoreBarRenderer sr = default(global::alphatab.rendering.ScoreBarRenderer);
                sr = ((global::alphatab.rendering.ScoreBarRenderer)(this.renderer));
                global::alphatab.rendering.Glyph noteHeadGlyph = this.createNoteHeadGlyph(n);
                int line = sr.getNoteLine(n);
                noteHeadGlyph.y = sr.getScoreY(line, new global::haxe.lang.Null <int>(-1, true));
                this.noteHeads.addNoteGlyph(noteHeadGlyph, n, line);
                if ((n.isStaccato && !(this.noteHeads.beatEffects.exists("Staccato"))))
                {
                    this.noteHeads.beatEffects.@set("Staccato", new global::alphatab.rendering.glyphs.CircleGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(0, true), ((double)(1.5))));
                }

                if (((n.accentuated == global::alphatab.model.AccentuationType.Normal) && !(this.noteHeads.beatEffects.exists("Accent"))))
                {
                    this.noteHeads.beatEffects.@set("Accent", new global::alphatab.rendering.glyphs.AccentuationGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(0, true), ((global::alphatab.model.AccentuationType)(global::alphatab.model.AccentuationType.Normal))));
                }

                if (((n.accentuated == global::alphatab.model.AccentuationType.Heavy) && !(this.noteHeads.beatEffects.exists("HAccent"))))
                {
                    this.noteHeads.beatEffects.@set("HAccent", new global::alphatab.rendering.glyphs.AccentuationGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(0, true), ((global::alphatab.model.AccentuationType)(global::alphatab.model.AccentuationType.Heavy))));
                }
            }
        }
        public virtual void createAccidentalGlyph(global::alphatab.model.Note n, global::alphatab.rendering.glyphs.AccidentalGroupGlyph accidentals)
        {
            unchecked
            {
                global::alphatab.rendering.ScoreBarRenderer sr = default(global::alphatab.rendering.ScoreBarRenderer);
                sr = ((global::alphatab.rendering.ScoreBarRenderer)(this.renderer));
                int noteLine = sr.getNoteLine(n);
                global::alphatab.model.AccidentalType accidental = sr.accidentalHelper.applyAccidental(n, noteLine);
                bool isGrace = (this.container.beat.graceType != global::alphatab.model.GraceType.None);
                switch (global::haxe.root.Type.enumIndex(accidental))
                {
                case 2:
                {
                    accidentals.addGlyph(new global::alphatab.rendering.glyphs.SharpGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(sr.getScoreY(noteLine, default(global::haxe.lang.Null <int>)), true), new global::haxe.lang.Null <bool>(isGrace, true)));
                    break;
                }


                case 3:
                {
                    accidentals.addGlyph(new global::alphatab.rendering.glyphs.FlatGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(sr.getScoreY(noteLine, default(global::haxe.lang.Null <int>)), true), new global::haxe.lang.Null <bool>(isGrace, true)));
                    break;
                }


                case 1:
                {
                    accidentals.addGlyph(new global::alphatab.rendering.glyphs.NaturalizeGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(sr.getScoreY((noteLine + 1), default(global::haxe.lang.Null <int>)), true), new global::haxe.lang.Null <bool>(isGrace, true)));
                    break;
                }


                default:
                {
                    {
                    }

                    break;
                }
                }
            }
        }
 public virtual void createBeatDot(global::alphatab.model.Note n, global::alphatab.rendering.glyphs.GlyphGroup @group)
 {
     unchecked
     {
         global::alphatab.rendering.ScoreBarRenderer sr = default(global::alphatab.rendering.ScoreBarRenderer);
         sr = ((global::alphatab.rendering.ScoreBarRenderer)(this.renderer));
         @group.addGlyph(new global::alphatab.rendering.glyphs.CircleGlyph(new global::haxe.lang.Null <int>(0, true), new global::haxe.lang.Null <int>(sr.getScoreY(sr.getNoteLine(n), new global::haxe.lang.Null <int>(((int)((2 * this.renderer.stave.staveGroup.layout.renderer.settings.scale))), true)), true), ((double)((1.5 * this.renderer.stave.staveGroup.layout.renderer.settings.scale)))));
     }
 }