StoneyVCV v2
StoneyDSP Modules for VCV Rack 2.
Loading...
Searching...
No Matches
StoneyDSP::StoneyVCV::VCA::VCAModule Struct Referencefinal

The VCAModule struct. More...

#include <VCA.hpp>

Inheritance diagram for StoneyDSP::StoneyVCV::VCA::VCAModule:
[legend]
Collaboration diagram for StoneyDSP::StoneyVCV::VCA::VCAModule:
[legend]

Public Types

enum  IdxParams { GAIN_PARAM , NUM_PARAMS }
 
enum  IdxInputs { VCA_INPUT , CV_INPUT , NUM_INPUTS }
 
enum  IdxOutputs { VCA_OUTPUT , NUM_OUTPUTS }
 
enum  IdxLights { BLINK_LIGHT , NUM_LIGHTS }
 

Public Member Functions

 VCAModule ()
 Construct a new VCAModule object.
 
virtual ~VCAModule () noexcept
 Destroy the VCAModule object.
 
virtual void process (const ::StoneyDSP::StoneyVCV::VCA::VCAModule::ProcessArgs &args) override
 Advances the module by one audio sample.
 

Private Types

using ProcessArgs = ::rack::engine::Module::ProcessArgs
 

Private Member Functions

::rack::engine::Input & getVcaInput () noexcept
 
::rack::engine::Input & getCvInput () noexcept
 
::rack::engine::Param & getGainParam () noexcept
 
::rack::engine::Output & getVcaOutput () noexcept
 
::rack::engine::Light & getBlinkLight () noexcept
 
 VCAModule (const VCAModule &)=delete
 
VCAModuleoperator= (const VCAModule &)=delete
 
 VCAModule (VCAModule &&)=delete
 
VCAModuleoperator= (VCAModule &&)=delete
 

Private Attributes

::rack::dsp::ClockDivider lightDivider
 
::std::array<::StoneyDSP::StoneyVCV::VCA::VCAEngine<::StoneyDSP::float_t >, 16 > engine
 
::std::array<::StoneyDSP::float_t, 16 > lightGains
 
const ::StoneyDSP::float_t & vNominal = ::StoneyDSP::StoneyVCV::Tools::vNominal
 
const ::StoneyDSP::float_t & vFloor = ::StoneyDSP::StoneyVCV::Tools::vFloor
 
::rack::engine::Input * vcaInputPtr
 
::rack::engine::Input * cvInputPtr
 
::rack::engine::Param * gainParamPtr
 
::rack::engine::Output * vcaOutputPtr
 
::rack::engine::Light * blinkLightPtr
 

Detailed Description

The VCAModule struct.

Member Typedef Documentation

◆ ProcessArgs

using StoneyDSP::StoneyVCV::VCA::VCAModule::ProcessArgs = ::rack::engine::Module::ProcessArgs
private

Member Enumeration Documentation

◆ IdxParams

Enumerator
GAIN_PARAM 
NUM_PARAMS 

◆ IdxInputs

Enumerator
VCA_INPUT 
CV_INPUT 
NUM_INPUTS 

◆ IdxOutputs

Enumerator
VCA_OUTPUT 
NUM_OUTPUTS 

◆ IdxLights

Enumerator
BLINK_LIGHT 
NUM_LIGHTS 

Constructor & Destructor Documentation

◆ VCAModule() [1/3]

StoneyDSP::StoneyVCV::VCA::VCAModule::VCAModule ( )

Construct a new VCAModule object.

◆ ~VCAModule()

virtual StoneyDSP::StoneyVCV::VCA::VCAModule::~VCAModule ( )
virtualnoexcept

Destroy the VCAModule object.

◆ VCAModule() [2/3]

StoneyDSP::StoneyVCV::VCA::VCAModule::VCAModule ( const VCAModule )
privatedelete

◆ VCAModule() [3/3]

StoneyDSP::StoneyVCV::VCA::VCAModule::VCAModule ( VCAModule &&  )
privatedelete

Member Function Documentation

◆ process()

virtual void StoneyDSP::StoneyVCV::VCA::VCAModule::process ( const ::StoneyDSP::StoneyVCV::VCA::VCAModule::ProcessArgs args)
overridevirtual

Advances the module by one audio sample.

Parameters
args

◆ getVcaInput()

::rack::engine::Input & StoneyDSP::StoneyVCV::VCA::VCAModule::getVcaInput ( )
privatenoexcept

◆ getCvInput()

::rack::engine::Input & StoneyDSP::StoneyVCV::VCA::VCAModule::getCvInput ( )
privatenoexcept

◆ getGainParam()

::rack::engine::Param & StoneyDSP::StoneyVCV::VCA::VCAModule::getGainParam ( )
privatenoexcept

◆ getVcaOutput()

::rack::engine::Output & StoneyDSP::StoneyVCV::VCA::VCAModule::getVcaOutput ( )
privatenoexcept

◆ getBlinkLight()

::rack::engine::Light & StoneyDSP::StoneyVCV::VCA::VCAModule::getBlinkLight ( )
privatenoexcept

◆ operator=() [1/2]

VCAModule & StoneyDSP::StoneyVCV::VCA::VCAModule::operator= ( const VCAModule )
privatedelete

◆ operator=() [2/2]

VCAModule & StoneyDSP::StoneyVCV::VCA::VCAModule::operator= ( VCAModule &&  )
privatedelete

Member Data Documentation

◆ lightDivider

::rack::dsp::ClockDivider StoneyDSP::StoneyVCV::VCA::VCAModule::lightDivider
private

◆ engine

::std::array<::StoneyDSP::StoneyVCV::VCA::VCAEngine<::StoneyDSP::float_t>, 16> StoneyDSP::StoneyVCV::VCA::VCAModule::engine
private

◆ lightGains

::std::array<::StoneyDSP::float_t, 16> StoneyDSP::StoneyVCV::VCA::VCAModule::lightGains
private

◆ vNominal

const ::StoneyDSP::float_t& StoneyDSP::StoneyVCV::VCA::VCAModule::vNominal = ::StoneyDSP::StoneyVCV::Tools::vNominal
private

◆ vFloor

const ::StoneyDSP::float_t& StoneyDSP::StoneyVCV::VCA::VCAModule::vFloor = ::StoneyDSP::StoneyVCV::Tools::vFloor
private

◆ vcaInputPtr

::rack::engine::Input* StoneyDSP::StoneyVCV::VCA::VCAModule::vcaInputPtr
private

◆ cvInputPtr

::rack::engine::Input* StoneyDSP::StoneyVCV::VCA::VCAModule::cvInputPtr
private

◆ gainParamPtr

::rack::engine::Param* StoneyDSP::StoneyVCV::VCA::VCAModule::gainParamPtr
private

◆ vcaOutputPtr

::rack::engine::Output* StoneyDSP::StoneyVCV::VCA::VCAModule::vcaOutputPtr
private

◆ blinkLightPtr

::rack::engine::Light* StoneyDSP::StoneyVCV::VCA::VCAModule::blinkLightPtr
private

The documentation for this struct was generated from the following file: