annotate layer/LinearColourScale.h @ 1383:86f319dd6ab9 spectrogramparam

Switch spectrum to antialiased drawing with considerable speedup for the dense areas; take horizontal scale height into account when rendering slice layer height
author Chris Cannam
date Wed, 07 Nov 2018 15:59:10 +0000
parents 4fe7a09be0fe
children
rev   line source
Chris@699 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@699 2
Chris@699 3 /*
Chris@699 4 Sonic Visualiser
Chris@699 5 An audio file viewer and annotation editor.
Chris@699 6 Centre for Digital Music, Queen Mary, University of London.
Chris@699 7 This file copyright 2006-2013 Chris Cannam and QMUL.
Chris@699 8
Chris@699 9 This program is free software; you can redistribute it and/or
Chris@699 10 modify it under the terms of the GNU General Public License as
Chris@699 11 published by the Free Software Foundation; either version 2 of the
Chris@699 12 License, or (at your option) any later version. See the file
Chris@699 13 COPYING included with this distribution for more information.
Chris@699 14 */
Chris@699 15
Chris@699 16 #ifndef LINEAR_COLOUR_SCALE_H
Chris@699 17 #define LINEAR_COLOUR_SCALE_H
Chris@699 18
Chris@699 19 #include <QRect>
Chris@699 20
Chris@699 21 class QPainter;
Chris@918 22 class LayerGeometryProvider;
Chris@699 23 class ColourScaleLayer;
Chris@699 24
Chris@699 25 class LinearColourScale
Chris@699 26 {
Chris@699 27 public:
Chris@918 28 int getWidth(LayerGeometryProvider *v, QPainter &paint);
Chris@699 29
Chris@699 30 void paintVertical
Chris@918 31 (LayerGeometryProvider *v, const ColourScaleLayer *layer, QPainter &paint, int x0,
Chris@905 32 double minf, double maxf);
Chris@699 33 };
Chris@699 34
Chris@699 35 #endif
Chris@699 36