Skip to main content
Skip table of contents

PresetArrayHandler

Overview

Updates module array from different preset tables.

Discussion

This module updates the array of any other module from the presetsArray. The presetsArray is a 3-D array of numArrays, each with size numRows x numCols. The 3-D array is arranged as cascaded 2-D arrays For example, 3 arrays with size 2 x 3 each is arranged as 0 0 0 0 0 0 1 1 1 1 1 1 2 2 2 2 2 2 where 2x3 array with zeros is one array, 2x3 array with ones is second array and so on. The cascaded 2-D array is multiplied or added element by element to create one 2-D array of size numRows x numCols, which is then used to update the array of the other module. The math operation is controlled by the operation argument, either multiplication or addition.

Type Definition

CODE
typedef struct _ModulePresetArrayHandler
{
    ModuleInstanceDescriptor instance;            // Common Audio Weaver module instance structure
    INT32 numArrays;                              // number of presets.
    INT32 numRows;                                // the number of vectors.
    INT32 numCols;                                // the size of each vector.
    INT32 operation;                              // math operation on presets. 0 - multiplication and 1 - addition.
    INT32 initialFlag;                            // boolean flag which handles initial setup.
    FLOAT32* presetsArray;                        // 3-D presets array table.
    void * modPtr;                                // Points to the module to set.
    void * varPtr;                                // Points to the variable to set within the module instance structure.
} ModulePresetArrayHandlerClass;

Variables

Properties

Name

Type

Usage

isHidden

Default value

Range

Units

numArrays

int

const

0

2

Unrestricted

numRows

int

const

0

1

Unrestricted

numCols

int

const

0

5

Unrestricted

operation

int

const

0

0

Unrestricted

initialFlag

int

state

0

1

Unrestricted

presetsArray

float*

parameter

0

[2 x 5]

Unrestricted

modPtr

void *

parameter

1

Unrestricted

varPtr

void *

parameter

1

Unrestricted

MATLAB Usage

File Name: preset_array_handler_module.m

CODE
 M=preset_array_handler_module(NAME, NUMARRAYS, NUMROWS, NUMCOLS, OPERATION, MODVAR)
 Array set module.  This module can reach into the instance structure
 of other modules and set filter coefficients.  
 Arguments:
    NAME - name of the module.
    NUMARRAYS - number of presets, the Z dimension of internal table.
    NUMROWS - the dimension X of internal table.
    NUMCOLS - the dimension Y of internal table.
    OPERATION - operation to be performed on presets (multiply or addition).
                0 - Multiplication
                1 - Addition
    VARNAME - specifies the module and variable name using the form:
              'MOD.VAR' where MOD is the module name and VAR is the 
              variable name.  You can also specify internal subsystems using
              'SUBSYS.MOD.VAR'.

JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.