+ /** Thin the number of events in this list.
+ *
+ * The thinning factor corresponds to the area of a triangle computed
+ * between three points in the list (time-difference * value-difference).
+ * If the area is large, it indicates significant non-linearity between
+ * the points.
+ *
+ * Time is measured in samples, value is usually normalized to 0..1.
+ *
+ * During automation recording we thin the recorded points using this
+ * value. If a point is sufficiently co-linear with its neighbours (as
+ * defined by the area of the triangle formed by three of them), we will
+ * not include it in the list. The larger the value, the more points are
+ * excluded, so this effectively measures the amount of thinning to be
+ * done.
+ *
+ * @param thinning_factor area-size (default: 20)
+ */
+ void thin (double thinning_factor);