OpenShot Audio Library | OpenShotAudio: juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType > Struct Template Reference

OpenShot Audio Library | OpenShotAudio 0.3.2

Loading...
Searching...
No Matches
Public Types | Static Public Member Functions | Static Public Attributes | List of all members
juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType > Struct Template Reference

`#include <juce_fallback_SIMDNativeOps.h>`

## Public Types
using | MaskType = typename SIMDInternal::MaskTypeFor< ScalarType >::type

## Static Public Member Functions
static forcedinline vSIMDType | add (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | sub (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | mul (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | bit_and (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | bit_or (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | bit_xor (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | bit_notand (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | min (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | max (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | equal (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | notEqual (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | greaterThan (vSIMDType a, vSIMDType b) noexcept
static forcedinline vSIMDType | greaterThanOrEqual (vSIMDType a, vSIMDType b) noexcept
static forcedinline ScalarType | get (vSIMDType v, size_t i) noexcept
static forcedinline vSIMDType | set (vSIMDType v, size_t i, ScalarType s) noexcept
static forcedinline vSIMDType | bit_not (vSIMDType av) noexcept
static forcedinline ScalarType | sum (vSIMDType av) noexcept
static forcedinline vSIMDType | truncate (vSIMDType av) noexcept
static forcedinline vSIMDType | multiplyAdd (vSIMDType av, vSIMDType bv, vSIMDType cv) noexcept
static forcedinline bool | allEqual (vSIMDType av, vSIMDType bv) noexcept
static forcedinline vSIMDType | cmplxmul (vSIMDType av, vSIMDType bv) noexcept
template<typename Op >
static forcedinline vSIMDType | apply (vSIMDType av, vSIMDType bv) noexcept
template<typename Op >
static forcedinline vSIMDType | cmp (vSIMDType av, vSIMDType bv) noexcept
template<typename Op >
static forcedinline vSIMDType | bitapply (vSIMDType av, vSIMDType bv) noexcept
static forcedinline vSIMDType | expand (ScalarType s) noexcept
static forcedinline vSIMDType | load (const ScalarType *a) noexcept
static forcedinline void | store (vSIMDType av, ScalarType *dest) noexcept
template<unsigned int shuffle_idx>
static forcedinline vSIMDType | shuffle (vSIMDType av) noexcept

## Static Public Attributes
static constexpr size_t | n = sizeof (vSIMDType) / sizeof (ScalarType)
static constexpr size_t | mask = (sizeof (vSIMDType) / sizeof (ScalarType)) - 1
static constexpr size_t | bits = SIMDInternal::Log2Helper<(int) n>::value

## Detailed Description

template<typename ScalarType, typename vSIMDType>
struct juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >

Useful fallback routines to use if the native SIMD op is not supported. You should never need to use this directly. Use juce_SIMDRegister instead.

Definition at line 60 of file juce_fallback_SIMDNativeOps.h.

## Member Typedef Documentation

## ◆ MaskType

template<typename ScalarType , typename vSIMDType >

using juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::MaskType = typename SIMDInternal::MaskTypeFor<ScalarType>::type

Definition at line 67 of file juce_fallback_SIMDNativeOps.h.

## Member Function Documentation

## ◆ add()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::add | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 73 of file juce_fallback_SIMDNativeOps.h.

## ◆ allEqual()

template<typename ScalarType , typename vSIMDType >

static forcedinline bool juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::allEqual | ( | vSIMDType | av,
|  | vSIMDType | bv
| ) |  |
| inlinestaticnoexcept

Definition at line 147 of file juce_fallback_SIMDNativeOps.h.

## ◆ apply()

template<typename ScalarType , typename vSIMDType >
template<typename Op >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::apply | ( | vSIMDType | av,
|  | vSIMDType | bv
| ) |  |
| inlinestaticnoexcept

Definition at line 193 of file juce_fallback_SIMDNativeOps.h.

## ◆ bit_and()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bit_and | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 76 of file juce_fallback_SIMDNativeOps.h.

## ◆ bit_not()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bit_not | ( | vSIMDType | av | ) |
| inlinestaticnoexcept

Definition at line 102 of file juce_fallback_SIMDNativeOps.h.

## ◆ bit_notand()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bit_notand | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 79 of file juce_fallback_SIMDNativeOps.h.

## ◆ bit_or()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bit_or | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 77 of file juce_fallback_SIMDNativeOps.h.

## ◆ bit_xor()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bit_xor | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 78 of file juce_fallback_SIMDNativeOps.h.

## ◆ bitapply()

template<typename ScalarType , typename vSIMDType >
template<typename Op >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bitapply | ( | vSIMDType | av,
|  | vSIMDType | bv
| ) |  |
| inlinestaticnoexcept

Definition at line 216 of file juce_fallback_SIMDNativeOps.h.

## ◆ cmp()

template<typename ScalarType , typename vSIMDType >
template<typename Op >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::cmp | ( | vSIMDType | av,
|  | vSIMDType | bv
| ) |  |
| inlinestaticnoexcept

Definition at line 204 of file juce_fallback_SIMDNativeOps.h.

## ◆ cmplxmul()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::cmplxmul | ( | vSIMDType | av,
|  | vSIMDType | bv
| ) |  |
| inlinestaticnoexcept

Definition at line 159 of file juce_fallback_SIMDNativeOps.h.

## ◆ equal()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::equal | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 83 of file juce_fallback_SIMDNativeOps.h.

## ◆ expand()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::expand | ( | ScalarType | s | ) |
| inlinestaticnoexcept

Definition at line 226 of file juce_fallback_SIMDNativeOps.h.

## ◆ get()

template<typename ScalarType , typename vSIMDType >

static forcedinline ScalarType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::get | ( | vSIMDType | v,
|  | size_t | i
| ) |  |
| inlinestaticnoexcept

Definition at line 88 of file juce_fallback_SIMDNativeOps.h.

## ◆ greaterThan()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::greaterThan | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 85 of file juce_fallback_SIMDNativeOps.h.

## ◆ greaterThanOrEqual()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::greaterThanOrEqual | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 86 of file juce_fallback_SIMDNativeOps.h.

## ◆ load()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::load | ( | const ScalarType * | a | ) |
| inlinestaticnoexcept

Definition at line 236 of file juce_fallback_SIMDNativeOps.h.

## ◆ max()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::max | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 82 of file juce_fallback_SIMDNativeOps.h.

## ◆ min()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::min | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 81 of file juce_fallback_SIMDNativeOps.h.

## ◆ mul()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::mul | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 75 of file juce_fallback_SIMDNativeOps.h.

## ◆ multiplyAdd()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::multiplyAdd | ( | vSIMDType | av,
|  | vSIMDType | bv,
|  | vSIMDType | cv
| ) |  |
| inlinestaticnoexcept

Definition at line 136 of file juce_fallback_SIMDNativeOps.h.

## ◆ notEqual()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::notEqual | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 84 of file juce_fallback_SIMDNativeOps.h.

## ◆ set()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::set | ( | vSIMDType | v,
|  | size_t | i,
|  | ScalarType | s
| ) |  |
| inlinestaticnoexcept

Definition at line 94 of file juce_fallback_SIMDNativeOps.h.

## ◆ shuffle()

template<typename ScalarType , typename vSIMDType >
template<unsigned int shuffle_idx>

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::shuffle | ( | vSIMDType | av | ) |
| inlinestaticnoexcept

Definition at line 255 of file juce_fallback_SIMDNativeOps.h.

## ◆ store()

template<typename ScalarType , typename vSIMDType >

static forcedinline void juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::store | ( | vSIMDType | av,
|  | ScalarType * | dest
| ) |  |
| inlinestaticnoexcept

Definition at line 246 of file juce_fallback_SIMDNativeOps.h.

## ◆ sub()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::sub | ( | vSIMDType | a,
|  | vSIMDType | b
| ) |  |
| inlinestaticnoexcept

Definition at line 74 of file juce_fallback_SIMDNativeOps.h.

## ◆ sum()

template<typename ScalarType , typename vSIMDType >

static forcedinline ScalarType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::sum | ( | vSIMDType | av | ) |
| inlinestaticnoexcept

Definition at line 112 of file juce_fallback_SIMDNativeOps.h.

## ◆ truncate()

template<typename ScalarType , typename vSIMDType >

static forcedinline vSIMDType juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::truncate | ( | vSIMDType | av | ) |
| inlinestaticnoexcept

Definition at line 123 of file juce_fallback_SIMDNativeOps.h.

## Member Data Documentation

## ◆ bits

template<typename ScalarType , typename vSIMDType >

constexpr size_t juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::bits = SIMDInternal::Log2Helper<(int) n>::value
| staticconstexpr

Definition at line 64 of file juce_fallback_SIMDNativeOps.h.

## ◆ mask

template<typename ScalarType , typename vSIMDType >

constexpr size_t juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::mask = (sizeof (vSIMDType) / sizeof (ScalarType)) - 1
| staticconstexpr

Definition at line 63 of file juce_fallback_SIMDNativeOps.h.

## ◆ n

template<typename ScalarType , typename vSIMDType >

constexpr size_t juce::dsp::SIMDFallbackOps< ScalarType, vSIMDType >::n = sizeof (vSIMDType) / sizeof (ScalarType)
| staticconstexpr

Definition at line 62 of file juce_fallback_SIMDNativeOps.h.

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

- juce_fallback_SIMDNativeOps.h