mirror of
https://codeberg.org/armin/terion.git
synced 2026-10-11 16:41:53 +02:00
27 lines
779 B
C++
27 lines
779 B
C++
#pragma once
|
|
#include <juce_audio_processors/juce_audio_processors.h>
|
|
#include <juce_opengl/juce_opengl.h>
|
|
#include "PluginProcessor.h"
|
|
|
|
class VectorScope : public juce::Component, private juce::Timer
|
|
{
|
|
public:
|
|
explicit VectorScope(TerionProcessor& p);
|
|
~VectorScope() override;
|
|
|
|
void paint(juce::Graphics& g) override;
|
|
void resized() override;
|
|
void timerCallback() override;
|
|
|
|
float getRadius() const;
|
|
|
|
private:
|
|
TerionProcessor& processor;
|
|
juce::Image trail;
|
|
|
|
void drawLegends(juce::Graphics& g, float cx, float cy, float radius);
|
|
void drawHairCross(juce::Graphics& g, float cx, float cy);
|
|
void drawMetricsOverlay(juce::Graphics& g, const juce::Rectangle<int>& bounds);
|
|
|
|
JUCE_DECLARE_NON_COPYABLE_WITH_LEAK_DETECTOR(VectorScope)
|
|
};
|