summaryrefslogtreecommitdiff
path: root/lily/simultaneous-music-iterator.cc
Commit message (Collapse)AuthorAgeFilesLines
* Issue 4419: Engraving ends too earlyDavid Kastrup2015-07-111-13/+10
| | | | | | | | | | | | This is a followup on the solution for issue 2010 that was too eager killing off unrelated iterators when an iterator in the vicinity of a Lyric_combine_music_iterator died. The salient point is to have Simultaneous_music_iterator::process_music check for pending_moment () going from finite to infinite when iterating, signifying the loss of an iterator defining an end point. It happens to also fix issue 4339.
* simplify Simultaneous_music_iterator::okDavid Kastrup2015-07-111-5/+2
|
* Issue 4365: non-member unsmob<T> replaces T::unsmob and T::is_smobDan Eble2015-05-221-9/+9
| | | | | | | | | | | | | | | | | | | | | | | Hide Smob_base<>::is_smob() to prevent the misleading situation of D::is_smob(S) returning true when S represents an ancestor of D rather than a D. This issue was previously worked around by overriding is_smob in several derived smob classes; that is no longer needed. LY_ASSERT_SMOB() now returns a smob pointer. This is not used yet, but is available for future use to avoid unsmobbing twice. Smob_base<>::smob_p() is hidden because there doesn't seem to be a need for it to be public. Files in lily/include were edited by hand. Files in lily itself were processed with the following sed script. s/\([A-Za-z_]\+\)::derived_unsmob/unsmob<\1>/g s/derived_unsmob *<\([A-Za-z_]\+\)>/unsmob<\1>/g s/\([A-Za-z_]\+\)::unsmob/unsmob<\1>/g s/\([A-Za-z_]\+\)::is_smob/unsmob<\1>/g s/Input \*\([A-Za-z_]\+\) = unsmob /Input *\1 = unsmob<Input> /g s/LY_ASSERT_SMOB (\([^)]*\))$/LY_ASSERT_SMOB (\1);/g
* Run grand replace for 2015.Werner Lemberg2015-01-041-1/+1
|
* Issue 2010: \lyricsto may turn into a voice-mangling zombieDavid Kastrup2014-10-091-3/+30
| | | | | | | | The problem here was that the simultaneous iterator might keep rerhythmed lyrics around when the associated voice has died already, blocking the simultaneous iterator. The solution is that when removing the last regular iterator to remove all remaining lyric-combined iterators at the same time.
* Replace remaining uses of unsmob_xxx with Xxx::unsmobDavid Kastrup2014-08-021-1/+1
| | | | | | | | This runs sed -i 's/unsmob_\(engraver\|global_context\|input\|item\|music\|paper_score\|performance\|performer\|spanner\|stream_event\)\b/\u\1::unsmob/g' $(git grep -l unsmob_ lily) as the mechanical part of the conversion. A separate commit provides the required definitions.
* unsmob_pitch -> Pitch::unsmob and relatedDavid Kastrup2014-08-021-7/+7
| | | | | | | | | | | | | | This is part of moving away from implementing LilyPond infrastructure via the C preprocessor rather than C++ features since C++ features tend to be more transparent to IDEs, debuggers, editors, and newcomers. sed -i "$(git grep -h DECLARE_UNSMOB|sed 's/.*(\(.*\), \(.*\)).*/s\/unsmob_\2\\b\/\1::unsmob\/g/')" $(git grep -l unsmob_) sed -i '/^DECLARE_UNSMOB/d' `git grep -l DECLARE_UNSMOB` git checkout Documentation/misc/CHANGES-1.3 (the changes to the CHANGES file are not useful). The definition of DECLARE_UNSMOB is removed in a separate commit.
* Run grand-replace (issue 3765)Carl Sorensen2014-01-111-1/+1
| | | | Run make grand-replace to update all coopyright statements
* Issue 3656/2: disambiguate our own ::to_string from std::to_stringDavid Kastrup2013-11-201-1/+1
|
* Run grand-replace for 2012Graham Percival2012-01-091-1/+1
|
* Grand fixcc.py run on all .hh .cc files.Graham Percival2011-08-011-19/+19
| | | | | | | | | | | Apologies for the inconvenience in patch handling, but getting this done at once will cause less long-term problems than trying to do this piecemeal. Note for future git historians: this patch was created by running scripts/auxiliar/fixcc.py \ $(find flower lily -name '*cc' -o -name '*hh' | grep -v /out) with astyle 2.02 installed. No manual changes were made.
* Admin: run yearly grand-replace.Graham Percival2011-01-131-1/+1
|
* Run grand-replace for 2010.Neil Puttock2010-01-231-1/+1
|
* Update source file headers. Fixes using standard GNU package conventions.Jan Nieuwenhuizen2009-11-251-3/+14
| | | | | | | | | | | | | | | | Signed-off-by: Han-Wen Nienhuys <hanwen@xs4all.nl> Signed-off-by: Jan Nieuwenhuizen <janneke@gnu.org> Signed-off-by: John Mandereau <john.mandereau@gmail.com> Signed-off-by: Graham Percival <graham@percival-music.ca> Signed-off-by: Reinhold Kainhofer <reinhold@kainhofer.com> Signed-off-by: Joe Neeman <joeneeman@gmail.com> Signed-off-by: Heikki Johannes Junes <hjunes@gmail.com> Signed-off-by: Neil Puttock <n.puttock@gmail.com> Signed-off-by: Carl D. Sorensen <c_sorensen@byu.edu> Signed-off-by: Mats Bengtsson <mats.bengtsson@s3.kth.se> Signed-off-by: Werner Lemberg <wl@gnu.org> Signed-off-by: Patrick McCarty <pnorcks@gmail.com> Signed-off-by: Nicolas Sceaux <nicolas.sceaux@free.fr>
* Run grand-replace for 2009.Jan Nieuwenhuizen2009-01-061-1/+1
|
* Run `make grand-replace'.Jan Nieuwenhuizen2008-12-011-1/+1
|
* add 2007 to (c) year.Han-Wen Nienhuys2007-01-081-1/+1
|
* * lily/global-context-scheme.cc: Separated ly:run-translator intoErik Sandberg2006-07-111-4/+4
| | | | | | | | | | smaller pieces. * lily/score-engraver.cc, lily/score-performer.cc, scm/define-context-properties.scm: Make paper/midi output accessable as a context property. * lily/score-translator.cc, lily/score-context.cc: Removed.
* Fix some bugs in the dynamic engraver and PostScript backendErlend Aasland2006-05-311-4/+4
|
* * lily/global-context-scheme.cc: Separated ly:run-translator intoErik Sandberg2006-07-111-4/+4
| | | | | | | | | | smaller pieces. * lily/score-engraver.cc, lily/score-performer.cc, scm/define-context-properties.scm: Make paper/midi output accessable as a context property. * lily/score-translator.cc, lily/score-context.cc: Removed.
* * lily/chord-tremolo-*.cc: Reworked how \repeat "tremolo"Erik Sandberg2006-05-241-9/+0
| | | | | | | | | | | | | | | | | works. More work is done by iterator now, and engraver has been very much simplified. * lily/translator-group.cc: try_music is now invoked through a listener * lily/*-iterator.cc: Massive cleanups. Junked try_music_in_children globally. Renamed try_music to report_event, and made that method descend to a bottom context automatically. * lily/event-iterator.cc: New file. * lily/output-property-iterator.cc, lily/old-lyric-combine-music-iterator.cc: Removed.
* * buildscripts/analyse-cxx-log.py: new file. Read compile log toHan-Wen Nienhuys2006-01-241-1/+1
| | | | | | | substitute appropriate functions. * flower/include/string.hh (class String): remove to_str0 and is_empty(). S&R everywhere.
* * The grand 2005-2006 replace.Jan Nieuwenhuizen2006-01-061-1/+1
|
* release commitHan-Wen Nienhuys2005-11-031-1/+1
|
* (parse_symbol_list): Bugfix.Jan Nieuwenhuizen2005-08-121-9/+3
|
* (construct_children): callHan-Wen Nienhuys2005-05-031-1/+3
| | | | | Music_iterator::quit() for iterators that start out invalid. This fixes indefinitely continuing contexts.
* * flower/*.cc: remove <? and >?Han-Wen Nienhuys2005-04-301-1/+1
| | | | * lily/*.cc: remove <? and >?
* Update.Jan Nieuwenhuizen2005-03-161-1/+1
|
* * flowerJan Nieuwenhuizen2005-03-101-17/+16
| | | | | * lily * kpath-guile: Nitpick run: buildscripts/fixcc.py.
* new file.Han-Wen Nienhuys2005-03-081-1/+1
|
* * scm/music-functions.scm (has-request-chord): don't useHan-Wen Nienhuys2005-02-041-2/+2
| | | | | | | | | | ly:music-name anywhere. Fixes <<\\>> notation. * lily/pango-font.cc (pango_item_string_stencil): bugfix: don't crash if psname is null. * lily/pango-font.cc (physical_font_tab): new member. Store PSname -> font_filename mapping.
* *** empty log message ***Han-Wen Nienhuys2005-01-311-1/+1
|
* * lily/include/transposed-music.hh (class Transposed_music): remove.Han-Wen Nienhuys2005-01-161-2/+1
| | | | | | | | | | | | | | | | | | | * lily/transposed-music.cc: remove * lily/include/relative-music.hh: remove. * lily/include/music-sequence.hh (struct Music_sequence): change into "namespace" class. * lily/untransposable-music.cc (Module): remove * lily/include/un-relativable-music.hh (Module): remove * lily/include/untransposable-music.hh (Module): remove * lily/include/music-list.hh (Module): remove file * lily/un-relativable-music.cc: remove file.
* *** empty log message ***Han-Wen Nienhuys2004-12-091-2/+2
|
* (Paper_column): copy rank_. This fixesHan-Wen Nienhuys2004-12-091-1/+1
| | | | lyric spacing on the penultimate column.
* * configure.in: Test for and accept lmodern if EC fonts not found.Jan Nieuwenhuizen2004-11-181-2/+2
| | | | | | | | | | | | | | | | | | | | * Debian lmodern support. * scm/framework-tex.scm (font-load-command): TeX font name mangling for latin1 encoded cork-lm fonts. (convert-to-ps): Load lm.map if available. * ly/paper-defaults.ly: Use cork-lm encoding if ec is not available. * scm/encoding.scm (coding-alist): Add cork-lm encoding. * scm/font.scm: Add header. Autoload cork-lm and ec fonts if available. * lily/kpath.cc (ly_kpathsea_find_file): Rename. Do not use path for absolute file name, that is silly. * lily/score-engraver.cc (initialize):
* * scm/define-music-properties.scm (all-music-properties): addHan-Wen Nienhuys2004-11-061-1/+1
| | | | | | | | | | | | | | | | | | | | | quoted-context-type, quoted-context-id. * scm/lily.scm (type-check-list): new function. * scm/lily-library.scm: new file. Generic library routines. * lily/parser.yy (Generic_prefix_music): move typechecking out of parser. * ly/music-functions-init.ly: add quoteDuring function. * lily/include/music-iterator.hh (class Music_iterator): rename set_translator -> set_context * lily/parser.yy (Generic_prefix_music_scm): add MUSIC_FUNCTION_SCM_SCM_MUSIC * scm/lily.scm (sanitize-command-option): new function. (backportme)
* *** empty log message ***Han-Wen Nienhuys2004-10-071-16/+16
|
* release commitHan-Wen Nienhuys2004-09-261-16/+16
|
* * lily/parser.yy (Music_list): add error-found to music with errors.Han-Wen Nienhuys2004-09-241-17/+17
| | | | | | | | | | | | | * lily/lily-parser.cc (LY_DEFINE): ignore scores with errors. * lily/book.cc (process): ignore books with errors * lily/drum-note-engraver.cc (try_music): idem. * lily/part-combine-iterator.cc (Part_combine_iterator): use BusyPlayingEvent to determine which voice was active last. (unisono): use last active to where to get unisono information from. This fixes: partcombine-rest.ly (again).
* * lily/lexer.ll: change is_string -> ly_c_string_pHan-Wen Nienhuys2004-04-121-8/+8
| | | | | * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go higher for finding Voice. (backportme)
* * lily/include/context.hh (class Context): make members protected.Han-Wen Nienhuys2004-04-111-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | (children_contexts): new accessor function. * lily/include/translator.hh (class Translator): make daddy_context_ protected. (class Translator): clean up. * lily/include/context.hh (class Context): make daddy_context_ private. * lily/lyric-engraver.cc (get_voice_to_lyrics): recursively go higher for finding Voice. (backportme) * lily/include/context.hh (class Context): remove find_context_below() as a method. * Documentation/user/notation.itely (The Lyrics context): add note about manual durations * ly/chord-modifiers-init.ly (blackTriangleMarkup): use TeX-math encoding. * scm/output-tex.scm (text): dump \inputencoding{} for text.
* * lily/text-item.cc (interpret_string): new file, select font withHan-Wen Nienhuys2004-04-091-8/+8
| | | | | | | | | | encoding. * lily/include/lily-guile.hh: ly_XXX_p -> is_XXX. Changes throughout. * scm/define-markup-commands.scm (encoded-simple): new markup command. * lily/parser.yy (markup): take encoding from lexer.
* * lily/include/lily-guile.hh: many new ly_ functions. Thanks toHan-Wen Nienhuys2004-04-071-16/+16
| | | | | | | | | | | | | | | | | Michael Welsh Duggan * lily/*.cc: deprecate gh_ interface. Thanks to Michael Welsh Duggan * lily/scaled-font-metric.cc (derived_mark): idem. * lily/scaled-font-metric.cc (derived_mark): is a const method. (Modified_font_metric): make alist for coding_description_ (LY_DEFINE): remove coding-name. * lily/scaled-font-metric.cc (ly_font_encoding): return vector * lily/my-lily-lexer.cc (set_identifier): remove gh_scm2newstr use.
* * lily/accidental-placement.cc (position_accidentals): bugfix inHan-Wen Nienhuys2004-03-081-8/+8
| | | | | | | | | | | | | offset, this fixes right-padding of AccidentalPlacement. * Documentation/user/tutorial.itely (An orchestral part): more fixes for the tutorial. * lily/parser.yy (context_def_spec_block): use \context instead of \translator. * Documentation/user/tutorial.itely (Automatic and manual beams): editing of tutorial.
* *** empty log message ***Han-Wen Nienhuys2004-03-081-7/+6
|
* (LY_DEFINE): use Scheme style naming forHan-Wen Nienhuys2004-02-221-1/+1
| | | | | music/context/grob property functions. Internally, use get_property() and set_property() for both.
* * lily/include/grob-info.hh: origin_contexts() now does notHan-Wen Nienhuys2004-02-161-4/+4
| | | | | | | | | | | | | | | | | | | | | include the originating engraver * lily/translator-group.cc (translator_each): clean up contents, remove superfluous stubs. Engraver_group_engraver and Performer_group_performer are the only classes using multiple inheritance. * lily/include/score-context.hh (class Score_context): interface between Score_{engraver,performer} and Global_context. * lily/include/global-context.hh (Context): change from global-translator. This is the entry point for contexts; it is not tweakable using \translator{}. Score is no longer the top context, but sits underneath Global. * lily/include/context.hh (class Context): brain surgery: split out Context functionality from Translator_group. Context is now a separate type from Translator.
* 2003 -> 2004Han-Wen Nienhuys2004-02-051-1/+1
|
* * lily/simultaneous-music-iterator.cc: remove clone() and copyHan-Wen Nienhuys2004-02-041-21/+0
| | | | | | | | | | | constructor from Music_iterator. Changes throughout. * lily/include/music-iterator.hh (class Music_iterator): remove Music_iterator::skip and Music_iterator::get_pending_events from interface. Rename report_to -> get_outlet * lily/auto-change-iterator.cc: move contents from new-auto-change-iterator.cc from