annotate layer/ColourMapper.h @ 789:9fd1bdf214dd tonioni

Play pointer: when user drags pane during playback such that the pointer is no longer visible, accept that and stop trying to track it until pointer naturally comes back within visible area
author Chris Cannam
date Thu, 12 Jun 2014 12:48:11 +0100
parents aca01b3af29f
children a1226b3b7925
rev   line source
Chris@376 1 /* -*- c-basic-offset: 4 indent-tabs-mode: nil -*- vi:set ts=8 sts=4 sw=4: */
Chris@376 2
Chris@376 3 /*
Chris@376 4 Sonic Visualiser
Chris@376 5 An audio file viewer and annotation editor.
Chris@376 6 Centre for Digital Music, Queen Mary, University of London.
Chris@376 7 This file copyright 2006-2007 Chris Cannam and QMUL.
Chris@376 8
Chris@376 9 This program is free software; you can redistribute it and/or
Chris@376 10 modify it under the terms of the GNU General Public License as
Chris@376 11 published by the Free Software Foundation; either version 2 of the
Chris@376 12 License, or (at your option) any later version. See the file
Chris@376 13 COPYING included with this distribution for more information.
Chris@376 14 */
Chris@376 15
Chris@376 16 #ifndef _COLOUR_MAPPER_H_
Chris@376 17 #define _COLOUR_MAPPER_H_
Chris@376 18
Chris@376 19 #include <QObject>
Chris@376 20 #include <QColor>
Chris@376 21 #include <QString>
Chris@376 22
Chris@376 23 /**
Chris@376 24 * A class for mapping intensity values onto various colour maps.
Chris@376 25 */
Chris@376 26
Chris@376 27 class ColourMapper : public QObject
Chris@376 28 {
Chris@376 29 Q_OBJECT
Chris@376 30
Chris@376 31 public:
Chris@376 32 ColourMapper(int map, float minValue, float maxValue);
Chris@376 33 virtual ~ColourMapper();
Chris@376 34
Chris@376 35 enum StandardMap {
Chris@376 36 DefaultColours,
Chris@376 37 Sunset,
Chris@376 38 WhiteOnBlack,
Chris@376 39 BlackOnWhite,
Chris@376 40 RedOnBlue,
Chris@376 41 YellowOnBlack,
Chris@376 42 BlueOnBlack,
Chris@376 43 FruitSalad,
Chris@376 44 Banded,
Chris@376 45 Highlight,
Chris@536 46 Printer,
Chris@536 47 HighGain
Chris@376 48 };
Chris@376 49
Chris@376 50 int getMap() const { return m_map; }
Chris@376 51 float getMinValue() const { return m_min; }
Chris@376 52 float getMaxValue() const { return m_max; }
Chris@376 53
Chris@376 54 static int getColourMapCount();
Chris@376 55 static QString getColourMapName(int n);
Chris@376 56
Chris@376 57 QColor map(float value) const;
Chris@376 58
Chris@376 59 QColor getContrastingColour() const; // for cursors etc
Chris@376 60 bool hasLightBackground() const;
Chris@376 61
Chris@376 62 protected:
Chris@376 63 int m_map;
Chris@376 64 float m_min;
Chris@376 65 float m_max;
Chris@376 66 };
Chris@376 67
Chris@376 68 #endif
Chris@376 69