opensheetmusicdisplay
Version:
An open source JavaScript engine for displaying MusicXML based on VexFlow.
36 lines (35 loc) • 2.85 kB
TypeScript
import { ClefInstruction } from "../VoiceData/Instructions/ClefInstruction";
import { Fraction } from "../../Common/DataObjects/Fraction";
import { GraphicalNote } from "../Graphical/GraphicalNote";
import { GraphicalStaffEntry } from "../Graphical/GraphicalStaffEntry";
import { MusicSystem } from "../Graphical/MusicSystem";
import { Note } from "../VoiceData/Note";
import { OctaveEnum } from "../VoiceData/Expressions/ContinuousExpressions/OctaveShift";
import { Pitch } from "../../Common/DataObjects/Pitch";
import { SourceMeasure } from "../VoiceData/SourceMeasure";
import { SourceStaffEntry } from "../VoiceData/SourceStaffEntry";
import { Staff } from "../VoiceData/Staff";
import { StaffLine } from "../Graphical/StaffLine";
import { GraphicalMeasure } from "../Graphical/GraphicalMeasure";
import { TechnicalInstruction } from "../VoiceData/Instructions/TechnicalInstruction";
import { GraphicalVoiceEntry } from "../Graphical/GraphicalVoiceEntry";
import { VoiceEntry } from "../VoiceData/VoiceEntry";
import { EngravingRules } from "../Graphical/EngravingRules";
import { KeyInstruction } from "../VoiceData/Instructions/KeyInstruction";
export interface IGraphicalSymbolFactory {
createMusicSystem(systemIndex: number, rules: EngravingRules): MusicSystem;
createStaffLine(parentSystem: MusicSystem, parentStaff: Staff): StaffLine;
createGraphicalMeasure(sourceMeasure: SourceMeasure, staff: Staff): GraphicalMeasure;
createMultiRestMeasure(sourceMeasure: SourceMeasure, staff: Staff): GraphicalMeasure;
createTabStaffMeasure(sourceMeasure: SourceMeasure, staff: Staff): GraphicalMeasure;
createExtraGraphicalMeasure(staffLine: StaffLine): GraphicalMeasure;
createStaffEntry(sourceStaffEntry: SourceStaffEntry, measure: GraphicalMeasure): GraphicalStaffEntry;
createVoiceEntry(parentVoiceEntry: VoiceEntry, parentStaffEntry: GraphicalStaffEntry): GraphicalVoiceEntry;
createNote(note: Note, graphicalVoiceEntry: GraphicalVoiceEntry, activeClef: ClefInstruction, octaveShift: OctaveEnum, rules: EngravingRules, graphicalNoteLength?: Fraction): GraphicalNote;
createGraceNote(note: Note, graphicalVoiceEntry: GraphicalVoiceEntry, activeClef: ClefInstruction, rules: EngravingRules, octaveShift?: OctaveEnum): GraphicalNote;
addGraphicalAccidental(graphicalNote: GraphicalNote, pitch: Pitch): void;
addFermataAtTiedEndNote(tiedNote: Note, graphicalStaffEntry: GraphicalStaffEntry): void;
createGraphicalTechnicalInstruction(technicalInstruction: TechnicalInstruction, graphicalStaffEntry: GraphicalStaffEntry): void;
createInStaffClef(graphicalStaffEntry: GraphicalStaffEntry, clefInstruction: ClefInstruction): void;
createChordSymbols(sourceStaffEntry: SourceStaffEntry, graphicalStaffEntry: GraphicalStaffEntry, keyInstruction: KeyInstruction, transposeHalftones: number): void;
}