Vital
Loading...
Searching...
No Matches
trigger_random.h
Go to the documentation of this file.
1#pragma once
2
3#include "processor.h"
4#include "utils.h"
5
6namespace vital {
7
15 class TriggerRandom : public Processor {
16 public:
22 enum {
25 };
26
31
35 virtual ~TriggerRandom() { }
36
42 virtual Processor* clone() const override { return new TriggerRandom(*this); }
43
49 virtual void process(int num_samples) override;
50
51 private:
52 poly_float value_;
53 utils::RandomGenerator random_generator_;
54
55 JUCE_LEAK_DETECTOR(TriggerRandom)
56 };
57} // namespace vital
Base class for all signal-processing units in Vital.
Definition processor.h:212
A processor that outputs a random value on a trigger event.
Definition trigger_random.h:15
virtual ~TriggerRandom()
Destroys the TriggerRandom processor.
Definition trigger_random.h:35
@ kNumInputs
Definition trigger_random.h:24
@ kReset
Definition trigger_random.h:23
TriggerRandom()
Constructs a TriggerRandom processor, initializing the output value and random generator.
Definition trigger_random.cpp:7
virtual void process(int num_samples) override
Processes a block of samples, updating the random output if a trigger event occurs.
Definition trigger_random.cpp:12
virtual Processor * clone() const override
Clones the TriggerRandom processor, creating a new instance with identical configuration.
Definition trigger_random.h:42
A basic random number generator for producing uniform distributions of floats.
Definition utils.h:61
Contains classes and functions used within the Vital synthesizer framework.
Declares the Processor class and related structures for handling audio processing in a polyphonic con...
Represents a vector of floating-point values using SIMD instructions.
Definition poly_values.h:600
Provides various utility functions, classes, and constants for audio, math, and general-purpose opera...