Oscilloscope 0.5.0
A simple oscilloscope VST
Loading...
Searching...
No Matches
SampleFinder.h
Go to the documentation of this file.
1/*
2 ==============================================================================
3
4 SampleFinder.h
5 Created: 2 Apr 2023 5:30:47pm
6 Author: covariant
7
8 ==============================================================================
9*/
10
11#pragma once
12#include <JuceHeader.h>
13
18namespace FindMethods
19{
27 int crescentFirst(float triggerLevel, std::vector<float> currentlyDisplayedData);
28
36 int autoCrescentFirst(float triggerLevel, std::vector<float> currentlyDisplayedData);
37
45 int decrescentFirst(float triggerLevel, std::vector<float> currentlyDisplayedData);
46
54 int autoDecrescentFirst(float triggerLevel, std::vector<float> currentlyDisplayedData);
55};
56
62class BaseFinder : public juce::AudioProcessorValueTreeState::Listener
63{
64public:
73 int findFirstSample(float triggerLevel, std::vector<float> currentlyDisplayedData);
74
75protected:
81 std::function<int(float, std::vector<float>)> findSample;
82};
83
89{
90
91public:
99 void parameterChanged(const juce::String &parameterID, float newValue) override;
100};
101
107{
108public:
116 void parameterChanged(const juce::String &parameterID, float newValue) override;
117};
118
126class SampleFinder : public juce::AudioProcessorValueTreeState::Listener
127{
128public:
135 SampleFinder(bool isCrescent, bool isAuto);
136
142
150 int findFirstSample(float triggerLevel, std::vector<float> currentlyDisplayedData);
151
158 void parameterChanged(const juce::String &parameterID, float newValue) override;
159
165
171
177};
void parameterChanged(const juce::String &parameterID, float newValue) override
std::function< int(float, std::vector< float >)> findSample
Definition: SampleFinder.h:81
int findFirstSample(float triggerLevel, std::vector< float > currentlyDisplayedData)
void parameterChanged(const juce::String &parameterID, float newValue) override
ManualSampleFinder manualFinder
Definition: SampleFinder.h:170
AutoSampleFinder autoFinder
Definition: SampleFinder.h:164
void parameterChanged(const juce::String &parameterID, float newValue) override
int findFirstSample(float triggerLevel, std::vector< float > currentlyDisplayedData)
BaseFinder * currentFinder
Definition: SampleFinder.h:176
int autoCrescentFirst(float triggerLevel, std::vector< float > currentlyDisplayedData)
int crescentFirst(float triggerLevel, std::vector< float > currentlyDisplayedData)
int autoDecrescentFirst(float triggerLevel, std::vector< float > currentlyDisplayedData)
int decrescentFirst(float triggerLevel, std::vector< float > currentlyDisplayedData)