Mercurial > hg > svcore
diff base/Event.h @ 1647:29a20719796e single-point
Rework NoteModel commands (not entirely successfully); remove FlexiNoteModel as it has always been almost entirely identical to NoteModel (unlike its layer counterpart)
author | Chris Cannam |
---|---|
date | Thu, 14 Mar 2019 15:31:59 +0000 |
parents | 751a52865270 |
children | a77a7e8c085c |
line wrap: on
line diff
--- a/base/Event.h Thu Mar 14 13:11:47 2019 +0000 +++ b/base/Event.h Thu Mar 14 15:31:59 2019 +0000 @@ -27,12 +27,12 @@ #include <QString> /** - * An immutable type used for point and event representation in sparse - * models, as well as for interchange within the clipboard. An event - * always has a frame and (possibly empty) label, and optionally has - * numerical value, level, duration in frames, and a mapped reference - * frame. Event has an operator< defining a total ordering, by frame - * first and then by the other properties. + * An immutable(-ish) type used for point and event representation in + * sparse models, as well as for interchange within the clipboard. An + * event always has a frame and (possibly empty) label, and optionally + * has numerical value, level, duration in frames, and a mapped + * reference frame. Event has an operator< defining a total ordering, + * by frame first and then by the other properties. * * Event is based on the Clipboard::Point type up to SV v3.2.1 and is * intended also to replace the custom point types previously found in @@ -83,6 +83,10 @@ } Event(const Event &event) =default; + + // We would ideally like Event to be immutable - but we have to + // have these because otherwise we can't put Events in vectors + // etc. Let's call it conceptually immutable Event &operator=(const Event &event) =default; Event &operator=(Event &&event) =default;