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;