13class AudioDeviceManager { };
227 std::unique_ptr<FullInterface>
gui_;
A no-op stub implementation used when authentication is disabled.
Definition authentication.h:163
The main GUI container for the entire synthesizer interface.
Definition full_interface.h:61
A base class providing foundational functionality for the Vital synthesizer’s engine,...
Definition synth_base.h:42
An interface class linking the Vital synthesizer backend (SynthBase) with a GUI.
Definition synth_gui_interface.h:56
void notifyModulationsChanged()
Notifies the GUI that modulation connections or states have changed.
Definition synth_gui_interface.cpp:83
SynthBase * synth_
The backend SynthBase this GUI interface controls.
Definition synth_gui_interface.h:226
std::unique_ptr< FullInterface > gui_
The primary GUI component (if applicable).
Definition synth_gui_interface.h:227
SynthGuiInterface(SynthBase *synth, bool use_gui=true)
Constructs the SynthGuiInterface, optionally creating a FullInterface GUI.
Definition synth_gui_interface.cpp:49
FullInterface * getGui()
Gets the FullInterface GUI component if it exists.
Definition synth_gui_interface.h:223
vital::mono_float getControlValue(const std::string &name)
Retrieves the current value of a named control from the synth.
Definition synth_gui_interface.cpp:79
SynthBase * getSynth()
Returns the SynthBase instance this interface is managing.
Definition synth_gui_interface.h:85
void notifyChange()
Notifies the GUI that a parameter or modulation changed, prompting GUI updates.
Definition synth_gui_interface.cpp:165
void setGuiSize(float scale)
Sets the GUI window or component size based on a scale factor.
Definition synth_gui_interface.cpp:193
void initModulationValues(const std::string &source, const std::string &destination)
Initializes modulation values for a newly created modulation connection.
Definition synth_gui_interface.cpp:103
void setModulationValues(const std::string &source, const std::string &destination, vital::mono_float amount, bool bipolar, bool stereo, bool bypass)
Sets various modulation parameters (amount, bipolar, stereo, bypass) for a given connection.
Definition synth_gui_interface.cpp:119
virtual void updateGuiControl(const std::string &name, vital::mono_float value)
Updates a single GUI control to reflect a new parameter value.
Definition synth_gui_interface.cpp:71
void disconnectModulation(std::string source, std::string destination)
Disconnects a modulation from the GUI layer.
Definition synth_gui_interface.cpp:146
void connectModulation(std::string source, std::string destination)
Connects a modulation source to a destination parameter through the GUI.
Definition synth_gui_interface.cpp:91
void setFocus()
Brings the GUI window or main component into focus.
Definition synth_gui_interface.cpp:158
virtual ~SynthGuiInterface()
Destroys the SynthGuiInterface, cleaning up any associated GUI resources.
Definition synth_gui_interface.cpp:60
virtual AudioDeviceManager * getAudioDeviceManager()
Retrieves the audio device manager if available.
Definition synth_gui_interface.h:78
void openSaveDialog()
Opens a save dialog (e.g., to save a preset) through the GUI.
Definition synth_gui_interface.cpp:179
void notifyModulationValueChanged(int index)
Notifies the GUI that a specific modulation's value changed.
Definition synth_gui_interface.cpp:87
virtual void updateFullGui()
Updates the entire GUI to reflect the current synth state.
Definition synth_gui_interface.cpp:62
void externalPresetLoaded(File preset)
Notifies the GUI that a preset was loaded externally (outside the GUI controls).
Definition synth_gui_interface.cpp:186
void notifyFresh()
Notifies the GUI that a fresh state (like a new preset load) has occurred, prompting a full refresh.
Definition synth_gui_interface.cpp:172
A class responsible for creating complete wavetables from groups of wavetable components.
Definition wavetable_creator.h:27
constexpr int kNumOscillators
Number of oscillators available in Vital.
Definition synth_constants.h:16
std::map< std::string, Output * > output_map
Maps parameter names to Output pointers, representing output signals from various modules.
Definition synth_types.h:229
std::map< std::string, Value * > control_map
Maps parameter names to Value pointers representing synth control parameters.
Definition synth_types.h:214
float mono_float
Definition common.h:33
A struct holding references and data used by the GUI to interact with the SynthBase.
Definition synth_gui_interface.h:27
vital::output_map poly_modulations
Polyphonic modulation values.
Definition synth_gui_interface.h:37
vital::control_map controls
Current set of parameter controls from the synth.
Definition synth_gui_interface.h:35
vital::output_map modulation_sources
All available modulation sources.
Definition synth_gui_interface.h:38
vital::output_map mono_modulations
Mono (global) modulation values.
Definition synth_gui_interface.h:36
SynthBase * synth
Pointer back to the associated SynthBase.
Definition synth_gui_interface.h:40
WavetableCreator * wavetable_creators[vital::kNumOscillators]
Array of pointers to wavetable creators for each oscillator.
Definition synth_gui_interface.h:39
SynthGuiData(SynthBase *synth_base)
Constructs SynthGuiData from a given SynthBase instance.
Definition synth_gui_interface.cpp:14
A structure representing a single modulation connection between a modulation source and a destination...
Definition synth_types.h:30