I committed the last few months work on tempos & swing to the branch
big-tuplet-rewrite.  There are many things to be said about that code, but
since my comments about coding tend to be tl;dr, I'll sum up the main
things briefly:

 * Most important, this all lives on branch big-tuplet-rewrite and
   will stay there until it's proven stable.
 * It can swing via tempos.  Had a devil of a time getting the timings
   perfect - they were within 2% pretty early, but took several
   redesigns to get them perfect.  Now they are accurate to within
   display precision.
 * Briefly, it transforms a range of tempos to Hermite cubic splines,
   operates on that, converts it back.  Lots of technical stuff.
 * New classes, especially TempoChange and HermiteTempoChange.  Pulled
   a lot of Composition code into TempoChange and TempoChangeInSitu.
 * This was way too slow, so I wrote CompositionTimeMutator and mostly
   operate thru it, and that's much faster.
 * PasteConductorData, PasteRangeCommand, DeleteRangeCommand messed
   swing up, but I rewrote them to be hopefully more robust.  I'll try
   to document that.
 * I did not yet do as Tim Munro suggested with an assortment of
   tempo-operation commands, but that should be easy now (which is a
   phrase that always comes back to haunt you, but I haven't learned
   yet).  I intend to add them, but I thought it best to commit now
   that it's semi-stable.
 * By the end I had made or enlarged so many classes in base/ that it
   was getting messy, so I thought it best to make new directories for
   them:
   * base/eventhelpers - Classes that would have gone in NotationTypes.
     TimeSignature moved there too.
   * base/selections - Classes that were in Selection.h
 * Wrote some convenience stuff that I'll try to document.

        Tom Breton (Tehom)



------------------------------------------------------------------------------
Start Your Social Network Today - Download eXo Platform
Build your Enterprise Intranet with eXo Platform Software
Java Based Open Source Intranet - Social, Extensible, Cloud Ready
Get Started Now And Turn Your Intranet Into A Collaboration Platform
http://p.sf.net/sfu/ExoPlatform
_______________________________________________
Rosegarden-devel mailing list
[email protected] - use the link below to unsubscribe
https://lists.sourceforge.net/lists/listinfo/rosegarden-devel

Reply via email to