Very customizable modulation matrix object.
More...
#include <modmatrix.h>
|
std::shared_ptr< ModMatrixParameters > | parameters = nullptr |
|
double * | modSourceData [kNumberModSources] |
|
double * | modDestinationData [kNumberModDestinations] |
|
uint32_t | modDestTransform [kNumberModDestinations] |
|
Very customizable modulation matrix object.
- has no base class
- implements a modulation matrix using row/column paradigm
- See the ModMatrixParameters structure also
- Author
- Will Pirkle http://www.willpirkle.com
- Version
- Revision : 1.0
- Date
- Date : 2021 / 04 / 26
◆ ModMatrix()
Clears out matrix arrays for initial state.
default constructor
- Parameters
-
_parameters | shared parameters |
- Returns
- the processed sample
◆ ~ModMatrix()
virtual SynthLab::ModMatrix::~ModMatrix |
( |
| ) |
|
|
inlinevirtual |
◆ addModDestination()
void SynthLab::ModMatrix::addModDestination |
( |
uint32_t |
destArrayIndex, |
|
|
double * |
destModPtr, |
|
|
uint32_t |
transform = kNoMMTransform |
|
) |
| |
Adds a modulation destination to the matrix.
- each destination is uniquely identified and placed into an array slot
- a transform is optionally applied during modulation calculation
- Parameters
-
destArrayIndex | unique index in the source array |
destModPtr | pointer to the modulation source value connected to the slot |
transform | optional transform, see .h |
- Returns
- the processed sample
◆ addModSource()
void SynthLab::ModMatrix::addModSource |
( |
uint32_t |
sourceArrayIndex, |
|
|
double * |
sourceModPtr |
|
) |
| |
Adds a modulation source to the matrix.
- each source is uniquely identified and placed into an array slot
- Parameters
-
sourceArrayIndex | unique index in the source array |
sourceModPtr | pointer to the modulation source value connected to the slot |
- Returns
- the processed sample
◆ clearModDestination()
void SynthLab::ModMatrix::clearModDestination |
( |
uint32_t |
destArrayIndex | ) |
|
Removes a modulation destination to the matrix.
- each destination is uniquely identified and placed into an array slot
- Parameters
-
destArrayIndex | unique index in the source array |
- Returns
- the processed sample
◆ clearModMatrixArrays()
void SynthLab::ModMatrix::clearModMatrixArrays |
( |
| ) |
|
Clears out all source and destination pointers from the array.
- usually only done once during the initialization process
- Returns
- the processed sample
◆ clearModSource()
void SynthLab::ModMatrix::clearModSource |
( |
uint32_t |
sourceArrayIndex | ) |
|
Removes a modulation source to the matrix.
- each source is uniquely identified and placed into an array slot
- Parameters
-
sourceArrayIndex | unique index in the source array |
- Returns
- the processed sample
◆ getParameters()
for standalone operation only
◆ runModMatrix()
void SynthLab::ModMatrix::runModMatrix |
( |
| ) |
|
Runs the modulation matrix (see Synth book)
- loops over source-destination pairs that are programmed during voice construction or as cores are loaded/unloaded
- fetches source value and accumulates with destination modulation value
- may apply a transform if needed
- Returns
- the processed sample
The documentation for this class was generated from the following files: