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 , rules ) : MusicSystem ; createStaffLine ( parentSystem , parentStaff ) : StaffLine ; createGraphicalMeasure ( sourceMeasure , staff ) : GraphicalMeasure ; createMultiRestMeasure ( sourceMeasure , staff ) : GraphicalMeasure ; createTabStaffMeasure ( sourceMeasure , staff ) : GraphicalMeasure ; createExtraGraphicalMeasure ( staffLine ) : GraphicalMeasure ; createStaffEntry ( sourceStaffEntry , measure ) : GraphicalStaffEntry ; createVoiceEntry ( parentVoiceEntry , parentStaffEntry ) : GraphicalVoiceEntry ; createNote ( note , graphicalVoiceEntry , activeClef , octaveShift , rules , graphicalNoteLength ? ) : GraphicalNote ; createGraceNote ( note , graphicalVoiceEntry , activeClef , rules , octaveShift ? ) : GraphicalNote ; addGraphicalAccidental ( graphicalNote , pitch ) : void ; addFermataAtTiedEndNote ( tiedNote , graphicalStaffEntry ) : void ; createGraphicalTechnicalInstruction ( technicalInstruction , graphicalStaffEntry ) : void ; createInStaffClef ( graphicalStaffEntry , clefInstruction ) : void ; createChordSymbols ( sourceStaffEntry , graphicalStaffEntry , keyInstruction , transposeHalftones ) : void ; }