FloatVectorOperations Class Reference
juce_audio_basics » buffers

A collection of simple vector operations on arrays of floats, accelerated with SIMD instructions where possible. More...

## Static Public Member Functions

static void JUCE_CALLTYPE | clear (float *dest, int numValues) noexcept
| Clears a vector of floats. More...
static void JUCE_CALLTYPE | clear (double *dest, int numValues) noexcept
| Clears a vector of doubles. More...
static void JUCE_CALLTYPE | fill (float *dest, float valueToFill, int numValues) noexcept
| Copies a repeated value into a vector of floats. More...
static void JUCE_CALLTYPE | fill (double *dest, double valueToFill, int numValues) noexcept
| Copies a repeated value into a vector of doubles. More...
static void JUCE_CALLTYPE | copy (float *dest, const float *src, int numValues) noexcept
| Copies a vector of floats. More...
static void JUCE_CALLTYPE | copy (double *dest, const double *src, int numValues) noexcept
| Copies a vector of doubles. More...
static void JUCE_CALLTYPE | copyWithMultiply (float *dest, const float *src, float multiplier, int numValues) noexcept
| Copies a vector of floats, multiplying each value by a given multiplier. More...
static void JUCE_CALLTYPE | copyWithMultiply (double *dest, const double *src, double multiplier, int numValues) noexcept
| Copies a vector of doubles, multiplying each value by a given multiplier. More...
static void JUCE_CALLTYPE | add (float *dest, float amountToAdd, int numValues) noexcept
| Adds a fixed value to the destination values. More...
static void JUCE_CALLTYPE | add (double *dest, double amountToAdd, int numValues) noexcept
| Adds a fixed value to the destination values. More...
static void JUCE_CALLTYPE | add (float *dest, const float *src, float amount, int numValues) noexcept
| Adds a fixed value to each source value and stores it in the destination array. More...
static void JUCE_CALLTYPE | add (double *dest, const double *src, double amount, int numValues) noexcept
| Adds a fixed value to each source value and stores it in the destination array. More...
static void JUCE_CALLTYPE | add (float *dest, const float *src, int numValues) noexcept
| Adds the source values to the destination values. More...
static void JUCE_CALLTYPE | add (double *dest, const double *src, int numValues) noexcept
| Adds the source values to the destination values. More...
static void JUCE_CALLTYPE | add (float *dest, const float *src1, const float *src2, int num) noexcept
| Adds each source1 value to the corresponding source2 value and stores the result in the destination array. More...
static void JUCE_CALLTYPE | add (double *dest, const double *src1, const double *src2, int num) noexcept
| Adds each source1 value to the corresponding source2 value and stores the result in the destination array. More...
static void JUCE_CALLTYPE | subtract (float *dest, const float *src, int numValues) noexcept
| Subtracts the source values from the destination values. More...
static void JUCE_CALLTYPE | subtract (double *dest, const double *src, int numValues) noexcept
| Subtracts the source values from the destination values. More...
static void JUCE_CALLTYPE | subtract (float *dest, const float *src1, const float *src2, int num) noexcept
| Subtracts each source2 value from the corresponding source1 value and stores the result in the destination array. More...
static void JUCE_CALLTYPE | subtract (double *dest, const double *src1, const double *src2, int num) noexcept
| Subtracts each source2 value from the corresponding source1 value and stores the result in the destination array. More...
static void JUCE_CALLTYPE | addWithMultiply (float *dest, const float *src, float multiplier, int numValues) noexcept
| Multiplies each source value by the given multiplier, then adds it to the destination value. More...
static void JUCE_CALLTYPE | addWithMultiply (double *dest, const double *src, double multiplier, int numValues) noexcept
| Multiplies each source value by the given multiplier, then adds it to the destination value. More...
static void JUCE_CALLTYPE | addWithMultiply (float *dest, const float *src1, const float *src2, int num) noexcept
| Multiplies each source1 value by the corresponding source2 value, then adds it to the destination value. More...
static void JUCE_CALLTYPE | addWithMultiply (double *dest, const double *src1, const double *src2, int num) noexcept
| Multiplies each source1 value by the corresponding source2 value, then adds it to the destination value. More...
static void JUCE_CALLTYPE | subtractWithMultiply (float *dest, const float *src, float multiplier, int numValues) noexcept
| Multiplies each source value by the given multiplier, then subtracts it to the destination value. More...
static void JUCE_CALLTYPE | subtractWithMultiply (double *dest, const double *src, double multiplier, int numValues) noexcept
| Multiplies each source value by the given multiplier, then subtracts it to the destination value. More...
static void JUCE_CALLTYPE | subtractWithMultiply (float *dest, const float *src1, const float *src2, int num) noexcept
| Multiplies each source1 value by the corresponding source2 value, then subtracts it to the destination value. More...
static void JUCE_CALLTYPE | subtractWithMultiply (double *dest, const double *src1, const double *src2, int num) noexcept
| Multiplies each source1 value by the corresponding source2 value, then subtracts it to the destination value. More...
static void JUCE_CALLTYPE | multiply (float *dest, const float *src, int numValues) noexcept
| Multiplies the destination values by the source values. More...
static void JUCE_CALLTYPE | multiply (double *dest, const double *src, int numValues) noexcept
| Multiplies the destination values by the source values. More...
static void JUCE_CALLTYPE | multiply (float *dest, const float *src1, const float *src2, int numValues) noexcept
| Multiplies each source1 value by the correspinding source2 value, then stores it in the destination array. More...
static void JUCE_CALLTYPE | multiply (double *dest, const double *src1, const double *src2, int numValues) noexcept
| Multiplies each source1 value by the correspinding source2 value, then stores it in the destination array. More...
static void JUCE_CALLTYPE | multiply (float *dest, float multiplier, int numValues) noexcept
| Multiplies each of the destination values by a fixed multiplier. More...
static void JUCE_CALLTYPE | multiply (double *dest, double multiplier, int numValues) noexcept
| Multiplies each of the destination values by a fixed multiplier. More...
static void JUCE_CALLTYPE | multiply (float *dest, const float *src, float multiplier, int num) noexcept
| Multiplies each of the source values by a fixed multiplier and stores the result in the destination array. More...
static void JUCE_CALLTYPE | multiply (double *dest, const double *src, double multiplier, int num) noexcept
| Multiplies each of the source values by a fixed multiplier and stores the result in the destination array. More...
static void JUCE_CALLTYPE | negate (float *dest, const float *src, int numValues) noexcept
| Copies a source vector to a destination, negating each value. More...
static void JUCE_CALLTYPE | negate (double *dest, const double *src, int numValues) noexcept
| Copies a source vector to a destination, negating each value. More...
static void JUCE_CALLTYPE | abs (float *dest, const float *src, int numValues) noexcept
| Copies a source vector to a destination, taking the absolute of each value. More...
static void JUCE_CALLTYPE | abs (double *dest, const double *src, int numValues) noexcept
| Copies a source vector to a destination, taking the absolute of each value. More...
static void JUCE_CALLTYPE | convertFixedToFloat (float *dest, const int *src, float multiplier, int numValues) noexcept
| Converts a stream of integers to floats, multiplying each one by the given multiplier. More...
static void JUCE_CALLTYPE | min (float *dest, const float *src, float comp, int num) noexcept
| Each element of dest will be the minimum of the corresponding element of the source array and the given comp value. More...
static void JUCE_CALLTYPE | min (double *dest, const double *src, double comp, int num) noexcept
| Each element of dest will be the minimum of the corresponding element of the source array and the given comp value. More...
static void JUCE_CALLTYPE | min (float *dest, const float *src1, const float *src2, int num) noexcept
| Each element of dest will be the minimum of the corresponding source1 and source2 values. More...
static void JUCE_CALLTYPE | min (double *dest, const double *src1, const double *src2, int num) noexcept
| Each element of dest will be the minimum of the corresponding source1 and source2 values. More...
static void JUCE_CALLTYPE | max (float *dest, const float *src, float comp, int num) noexcept
| Each element of dest will be the maximum of the corresponding element of the source array and the given comp value. More...
static void JUCE_CALLTYPE | max (double *dest, const double *src, double comp, int num) noexcept
| Each element of dest will be the maximum of the corresponding element of the source array and the given comp value. More...
static void JUCE_CALLTYPE | max (float *dest, const float *src1, const float *src2, int num) noexcept
| Each element of dest will be the maximum of the corresponding source1 and source2 values. More...
static void JUCE_CALLTYPE | max (double *dest, const double *src1, const double *src2, int num) noexcept
| Each element of dest will be the maximum of the corresponding source1 and source2 values. More...
static void JUCE_CALLTYPE | clip (float *dest, const float *src, float low, float high, int num) noexcept
| Each element of dest is calculated by hard clipping the corresponding src element so that it is in the range specified by the arguments low and high. More...
static void JUCE_CALLTYPE | clip (double *dest, const double *src, double low, double high, int num) noexcept
| Each element of dest is calculated by hard clipping the corresponding src element so that it is in the range specified by the arguments low and high. More...
static Range< float > JUCE_CALLTYPE | findMinAndMax (const float *src, int numValues) noexcept
| Finds the minimum and maximum values in the given array. More...
static Range< double > JUCE_CALLTYPE | findMinAndMax (const double *src, int numValues) noexcept
| Finds the minimum and maximum values in the given array. More...
static float JUCE_CALLTYPE | findMinimum (const float *src, int numValues) noexcept
| Finds the minimum value in the given array. More...
static double JUCE_CALLTYPE | findMinimum (const double *src, int numValues) noexcept
| Finds the minimum value in the given array. More...
static float JUCE_CALLTYPE | findMaximum (const float *src, int numValues) noexcept
| Finds the maximum value in the given array. More...
static double JUCE_CALLTYPE | findMaximum (const double *src, int numValues) noexcept
| Finds the maximum value in the given array. More...
static void JUCE_CALLTYPE | enableFlushToZeroMode (bool shouldEnable) noexcept
| This method enables or disables the SSE/NEON flush-to-zero mode. More...
static void JUCE_CALLTYPE | disableDenormalisedNumberSupport (bool shouldDisable=true) noexcept
| On Intel CPUs, this method enables the SSE flush-to-zero and denormalised-are-zero modes. More...
static bool JUCE_CALLTYPE | areDenormalsDisabled () noexcept
| This method returns true if denormals are currently disabled. More...

## Detailed Description

A collection of simple vector operations on arrays of floats, accelerated with SIMD instructions where possible.

## Member Function Documentation

## clear() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::clear | ( | float * | dest,
|  | int | numValues
| ) |  |

static noexcept

Clears a vector of floats.

Referenced by AudioBuffer< float >::applyGain(), AudioBuffer< float >::clear(), and AudioBuffer< float >::copyFrom().

## clear() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::clear | ( | double * | dest,
|  | int | numValues
| ) |  |

static noexcept

Clears a vector of doubles.

## fill() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::fill | ( | float * | dest,
|  | float | valueToFill,
|  | int | numValues
| ) |  |

static noexcept

Copies a repeated value into a vector of floats.

## fill() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::fill | ( | double * | dest,
|  | double | valueToFill,
|  | int | numValues
| ) |  |

static noexcept

Copies a repeated value into a vector of doubles.

## copy() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::copy | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a vector of floats.

Referenced by AudioBuffer< float >::addFrom(), AudioBuffer< float >::AudioBuffer(), AudioBuffer< float >::copyFrom(), dsp::AudioBlock< const SampleType >::copyTo(), AudioBuffer< float >::operator=(), and AudioBuffer< float >::setSize().

## copy() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::copy | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a vector of doubles.

## copyWithMultiply() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::copyWithMultiply | ( | float * | dest,
|  | const float * | src,
|  | float | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Copies a vector of floats, multiplying each value by a given multiplier.

Referenced by AudioBuffer< float >::addFrom(), and AudioBuffer< float >::copyFrom().

## copyWithMultiply() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::copyWithMultiply | ( | double * | dest,
|  | const double * | src,
|  | double | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Copies a vector of doubles, multiplying each value by a given multiplier.

## add() [1/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | float * | dest,
|  | float | amountToAdd,
|  | int | numValues
| ) |  |

static noexcept

Adds a fixed value to the destination values.

Referenced by AudioBuffer< float >::addFrom(), and dsp::Bias< FloatType >::process().

## add() [2/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | double * | dest,
|  | double | amountToAdd,
|  | int | numValues
| ) |  |

static noexcept

Adds a fixed value to the destination values.

## add() [3/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | float * | dest,
|  | const float * | src,
|  | float | amount,
|  | int | numValues
| ) |  |

static noexcept

Adds a fixed value to each source value and stores it in the destination array.

## add() [4/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | double * | dest,
|  | const double * | src,
|  | double | amount,
|  | int | numValues
| ) |  |

static noexcept

Adds a fixed value to each source value and stores it in the destination array.

## add() [5/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Adds the source values to the destination values.

## add() [6/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Adds the source values to the destination values.

## add() [7/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Adds each source1 value to the corresponding source2 value and stores the result in the destination array.

## add() [8/8]

static void JUCE_CALLTYPE FloatVectorOperations::add | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Adds each source1 value to the corresponding source2 value and stores the result in the destination array.

## subtract() [1/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtract | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Subtracts the source values from the destination values.

## subtract() [2/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtract | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Subtracts the source values from the destination values.

## subtract() [3/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtract | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Subtracts each source2 value from the corresponding source1 value and stores the result in the destination array.

## subtract() [4/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtract | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Subtracts each source2 value from the corresponding source1 value and stores the result in the destination array.

## addWithMultiply() [1/4]

static void JUCE_CALLTYPE FloatVectorOperations::addWithMultiply | ( | float * | dest,
|  | const float * | src,
|  | float | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source value by the given multiplier, then adds it to the destination value.

Referenced by AudioBuffer< float >::addFrom().

## addWithMultiply() [2/4]

static void JUCE_CALLTYPE FloatVectorOperations::addWithMultiply | ( | double * | dest,
|  | const double * | src,
|  | double | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source value by the given multiplier, then adds it to the destination value.

## addWithMultiply() [3/4]

static void JUCE_CALLTYPE FloatVectorOperations::addWithMultiply | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Multiplies each source1 value by the corresponding source2 value, then adds it to the destination value.

## addWithMultiply() [4/4]

static void JUCE_CALLTYPE FloatVectorOperations::addWithMultiply | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Multiplies each source1 value by the corresponding source2 value, then adds it to the destination value.

## subtractWithMultiply() [1/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtractWithMultiply | ( | float * | dest,
|  | const float * | src,
|  | float | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source value by the given multiplier, then subtracts it to the destination value.

## subtractWithMultiply() [2/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtractWithMultiply | ( | double * | dest,
|  | const double * | src,
|  | double | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source value by the given multiplier, then subtracts it to the destination value.

## subtractWithMultiply() [3/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtractWithMultiply | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Multiplies each source1 value by the corresponding source2 value, then subtracts it to the destination value.

## subtractWithMultiply() [4/4]

static void JUCE_CALLTYPE FloatVectorOperations::subtractWithMultiply | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Multiplies each source1 value by the corresponding source2 value, then subtracts it to the destination value.

## multiply() [1/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Multiplies the destination values by the source values.

Referenced by SmoothedValueBase< SmoothedValue< NumericType, ValueSmoothingTypes::Linear > >::applyGain(), AudioBuffer< float >::applyGain(), and dsp::Gain< FloatType >::process().

## multiply() [2/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Multiplies the destination values by the source values.

## multiply() [3/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source1 value by the correspinding source2 value, then stores it in the destination array.

## multiply() [4/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each source1 value by the correspinding source2 value, then stores it in the destination array.

## multiply() [5/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | float * | dest,
|  | float | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each of the destination values by a fixed multiplier.

## multiply() [6/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | double * | dest,
|  | double | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Multiplies each of the destination values by a fixed multiplier.

## multiply() [7/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | float * | dest,
|  | const float * | src,
|  | float | multiplier,
|  | int | num
| ) |  |

static noexcept

Multiplies each of the source values by a fixed multiplier and stores the result in the destination array.

## multiply() [8/8]

static void JUCE_CALLTYPE FloatVectorOperations::multiply | ( | double * | dest,
|  | const double * | src,
|  | double | multiplier,
|  | int | num
| ) |  |

static noexcept

Multiplies each of the source values by a fixed multiplier and stores the result in the destination array.

## negate() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::negate | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a source vector to a destination, negating each value.

## negate() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::negate | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a source vector to a destination, negating each value.

## abs() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::abs | ( | float * | dest,
|  | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a source vector to a destination, taking the absolute of each value.

## abs() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::abs | ( | double * | dest,
|  | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Copies a source vector to a destination, taking the absolute of each value.

## convertFixedToFloat()

static void JUCE_CALLTYPE FloatVectorOperations::convertFixedToFloat | ( | float * | dest,
|  | const int * | src,
|  | float | multiplier,
|  | int | numValues
| ) |  |

static noexcept

Converts a stream of integers to floats, multiplying each one by the given multiplier.

## min() [1/4]

static void JUCE_CALLTYPE FloatVectorOperations::min | ( | float * | dest,
|  | const float * | src,
|  | float | comp,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the minimum of the corresponding element of the source array and the given comp value.

## min() [2/4]

static void JUCE_CALLTYPE FloatVectorOperations::min | ( | double * | dest,
|  | const double * | src,
|  | double | comp,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the minimum of the corresponding element of the source array and the given comp value.

## min() [3/4]

static void JUCE_CALLTYPE FloatVectorOperations::min | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the minimum of the corresponding source1 and source2 values.

## min() [4/4]

static void JUCE_CALLTYPE FloatVectorOperations::min | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the minimum of the corresponding source1 and source2 values.

## max() [1/4]

static void JUCE_CALLTYPE FloatVectorOperations::max | ( | float * | dest,
|  | const float * | src,
|  | float | comp,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the maximum of the corresponding element of the source array and the given comp value.

## max() [2/4]

static void JUCE_CALLTYPE FloatVectorOperations::max | ( | double * | dest,
|  | const double * | src,
|  | double | comp,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the maximum of the corresponding element of the source array and the given comp value.

## max() [3/4]

static void JUCE_CALLTYPE FloatVectorOperations::max | ( | float * | dest,
|  | const float * | src1,
|  | const float * | src2,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the maximum of the corresponding source1 and source2 values.

## max() [4/4]

static void JUCE_CALLTYPE FloatVectorOperations::max | ( | double * | dest,
|  | const double * | src1,
|  | const double * | src2,
|  | int | num
| ) |  |

static noexcept

Each element of dest will be the maximum of the corresponding source1 and source2 values.

## clip() [1/2]

static void JUCE_CALLTYPE FloatVectorOperations::clip | ( | float * | dest,
|  | const float * | src,
|  | float | low,
|  | float | high,
|  | int | num
| ) |  |

static noexcept

Each element of dest is calculated by hard clipping the corresponding src element so that it is in the range specified by the arguments low and high.

## clip() [2/2]

static void JUCE_CALLTYPE FloatVectorOperations::clip | ( | double * | dest,
|  | const double * | src,
|  | double | low,
|  | double | high,
|  | int | num
| ) |  |

static noexcept

Each element of dest is calculated by hard clipping the corresponding src element so that it is in the range specified by the arguments low and high.

## findMinAndMax() [1/2]

static Range<float> JUCE_CALLTYPE FloatVectorOperations::findMinAndMax | ( | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the minimum and maximum values in the given array.

Referenced by dsp::AudioBlock< const SampleType >::findMinAndMax(), and AudioBuffer< float >::findMinMax().

## findMinAndMax() [2/2]

static Range<double> JUCE_CALLTYPE FloatVectorOperations::findMinAndMax | ( | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the minimum and maximum values in the given array.

## findMinimum() [1/2]

static float JUCE_CALLTYPE FloatVectorOperations::findMinimum | ( | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the minimum value in the given array.

## findMinimum() [2/2]

static double JUCE_CALLTYPE FloatVectorOperations::findMinimum | ( | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the minimum value in the given array.

## findMaximum() [1/2]

static float JUCE_CALLTYPE FloatVectorOperations::findMaximum | ( | const float * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the maximum value in the given array.

## findMaximum() [2/2]

static double JUCE_CALLTYPE FloatVectorOperations::findMaximum | ( | const double * | src,
|  | int | numValues
| ) |  |

static noexcept

Finds the maximum value in the given array.

## enableFlushToZeroMode()

static void JUCE_CALLTYPE FloatVectorOperations::enableFlushToZeroMode | ( | bool | shouldEnable | ) |

static noexcept

This method enables or disables the SSE/NEON flush-to-zero mode.

## disableDenormalisedNumberSupport()

static void JUCE_CALLTYPE FloatVectorOperations::disableDenormalisedNumberSupport | ( | bool | shouldDisable = `true` | ) |

static noexcept

On Intel CPUs, this method enables the SSE flush-to-zero and denormalised-are-zero modes.

This effectively sets the DAZ and FZ bits of the MXCSR register. On arm CPUs this will enable flush to zero mode. It's a convenient thing to call before audio processing code where you really want to avoid denormalisation performance hits.

## areDenormalsDisabled()

static bool JUCE_CALLTYPE FloatVectorOperations::areDenormalsDisabled | ( |  | ) |

static noexcept

This method returns true if denormals are currently disabled.

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

- juce_FloatVectorOperations.h